mcp金融ux
对于AI代理: 彭博终端格式的市场数据。不是原始JSON——我给你的是可以直接读取的格式化表。像BBG一样导航: markets() → sector('technology') → ticker('AAPL') → ticker_options('AAPL').智能默认值(自动检测市场时间)、渐进式披露(摘要→ 细节)。
对于人类: 密集、可扫描的屏幕。因子敞口、动量、期权定位——所有这些都像专业终端一样格式化。
技术: 本地stdio服务器,由yfinance提供支持。所有查询都是用户发起的(没有自动化——这是一个研究工具,不是生产基础设施)。
示例输出
我们的独特之处:BBG Lite格式的、对代理友好的屏幕
MARKETS | Sun 2025-10-26 12:42 EDT
US EQUITIES PRICE CHANGE 1M 1Y
S&P 500 6791.69 +0.79% +2.2% +16.9%
Nasdaq 23204.87 +1.15% +3.2% +25.3%
Dow 47207.12 +1.01% +2.1% +12.1%
Russell 2000 2513.47 +1.24% +3.3% +13.8%
SECTORS TICKER PRICE CHANGE 1M 1Y
Technology XLK 293.58 +1.23% +5.3% +28.3%
Financials XLF 53.11 +0.84% -1.4% +15.6%
Healthcare XLV 146.03 -0.05% +7.8% +0.0%
Energy XLE 88.07 -1.01% -4.3% +1.4%
[... all 11 GICS sectors]
COMMODITIES PRICE CHANGE 1M 1Y
Gold 4137.80 +0.05% +9.6% +51.0%
Oil WTI 61.50 +0.10% -6.4% -14.3%
Data as of 2025-10-26 12:42 EDT | Source: yfinance密集、可扫描、专业。不是为人类格式化的原始JSON,人工智能会自动受益。
特性
彭博终端风格的市场数据导航屏幕:
- 市场() -全要素格局(美国股市、全球、行业、风格、大宗商品、波动性)
- 部门(名称) -深入了解顶级持股和要素敞口的行业
- 股票代码 -基于全因子分解的个人安全分析
- 批量比较 -与关键因素并列的股票分析
- 日历集成 -收益日期、股息表
- BBG Lite格式 -密集、可扫描、专业输出
库架构
mcp-yfinance ux包括一个可重用的库,用于可靠的yfinance数据获取。
lib/yfinance_fetcher.py
融资提取逻辑的一个真理来源:
- 个体
yf.Ticker().history()使用ThreadPoolExecutor进行调用(可靠) - 非
yf.download()批API(不可靠-超时,整个批失败)
使用人:
- MCP服务器 -
mcp_yfinance_ux/historical.py进口自lib/ - 投资组合脚本 -可以复制到投资组合代理,以便可靠地提取
- 任何Python代码 -纯逻辑,无MCP依赖
主要功能:
fetch_price_history(symbol, months=12)-单一符号历史fetch_multiple_histories(symbols, months=12)-并行多符号提取fetch_ticker_and_market(symbol, months=12)-Ticker+市场数据(用于因子分析)fetch_price_at_date(symbol, date)-特定日期的价格(窄窗口)
为什么这种模式有效:
- 单个提取不会批量失败
- ThreadPoolExecutor在没有批处理API的情况下提供并行性
- 经过生产使用验证(MCP服务器为真实用户服务)
文档: 看 lib/README.md 查看使用示例和部署工作流。
重要提示:使用限制
此工具仅适用于用户发起的临时请求。不是为了自动化。
什么是金融
yfinance是一个非官方的网络爬虫,而不是受制裁的雅虎金融API。它模仿浏览器请求获取财务数据。
启示:
- 随时可能破裂 -雅虎网站的变化可能会彻底破坏图书馆
- 没有官方汇率限制 -因为它不是官方的API
- 容易堵塞 -自动轮询或大量请求触发雅虎的反抓取措施(429个错误,IP禁令)
- 没有保证 -雅虎在2024年初左右大幅收紧限制
安全使用(此工具的功能)
✅ 适当的用例:
- 临时市场检查和分析
- 一次性股票研究
- 手动论文开发
- 偶尔查询特定数据
所有查询均为 用户启动的 和互动。
不安全使用(不要这样做)
❌ 切勿将其用于:
- Cron作业或计划更新
- 自动监控回路
- 后台进程轮询数据
- 生产基础结构
- 实时投资组合跟踪
如果您需要自动化或生产级数据,请使用官方API (Alpha Vantage、Polygon.io、IEX Cloud等)
底线
此MCP服务器是 用于偶尔查询的研究工具而不是生产基础设施。非常适合PMF测试和即席分析。不适合自动化或连续监控。
安装
1.克隆并安装依赖项
git clone https://github.com/bxxd/idio-mcp-yfinance-ux.git
cd idio-mcp-yfinance-ux
poetry install2.配置MCP客户端
注: 这是一个本地stdio MCP服务器。它在您的计算机上运行,并通过标准I/O(不是HTTP/网络)连接到MCP客户端。所有数据都保留在本地。
方法1:使用make-C(推荐)
从您的项目目录:
claude mcp add idio-yf make -C /absolute/path/to/mcp-yfinance-ux serve或手动添加到 ~/.claude.json 在您的项目下 mcpServers:
{
"projects": {
"/path/to/your/project": {
"mcpServers": {
"idio-yf": {
"type": "stdio",
"command": "make",
"args": ["-C", "/absolute/path/to/mcp-yfinance-ux", "serve"],
"env": {}
}
}
}
}
}为什么采用这种方法?
- 单一真实来源(Makefile定义了服务器命令)
- 无需记住诗歌/python调用细节
- 自我记录(Makefile受版本控制)
- 从任何目录工作(make-C处理工作目录)
方法2:直接命令(可选)
如果您不想使用make:
claude mcp add idio-yf poetry run python -m mcp_yfinance_ux.server --cwd /path/to/mcp-yfinance-ux或手动:
{
"projects": {
"/path/to/your/project": {
"mcpServers": {
"idio-yf": {
"type": "stdio",
"command": "poetry",
"args": ["run", "python", "-m", "mcp_yfinance_ux.server"],
"cwd": "/absolute/path/to/mcp-yfinance-ux",
"env": {}
}
}
}
}
}注: 对于claude CLI用户,MCP服务器在中按项目配置 ~/.claude.json其他MCP客户端可能具有不同的配置方法。
方法3:SSE/HTTP服务器(用于基于web的部署)
对于web界面或需要持久HTTP服务器时:
# Start HTTP server (runs in background on port 5001)
make server
# Or specify custom port
PORT=8080 make server
# Check logs
make logs配置Claude代码以使用SSE传输:
{
"projects": {
"/path/to/your/project": {
"mcpServers": {
"yfinance-ux": {
"type": "sse",
"url": "http://127.0.0.1:5001/sse"
}
}
}
}
}何时使用SSE:
- 基于Web的Claude Code部署(例如浏览器终端)
- 多个客户端共享一个服务器实例
- 不重新启动Claude代码进行调试
何时使用stdio:
- 本地CLI使用(标准方法)
- 单用户开发环境
3.重新启动MCP客户端
配置后,重新启动MCP客户端以加载服务器。
它是如何工作的:
- stdio模式: MCP客户端作为子进程启动服务器,通过stdin/stdout进行通信
- SSE模式: MCP客户端通过服务器发送事件连接到持久HTTP服务器
用法
彭博终端等导航层次结构:
markets() → sector('technology') → ticker('AAPL')markets()-市场概述
无参数的完整因子景观:
mcp__idio_yf__markets()显示:
- 美国股市 -标准普尔500指数、纳斯达克指数、道琼斯指数、罗素2000指数(贝塔系数,1M/1Y动量)
- 全球 -欧洲(STOXX 50)、亚洲(日经)、中国(上海)
- 行业 -所有11个GICS部门(XLK、XLF、XLV等)均处于Beta和动量状态
- 样式 -动量(MTUM)、价值(VTV)、增长(VUG)、质量(QUAL)、规模(IWM)
- 商品 -黄金、石油、天然气(含贝塔系数和动量)
- 波动性和利率 -VIX,10年期国债
自动检测市场交易时间(显示交易时间后的期货,交易期间的指数)。
扇区(名称)-扇区向下钻取
对顶级持股的详细行业分析:
mcp__idio_yf__sector(name='technology')显示:
- 行业ETF价格和动量(100万,1年)
- 贝塔系数至标准普尔指数,特殊波动性
- 前10名持股,包括符号、名称、权重和个人贝塔系数
可用部门: technology, financials, healthcare, energy, consumer_disc, consumer_stpl, industrials, utilities, materials, real_estate, communication
股票代码-个人证券分析
股票的完整因子分解:
mcp__idio_yf__ticker(symbol='AAPL')显示:
- 因素暴露 -贝塔系数(SPX)、特殊波动率、总波动率
- 估值 -市盈率、远期市盈率、股息收益率
- 日历 -下一个收益日期,包括估计值、除息日期、付款日期
- 动量和技术 -1M/1Y回报率、RSI(14D)、50/200日移动平均线
- 52周范围 -显示当前位置的视觉条
批量比较
并排股票比较:
mcp__idio_yf__ticker(symbol=['TSLA', 'F', 'GM'])表格格式显示: 符号、名称、价格、变化百分比、贝塔系数、Idio Vol、1Y动量、市盈率、股息收益率、RSI
输出格式
BBG Lite风格 -密集、可扫描、专业格式,如彭博终端。
示例ticker()输出:
AAPL US EQUITY LAST PRICE 262.24 +9.95 +3.94%
Apple Inc. MKT CAP 3891.7B VOLUME 90.1M
FACTOR EXPOSURES
Beta (SPX) 1.09
Idio Vol 21.7%
Total Vol 32.8%
VALUATION
P/E Ratio 39.85
Forward P/E 31.56
Dividend Yield 0.40%
CALENDAR
Earnings Oct 30, 2025 (Est $1.77 EPS)
Ex-Dividend Aug 11, 2025
Div Payment Aug 14, 2025
MOMENTUM & TECHNICALS
1-Month +6.8%
1-Year +11.4%
50-Day MA 241.73
200-Day MA 222.14
RSI (14D) 59.5
52-WEEK RANGE
High 264.38
Low 169.21
Current 262.24 [===================░] 98% of range批次比较示例:
TICKER COMPARISON 2025-10-21 08:42 EDT
SYMBOL NAME PRICE CHG% BETA IDIO MOM1Y P/E DIV% RSI
---------------------------------------------------------------------------------------------------------
AAPL Apple Inc. 262.24 +3.94% 1.09 21.7% +11.4% 39.85 0.40% 59.5
MSFT Microsoft Corporation 516.79 +0.63% 1.02 17.0% +24.3% 37.89 0.70% 48.8
GOOGL Alphabet Inc. 256.55 +1.28% 1.00 25.5% +57.1% 27.32 0.33% 66.1干净、易读、立即有用。
发展
快速开始
使用Makefile(推荐):
make all # Run lint + test (ALWAYS before committing)
make test # Run tests
make lint # Run type checking + linting
make lint-fix # Auto-fix linting issues
make serve # Run MCP server (stdio mode)
make help # Show all commands手动测试(无需MCP):
# Test screens via CLI (no MCP restart needed)
./cli markets
./cli sector technology
./cli ticker AAPL
./cli ticker TSLA F GM # Batch comparison文档
- 开发商.md -设计理念、工程原理、开发过程
- CLAUDE.md -其他背景和发展说明
设计原则
- 关注点分离 -业务逻辑对MCP的依赖性为零
- 单一事实来源 -每条数据/逻辑都有一条真正的路径
- 人类可读输出 -适用于人类而非机器的格式
- 保持简单 -精确匹配手动测试,无过度设计
许可证
麻省理工学院
