finData-mcp-server

FinData enables your AI agents retrieve financial data from different providers like Tushare, Wind, and DataYes.

25 stars
5 forks
Available MCP Tools 0 tools

Model Context Protocol tools provided by this server

No tools information available for this server.

Check the GitHub repository or documentation for more details.

README


English English License Python Versions Tushare

FinData is an open-source Model Context Protocol(MCP) Server that provides professional financial data access capabilities for LLM. It supports various data providers such as Tushare, Wind, DataYes, etc. This enables AI applications to quickly retrieve financial data.

Fully supports both Stdio and SSE transports, offering flexibility for different environments.

https://github.com/user-attachments/assets/1a6d02af-22a3-44a0-ada7-a771a1c4818d

Prerequisites

Before getting started, please complete the following preparations:

  • python => 3.11
  • mcp[cli]>=1.6.0
  • pandas>=2.2.3
  • uv

Depending on your data provider, install optional packages such as:

  • tushare>=1.4.21

Configuration

Stdio Transport

You will need to edit the MCP client configuration file to add finData:

{
  "mcpServers": {
    "finData": {
      "command": "uv", 
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/TO/PARENT/FOLDER/finData-mcp-server/src/findata", 
        "run",
        "server.py"
      ],
      "env": {
        "DATA_API_TOKEN": "",  // API Token for accessing data provider
        "PROVIDER": "tushare"  // Specified data provider
      }
    }
  }
}

SSE Transport

Set the environment variables DATA_API_TOKEN and PROVIDER on the server hosting the MCP Server:

Windows

 set DATA_API_TOKEN=<API Token for accessing data provider>
 set PROVIDER=<Specified data provider>

Linux

  export DATA_API_TOKEN=<API Token for accessing data provider>
  export PROVIDER=<Specified data provider>

Then, start the MCP Server:

uv run server.py --transport sse   
  • Optional Arguments:--sse-host Host to bind SSE server to (default: localhost)--sse-port Port for SSE server (default: 8000)

Once the MCP Server is running, update your MCP client's configuration with the following settings to connect to it.

{
  "mcpServers": {
    "finData": {
      "name": "finData",
      "type": "sse",
      "baseUrl": "http://localhost:8000/sse"
    }
  }
}

Note: Variable names in configuration files may vary slightly between MCP clients. Refer to each client's documentation for proper configuration.

Set the PROVIDER environment variable to specify your provider:

  • tushare

Tushare

Market Data

  • daily Get unadjusted daily stock market data.

Fundamental Data

  • stock_basic Get stock basic information including name, code, etc.
  • stock_company Get listed company basic information.
  • bak_basic Get fundamental data for specific stocks within a given time range.

Financial Data

  • income Get company income statement data.
  • balancesheet Get company balance sheet data.
  • cashflow Get company cash flow statement data.

Macroeconomic Data

  • shibor_lpr Get Loan Prime Rate (LPR) data.
  • cn_gdp Get Gross Domestic Product (GDP) data.
  • cn_cpi Get Consumer Price Index (CPI) data.
  • cn_ppi Get Producer Price Index (PPI) data.
  • cn_m Get Money Supply data.
  • sf_month Get Social Financing data.
  • cn_pmi Get Purchasing Managers' Index (PMI) data.

datacanvas

This project is open-sourced by DataCanvas

Details
Category Finance & Fintech
Scope cloud
Language Python
License Apache License 2.0
OS Support
linux macos windows