FMP MCP Server
使用说明
项目简介
FMP MCP Server 是一个 Model Context Protocol (MCP) 服务器,它充当大型语言模型 (LLM) 客户端与 Financial Modeling Prep (FMP) 金融数据 API 之间的桥梁。通过标准化的 MCP 接口,该服务器允许 LLM 客户端(如 Claude)安全、便捷地访问 FMP 提供的广泛金融数据,从而增强 LLM 在金融分析和投资决策方面的能力。
主要功能点
- 公司概况: 获取公司基本信息,包括描述、市值、员工人数和行业分类。
- 财务报表: 检索公司季度和年度的利润表、资产负债表和现金流量表。
- 财务指标: 获取关键财务指标、比率和增长数据,支持 TTM(近十二个月)数据。
- 分析师数据: 访问分析师的盈利预测和股票评级建议。
- SEC 文件: 查找和检索美国证券交易委员会 (SEC) 的公司备案文件。
- 盈利电话会议记录: 获取公司盈利电话会议的文本记录。
- 市场数据: 访问最新的股票价格和美国国债收益率。
- 竞争对手分析: 查询上市公司的竞争对手列表。
安装步骤
-
克隆仓库
git clone https://github.com/shadi-fsai/fmp_mcp_server.git cd fmp_mcp_server -
配置环境变量
- 在项目根目录下创建 '.env' 文件,并填入您的 Financial Modeling Prep API 密钥。您需要在 Financial Modeling Prep 官网 注册并获取 API 密钥。
# Financial Modeling Prep API Configuration FMP_KEY=your_api_key_here # Optional: SEC API Configuration (如果您需要使用 SEC 文件相关功能) SEC_ACCESS=YourCompanyName [email protected]注意: 'SEC_ACCESS' 环境变量是可选的,仅当您需要使用 SEC 文件相关功能时配置。根据 SEC 的要求,User-Agent 必须包含公司名称和邮箱地址。
- 在项目根目录下创建 '.env' 文件,并填入您的 Financial Modeling Prep API 密钥。您需要在 Financial Modeling Prep 官网 注册并获取 API 密钥。
-
安装依赖 推荐使用 'uv' 包管理器(如果已安装):
uv venv uv pip install -r requirements.txt或者使用 'pip':
python -m venv venv source venv/bin/activate # Linux/macOS # venv\Scripts\activate # Windows pip install -r requirements.txt
服务器配置
要使 MCP 客户端(例如 Claude Desktop)连接到 FMP MCP Server,您需要在客户端的配置文件中添加服务器配置信息。以下是一个 'claude_desktop_config.json' 文件的配置示例,您需要根据实际情况修改 'command' 和 'args' 中的路径:
{ "servers": { "fmp_mcp_server": { "command": "uv", "args": [ "--directory", "/path/to/fmp_mcp_server", // 替换为 fmp_mcp_server 仓库的绝对路径 "run", "fmp_mcp_server.py" ] } } }
配置参数说明:
- '"fmp_mcp_server"': 服务器名称,客户端通过此名称识别和调用服务器。
- '"command": "uv"': 启动服务器的命令,这里使用 'uv' 运行 Python 脚本。如果使用 'pip',可以替换为 'python'。
- '"args"': 启动命令的参数列表。
- '"--directory"': 指定工作目录为仓库根目录。
- '"/path/to/fmp_mcp_server"': 请务必替换为您的 'fmp_mcp_server' 仓库在您本地文件系统中的绝对路径。
- '"run"': 'uv' 命令的子命令,表示运行。
- '"fmp_mcp_server.py"': 要运行的 Python 服务器脚本文件名。
基本使用方法
-
启动服务器 在终端中,激活虚拟环境,并运行服务器脚本:
# 激活虚拟环境 (如果尚未激活) source venv/bin/activate # Linux/macOS # venv\Scripts\activate # Windows # 运行服务器 python fmp_mcp_server.py服务器成功启动后,将开始监听 MCP 客户端的连接请求。
-
在 MCP 客户端中使用 配置好客户端后,您可以使用自然语言指令,通过客户端向 FMP MCP Server 发送请求,查询金融数据。例如,在 Claude 中,您可以提问:
- "苹果公司未来三年的投资前景如何?"
- "请显示特斯拉最新的季度利润表"
- "查找微软最新的 10-K 文件"
- "亚马逊的主要竞争对手有哪些?"
- "获取 Meta 最新的盈利电话会议记录"
客户端会将这些问题转换为 MCP 请求,发送给 FMP MCP Server,服务器会调用相应的工具或资源获取数据,并将结果返回给客户端。