FinData 是一个开源的 模型上下文协议(MCP)服务器,为LLM提供专业的金融数据访问能力。它支持多种数据提供商,如 Tushare、Wind、DataYes 等。这使得AI应用程序能够快速检索金融数据。
完全支持 Stdio 和 SSE 传输方式,为不同环境提供了灵活性。
https://github.com/user-attachments/assets/1a6d02af-22a3-44a0-ada7-a771a1c4818d
在开始之前,请完成以下准备工作:
根据您的数据提供商,安装可选包,例如:
您需要编辑MCP客户端配置文件以添加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令牌
"PROVIDER": "tushare" // 指定的数据提供商
}
}
}
}
在托管MCP服务器的服务器上设置环境变量 DATA_API_TOKEN 和 PROVIDER:
Windows
set DATA_API_TOKEN=<访问数据提供商的API令牌>
set PROVIDER=<指定的数据提供商>
Linux
export DATA_API_TOKEN=<访问数据提供商的API令牌>
export PROVIDER=<指定的数据提供商>
然后,启动MCP服务器:
uv run server.py --transport sse
可选参数:
--sse-host 绑定SSE服务器的主机(默认:localhost)
--sse-port SSE服务器的端口(默认:8000)
一旦MCP服务器运行起来,更新您的MCP客户端配置,使用以下设置连接到它。
{
"mcpServers": {
"finData": {
"name": "finData",
"type": "sse",
"baseUrl": "http://localhost:8000/sse"
}
}
}
注意: 配置文件中的变量名称可能因MCP客户端而异。请参阅每个客户端的文档进行正确配置。
设置 PROVIDER 环境变量以指定您的提供商:
daily 获取未调整的日股票市场数据。stock_basic 获取包括名称、代码等在内的股票基本信息。stock_company 获取上市公司的基本信息。bak_basic 获取特定时间段内特定股票的基本数据。income 获取公司损益表数据。balancesheet 获取公司资产负债表数据。cashflow 获取公司现金流量表数据。shibor_lpr 获取贷款基础利率(LPR)数据。cn_gdp 获取国内生产总值(GDP)数据。cn_cpi 获取消费者价格指数(CPI)数据。cn_ppi 获取生产者价格指数(PPI)数据。cn_m 获取货币供应量数据。sf_month 获取社会融资数据。cn_pmi 获取采购经理人指数(PMI)数据。
该项目由 DataCanvas 开源。