雅虎金融MCP服务器
用于AI助手的生产级财务数据基础设施
______________________________________________________________________
概述
通过企业级弹性、全面的数据质量验证和生产就绪监控,将不可靠的财务API转换为可靠的数据源。
适用于: 人工智能助手、投资平台、算法交易系统和金融研究工具
主要特点:
- ✅ 带自动恢复功能的断路器模式
- ✅ 多策略速率限制(令牌桶+自适应+每个端点)
- ✅ 数据质量评分,包括完整性和完整性验证
- ✅ 具有优雅回退功能的全面缓存
- ✅ 13+金融数据工具,涵盖股票、加密货币和外汇
- ✅ 企业级测试(单元、集成、e2e、混沌)
______________________________________________________________________
快速开始
安装
通过npm(推荐):
npm install -g yfnhanced-mcp来源:
# Clone and install
git clone https://github.com/kanishka-namdeo/yfnhanced-mcp.git
cd yfnhanced-mcp
npm install
# Build TypeScript
npm run build启动服务器
# If installed globally via npm
yfnhanced-mcp
# Or if running from source
npm startClaude桌面集成
添加到 claude_desktop_config.json:
{
"mcpServers": {
"yfnhanced": {
"command": "yfnhanced-mcp"
}
}
}或者,如果从源代码运行:
{
"mcpServers": {
"yfnhanced": {
"command": "node",
"args": ["absolute:\\path\\to\\yfnhanced-mcp\\dist\\index.js"],
"cwd": "absolute:\\path\\to\\yfnhanced-mcp"
}
}
}与其他AI工具一起使用
光标AI:
添加到Cursor的MCP设置:
{
"mcpServers": {
"yfnhanced": {
"command": "yfnhanced-mcp"
}
}
}Cline AI:
添加到Cline的MCP配置中:
{
"mcpServers": {
"yfnhanced": {
"command": "yfnhanced-mcp"
}
}
}自定义集成:
使用MCP SDK与任何AI助手集成:
import { Client } from '@modelcontextprotocol/sdk';
const client = new Client({
name: 'your-app',
version: '1.0.0',
});
await client.connect({
command: 'yfnhanced-mcp',
});
// Use financial data tools
const quote = await client.callTool({
name: 'get_quote',
arguments: { symbol: 'AAPL' }
});______________________________________________________________________
文档
| 文档 | 描述 |
|---|---|
| TOOLS.md | 所有13+MCP工具的完整参考 |
| 用法\_ GIDE.md | 带有示例和模式的实用指南 |
| 配置.md | 包含最佳实践的详细配置指南 |
| 建筑.md | 深入了解弹性模式和架构 |
| 数据验证.md | 验证数据可用性和局限性 |
______________________________________________________________________
可用工具
市场数据
get_quote-实时报价和质量报告get_historical_prices-带日期范围的OHLCV数据get_historical_prices_multi-批量历史数据
公司情报
get_quote_summary-公司综合概述get_balance_sheet-资产、负债、权益get_income_statement-收入、支出、净收入get_cash_flow_statement-经营、投资、融资现金流get_earnings-季度收益及估算get_analysis-分析师建议和价格目标get_major_holders-机构和内部人所有权
市场情绪
get_news-具有相关性评分的最新文章get_options-希腊期权链get_trending_symbols-具有交易量指标的热门企业screener-按12+个标准筛选库存
交叉资产
get_crypto_quote-加密货币价格get_forex_quote-货币对汇率
注: 看 数据验证.md 数据可用性状态
______________________________________________________________________
快速参考
什么有效✅
- 实时报价(价格、交易量、市值等)
- 具有完整性验证的历史OHLCV数据
- 公司简介和业务信息
- 收益数据与意外分析
- 分析师评级和目标价格
- 带元数据的公司新闻
- 希腊期权链
- 主要持有人信息
- 趋势符号和股票筛选器
已知问题⚠️
- 财务报表: 可能会遇到某些符号的验证错误
- 看 数据验证.md 寻找解决方法
- 加密货币/外汇: 工具存在,但返回占位符数据
- 看 数据验证.md 对于替代方案
演出
| 度量 | 值 |
|---|---|
| 报价查询 | 60个请求/分钟(可配置) |
| 批处理操作 | 每个请求最多100个符号 |
| 缓存命中率 | 70-90%用于频繁访问的符号 |
| 冷启动时间 | \<500ms |
| 核心中间件的测试覆盖率 | 95%+ |
______________________________________________________________________
配置
有关详细的配置选项,请参阅 配置.md.
快速配置
创建 config.json:
{
"rateLimit": {
"requestsPerMinute": 60,
"requestsPerHour": 1500
},
"cache": {
"ttlQuotes": 60000,
"maxCacheSize": 1000
},
"circuitBreaker": {
"failureThreshold": 5,
"monitoringWindow": 60000,
"successThreshold": 3
},
"server": {
"transport": "stdio",
"logLevel": "info"
}
}______________________________________________________________________
测试
npm test # All tests
npm run test:coverage # With coverage report
npm run lint # Code quality checks
npm run typecheck # TypeScript validation测试套件包括:
- 单元测试(核心中间件覆盖率95%以上)
- 集成测试(完整的工具和资源工作流程)
- 端到端测试(完整的用户旅程)
- 混沌测试(网络故障、API更改、部分数据)
______________________________________________________________________
发展
脚本
npm run dev # Watch mode for development
npm run build # Compile TypeScript
npm run start # Start server
npm run test # Run tests
npm run test:watch # Watch mode for tests
npm run lint # Run linter
npm run lint:fix # Fix linting issues
npm run typecheck # Type checking项目结构
src/
├── config/ # Configuration management
├── middleware/ # Rate limiting, caching, circuit breaker, retry
├── prompts/ # Pre-built financial analysis prompts
├── schemas/ # Zod validation schemas
├── services/ # Yahoo Finance API client
├── tools/ # MCP tool implementations (13+ tools)
├── types/ # TypeScript type definitions
├── utils/ # Data quality, formatting, security
└── index.ts # Server entry point有关架构的详细信息,请参阅 建筑.md.
______________________________________________________________________
比较
| 特性 | 此实现 | 典型的Python MCP |
|---|---|---|
| 断路器 | ✅ 完整的三态实施 | ❌ 没有 |
| 速率限制 | ✅ 令牌桶+自适应+每个端点 | ⚠️ 简单固定限制 |
| 重试逻辑 | ✅ 指数退避+抖动 | ⚠️ 线性或无 |
| 数据质量 | ✅ 完整性+完整性+建议 | ❌ 没有 |
| 可观察性 | ✅ 指标+日志记录+统计数据 | ⚠️ 基本日志记录 |
| 测试 | ✅ 单元+集成+e2e+混沌 | ⚠️ 仅限单位 |
| 类型安全 | ✅ TypeScript编译时检查 | ❌ 仅限运行时 |
| 演出✅ \<500ms冷启动 | ⚠️ 2-3s冷启动 | |
| 配置 | ✅ 带验证的JSON/YAML | ⚠️ 环境变量 |
| 安全 | ✅ 输入验证+输出净化 | ❌ 没有 |
______________________________________________________________________
贡献
欢迎投稿!请确保:
- TypeScript编译通过(
npm run typecheck) - 林廷传球(
npm run lint) - 为新功能添加测试(
npm test) - API变更文档更新
- 为弹性功能添加了混沌测试
______________________________________________________________________
许可证
麻省理工学院
______________________________________________________________________
支持
______________________________________________________________________
文档索引
入门指南:
使用服务器:
参考:
最佳实践:
