Financial-Modeling-Prep
A Model Context Protocol (MCP) implementation for Financial Modeling Prep, enabling AI assistants to access and analyze financial data, stock information, company fundamentals, and market insights.
claude mcp add --transport stdio imbenrabi-financial-modeling-prep-mcp-server npx -y financial-modeling-prep-mcp-server \ --env FMP_ACCESS_TOKEN="your_fmp_api_key_here" \ --env DYNAMIC_TOOL_DISCOVERY="true"
How to use
This MCP server provides access to Financial Modeling Prep (FMP) data through a dynamic MCP toolset. It runs as a session-based HTTP service that loads and manages toolsets at runtime, enabling AI assistants to fetch real-time stock quotes, company fundamentals, financial statements, market data, and other financial insights via a uniform MCP interface. The server supports dynamic tool loading and per-session state, so each client maintains its own set of enabled tools and data context. You can operate the hosted instance for quick start or self-host your own instance with full control, choosing dynamic, static, or legacy tool loading modes as needed. To use it, connect to the MCP endpoint and provide an FMP access token in your session configuration; this token authenticates requests to Financial Modeling Prep APIs and enables access to the data you need.
Key capabilities include: loading and unloading toolsets at runtime, listing available tools, obtaining toolset descriptions, and performing financial data queries across 24+ categories. The server is designed to work with standard MCP clients and registries, and is compatible with HTTP transports and JSON-RPC-style messaging. When hosted, you can point clients to the provided HTTP endpoint; when self-hosting, configure environment variables or CLI arguments to tailor the runtime behavior (for example enabling dynamic tool discovery).
How to install
Prerequisites:
- Node.js and npm installed on your system
- Optional: Docker if you prefer containerized deployment
Installation options:
Option A: NPM installation (quick-start/self-hosted)
- Install globally:
npm install -g financial-modeling-prep-mcp-server
- Set your FMP access token and desired discovery mode:
export FMP_ACCESS_TOKEN=your_token_here
export DYNAMIC_TOOL_DISCOVERY=true # or static/legacy as needed
- Run the MCP server:
fmp-mcp
Option B: Use npx (no global install)
- Run directly with npx:
npx -y financial-modeling-prep-mcp-server
- Set environment variables as above before invoking the process if your environment supports it, e.g. in a shell script or CI job.
Option C: Docker (build from source or use an image)
- Build from source (example commands shown in the README):
git clone https://github.com/imbenrabi/Financial-Modeling-Prep-MCP-Server
cd Financial-Modeling-Prep-MCP-Server
docker build -t fmp-mcp-server .
- Run the container with required env vars:
docker run -p 8080:8080 \
-e FMP_ACCESS_TOKEN=your_token_here \
-e DYNAMIC_TOOL_DISCOVERY=true \
fmp-mcp-server
Notes:
- If you use the hosted instance, use the provided HTTP endpoint and supply your FMP key in the session configuration.
- The server supports both dynamic and static tool loading modes depending on configuration.
Additional notes
Tips and common issues:
- Ensure you provide a valid FMP_ACCESS_TOKEN; without it, requests to Financial Modeling Prep APIs will be rejected.
- If you enable DYNAMIC_TOOL_DISCOVERY, tools can be loaded/unloaded at runtime per session; disable it for a stable, fixed toolset.
- When running behind a reverse proxy, ensure the MCP HTTP endpoint is exposed publicly if clients outside your network need access.
- Check firewall rules and port mappings (default 8080 for Docker) to ensure connectivity.
- In hosted mode, most client integrations assume 5 meta-tools in dynamic mode; adapt client prompts accordingly.
Related MCP Servers
mcp-searxng
MCP Server for SearXNG
hayhooks
Easily deploy Haystack pipelines as REST APIs and MCP Tools.
rohlik
MCP server that lets you shop groceries across the Rohlik Group platforms (Rohlik.cz, Knuspr.de, Gurkerl.at, Kifli.hu, Sezamo.ro)
ContextPods
Model Context Protocol management suite/factory. An MCP that can generate and manage other local MCPs in multiple languages. Uses the official SDKs for code gen.
rod
Model Context Protocol Server of Rod
nodit
A Model Context Protocol (MCP) server for AI agents to interact with blockchain data via Nodit’s Web3 Data and Node APIs. Enables LLMs to access structured, multi-chain blockchain context with zero blockchain-specific logic.