Skip to main content
Glama
olegprivate

FMP MCP Server

by olegprivate

FMP MCP Server

A Model Context Protocol (MCP) server that provides tools, resources, and prompts for financial analysis using the Financial Modelling Prep API.

Features

Tools

  • get_company_profile: Get comprehensive company information

  • get_stock_quote: Real-time stock quotes and market data

  • get_financial_statements: Income statement, balance sheet, and cash flow data

  • get_key_metrics: Key financial metrics and KPIs

  • get_financial_ratios: Comprehensive financial ratios for analysis

  • get_dcf_valuation: Discounted cash flow valuation

  • search_companies: Search for companies by name or symbol

  • get_sector_performance: Market sector performance overview

Resources

  • Market Sectors: Real-time sector performance data

  • Company Profiles: Detailed company information

  • Financial Statements: Complete financial statement data

Prompts

  • financial_analysis: Comprehensive financial analysis workflow

  • investment_research: Detailed investment research report

  • sector_analysis: Sector performance and comparison analysis

Setup

  1. Install dependencies:

    uv sync

    Important: You must run uv sync in the project directory before using the MCP server. This installs the package and makes it available to uv run.

  2. Configure API access:

    cp .env.example .env
    # Edit .env and add your Financial Modelling Prep API key
  3. Get API Key:

Usage

With Claude Code

Option 1 (Recommended): Use the script entry point:

{
  "mcpServers": {
    "fmp": {
      "command": "uv",
      "args": ["run", "fmp-mcp-server"],
      "cwd": "/path/to/fmp-mcp-server",
      "env": {
        "FMP_API_KEY": "your_api_key_here"
      }
    }
  }
}

Option 2: Use module syntax (requires uv sync to be run first):

{
  "mcpServers": {
    "fmp": {
      "command": "uv",
      "args": ["run", "python", "-m", "fmp_mcp_server"],
      "cwd": "/path/to/fmp-mcp-server",
      "env": {
        "FMP_API_KEY": "your_api_key_here"
      }
    }
  }
}

Important Notes:

  • Replace /path/to/fmp-mcp-server with the actual absolute path to this project directory

  • Make sure you run uv sync in the project directory first

  • The cwd parameter ensures uv runs from the correct directory

Direct Usage

# Run the server
uv run python -m fmp_mcp_server.server

# Or use the installed script
uv run fmp-mcp-server

Docker Usage

Build and run with Docker

# Build the image
docker build -t fmp-mcp-server .

# Run with environment file
docker run --env-file .env fmp-mcp-server

Using Docker Compose

# Start the service
docker-compose up -d

# View logs
docker-compose logs -f

# Stop the service
docker-compose down

Using pre-built image from GitHub Container Registry

docker run --env-file .env ghcr.io/ccdatatraits/fmp-mcp-server:latest

Development

  1. Install with development dependencies:

    uv sync --dev
  2. Run tests:

    uv run pytest
  3. Format code:

    uv run black src/
    uv run ruff check src/
  4. Type checking:

    uv run mypy src/

API Rate Limits

The Financial Modelling Prep API has rate limits depending on your subscription:

  • Free: 250 requests/day

  • Starter: 300 requests/minute

  • Professional: 2000 requests/minute

Configure rate limiting in your .env file if needed.

License

MIT License

Related MCP Connectors