金融数据服务

一个为AI助手提供实时金融数据、报告分析和风险指标的MCP协议服务器。

  • by AIassistent2025
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 AIassistent2025/mcp-finance-server

使用说明

MCP金融服务器

A. 模型上下文协议 为AI助手(Claude、ChatGPT等)提供访问权限的服务器 实时财务数据、报告分析和风险度量.

使用官方MCP Python SDK、yfinance和NumPy构建。


工具

市场数据

工具 说明
stock_quote 当前价格、交易量、变化、市值
stock_history 历史OHLCV数据(任何时期/间隔)
company_info 公司简介、行业、市盈率、贝塔系数、52周区间

报表解析

工具 说明
parse_report 从财务PDF中提取关键指标(自动检测IFRS/GAAP)
balance_sheet 从PDF中提取资产、负债和权益
compare_financial_reports 比较两个报告PDF并显示指标变化

风险指标

工具 说明
value_at_risk 任何置信水平下的参数和历史风险值
sharpe_ratio 风险调整后的回报率及其解释
portfolio_risk 多资产组合波动率和相关性矩阵

设置

1.克隆存储库

git clone https://github.com/AIassistent2025/mcp-finance-server.git
cd mcp-finance-server

2.创建虚拟环境

python -m venv venv
source venv/bin/activate   # Windows: venv\Scripts\activate

3.安装依赖项

pip install -r requirements.txt

用法

运行服务器

python main.py

服务器通过以下方式进行通信 标准 默认情况下(标准MCP传输)。

连接到克劳德桌面

添加到您的Claude桌面配置(claude_desktop_config.json):

{
  "mcpServers": {
    "finance": {
      "command": "python",
      "args": ["/absolute/path/to/mcp-finance-server/main.py"]
    }
  }
}

然后问克劳德:

  • “AAPL目前的价格是多少?”
  • “计算过去2年TSLA的夏普比率”
  • “在99%的置信度下,对NVDA投资50000美元的风险价值是多少?”
  • “分析投资组合的风险:40%AAPL,30%MSFT,30%GOOGL”
  • “解析此财务报告并提取关键指标”

连接到任何MCP客户端

服务器可与任何兼容MCP的客户端配合使用。使用stdio传输:

python main.py

或者以编程方式集成:

from src.server import mcp
mcp.run()

项目结构

mcp-finance-server/
├── src/
│   ├── __init__.py
│   ├── server.py          # MCP server — tool registration via FastMCP
│   ├── market_data.py     # Stock quotes, history, company info (yfinance)
│   ├── report_parser.py   # PDF parsing for IFRS/GAAP financial reports
│   └── risk_metrics.py    # VaR, Sharpe ratio, portfolio risk (NumPy)
├── tests/
│   ├── __init__.py
│   └── test_core.py       # 20 unit tests with mocked external calls
├── main.py                # Entry point
├── requirements.txt
├── .env.example
└── .gitignore

运行测试

pytest tests/ -v

所有外部API调用(yfnance)都是模拟的——测试可以离线快速运行。


为什么选择MCP金融?

在处理精确的财务数据时,传统的人工智能交互往往会出现“上下文漂移”和“幻觉”。这 模型上下文协议(MCP) 通过以下方式解决此问题:

  • 将逻辑与推理分离: 人工智能对策略进行推理,而MCP服务器提供地面实况数据。
  • 标准化接口: 任何LLM(Claude、ChatGPT等)都可以使用这些工具,而无需对每个API进行自定义提示工程。
  • 安全与隐私: 财务数据保留在本地或受信任的环境中,只与模型共享必要的上下文。

功能深潜

📊 实时市场情报

由...驱动 yfinance,我们的工具提供的不仅仅是价格。我们提取交易量动态、行业分类和关键估值比率(市盈率、贝塔系数),为AI提供股票行情的360度视图。

📄 IFRS/GAAP文件摄取

这 parse_report 该工具不仅能读取文本;它使用启发式驱动逻辑来识别标准财务表。它可以在不同的报告标准中区分“总资产”和“净资产”,确保AI进行准确的纵向分析。

📉 定量风险建模

我们实施了机构级风险指标:

  • 风险价值(VaR): 使用历史模拟来估计潜在的投资组合缩减。
  • 夏普比率: 自动获取无风险利率,以提供风险调整后绩效的真实视图。

故障排除

  • API费率限制: yfinance 它是免费的,但可以被限制。如果您遇到错误,请等待60秒或使用VPN/代理。
  • PDF解析问题: 确保PDF是基于文本的报告(不是扫描图像)。对于扫描的PDF,请使用OCR预处理器。
  • 路径错误: 始终使用 绝对路径 当提供 pdf_path 到工具。

贡献

欢迎投稿!无论是添加新的风险指标,支持更多的代理API,还是改进PDF解析逻辑,都可以随时打开PR。


许可证

麻省理工学院