# getIncomeStatementsBulk

The Bulk Income Statement API allows users to retrieve detailed income statement data in bulk. This API is designed for large-scale data analysis, providing comprehensive insights into a company's financial performance, including revenue, gross profit, expenses, and net income.

Agent View of the PolicyLayer registry record for `getIncomeStatementsBulk`. HTML page: https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getincomestatementsbulk

## Facts

- Tool: `getIncomeStatementsBulk`
- Server: Financial Modeling Prep (FMP) Server  (`imbenrabi/financial-modeling-prep-mcp-server`) — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server.md
- Homepage: https://github.com/imbenrabi/financial-modeling-prep-mcp-server
- Risk category: Read (Low risk)
- Registry record: grade D, identity unverified
- Server rate-limited: no
- Parameters: 2
- Recommended policy verdict: Allowed

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `year` | string | no | Year (e.g., 2023) |
| `period` | string | no | Period (Q1, Q2, Q3, Q4, FY) |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "getIncomeStatementsBulk",
    "arguments": {}
  }
}
```

## Why getIncomeStatementsBulk is rated Low

This is a straightforward data retrieval tool that fetches historical financial statements for analysis purposes. While it accesses sensitive financial information, it performs no write operations, does not execute code or transactions, and does not modify or delete data. The 'Bulk' aspect refers to batch retrieval efficiency, not to any destructive or transactional capability.

From the tool's own definition: "Tool retrieves and queries 'detailed income statement data' with no indication of modification, deletion, or financial transactions. The description explicitly states it 'allows users to retrieve' financial performance data."

Risk signals: Bulk/mass operation — affects multiple targets

## Use case

AI agents call getIncomeStatementsBulk to retrieve information from Financial Modeling Prep (FMP) Server  without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

Verdict: **Allowed**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Financial Modeling Prep (FMP) Server :

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "getIncomeStatementsBulk": {}
  }
}
```

## Other tools on Financial Modeling Prep (FMP) Server  (252)

- `calculateCustomDCF` — Execute — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/calculatecustomdcf.md
- `calculateCustomLeveredDCF` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/calculatecustomlevereddcf.md
- `getAcquisitionOwnership` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getacquisitionownership.md
- `getActivelyTradingList` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getactivelytradinglist.md
- `getADX` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getadx.md
- `getAftermarketQuote` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getaftermarketquote.md
- `getAftermarketTrade` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getaftermarkettrade.md
- `getAllExchangeMarketHours` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getallexchangemarkethours.md
- `getAllIndexQuotes` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getallindexquotes.md
- `getAllIndustryClassification` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getallindustryclassification.md
- `getAllShareFloat` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getallsharefloat.md
- `getAnalystEstimates` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getanalystestimates.md
- `getAvailableCountries` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getavailablecountries.md
- `getAvailableExchanges` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getavailableexchanges.md
- `getAvailableIndustries` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getavailableindustries.md
- `getAvailableSectors` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getavailablesectors.md
- `getAvailableTranscriptSymbols` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getavailabletranscriptsymbols.md
- `getBalanceSheetGrowthBulk` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbalancesheetgrowthbulk.md
- `getBalanceSheetStatement` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbalancesheetstatement.md
- `getBalanceSheetStatementAsReported` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbalancesheetstatementasreported.md
- `getBalanceSheetStatementGrowth` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbalancesheetstatementgrowth.md
- `getBalanceSheetStatementsBulk` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbalancesheetstatementsbulk.md
- `getBalanceSheetStatementTTM` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbalancesheetstatementttm.md
- `getBatchAftermarketQuote` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbatchaftermarketquote.md
- `getBatchAftermarketTrade` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbatchaftermarkettrade.md
- `getBatchMarketCap` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbatchmarketcap.md
- `getBatchQuotes` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbatchquotes.md
- `getBatchQuotesShort` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbatchquotesshort.md
- `getBiggestGainers` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbiggestgainers.md
- `getBiggestLosers` — Read — https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server/getbiggestlosers.md
- …and 222 more: https://policylayer.com/tools/imbenrabi-financial-modeling-prep-mcp-server.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=imbenrabi-financial-modeling-prep-mcp-server · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/imbenrabi-financial-modeling-prep-mcp-server
