StockFlow MCP Server美股mcp
一个通过雅虎财经提供实时股票数据和期权分析的模型上下文协议(MCP)服务器。它使LLMs能够访问市场数据、分析股票并评估期权策略。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"stockflow": {
"args": [
"path/to/stockflow.py"
],
"command": "python"
}
}
}
SSE 传输配置
{
"mcpServers": {
"stockflow": {
"transport": "sse",
"url": "https://你的服务器地址/sse"
}
}
}
服务介绍
StockFlow MCP 服务器
一个通过雅虎财经提供实时股票数据和期权分析的模型上下文协议(MCP)服务器。使大型语言模型能够访问市场数据、分析股票并评估期权策略。
功能
股票数据
- 实时股票价格和关键指标
- 包含OHLC值的历史价格数据
- 公司基本面和财务报表
- 市场指标和比率
期权分析
- 完整的期权链数据
- 希腊字母(delta, gamma, theta, vega)
- 成交量和未平仓合约跟踪
- 期权策略分析
安装
# Install dependencies
pip install mcp yfinance
# Clone the repository
git clone https://github.com/twolven/stockflow
cd stockflow
使用方法
- 克隆仓库:
git clone https://github.com/twolven/mcp-stockflow.git
cd mcp-stockflow
- 安装依赖项:
pip install -r requirements.txt
- 添加到您的Claude配置中:
在您的claude-desktop-config.json文件中,将以下内容添加到mcpServers部分:
{
"mcpServers": {
"stockflow": {
"command": "python",
"args": ["path/to/stockflow.py"]
}
}
}
将"path/to/stockflow.py"替换为您保存stockflow.py文件的完整路径。
Claude使用提示
当与Claude一起工作时,您可以使用以下提示来帮助它理解可用工具:
“我已经启用了stockflow工具,这使您能够访问股票市场数据。您可以使用这三个主要功能:
get_stock_data- 获取全面的股票信息:
{
"symbol": "AAPL",
"include_financials": true, # optional
"include_analysis": true, # optional
"include_calendar": true # optional
}
get_historical_data- 获取价格历史和技术指标:
{
"symbol": "AAPL",
"period": "1y", # 1d, 5d, 1mo, 3mo, 6mo, 1y, 2y, 5y, 10y, ytd, max
"interval": "1d", # 1m, 2m, 5m, 15m, 30m, 60m, 90m, 1h, 1d, 5d, 1wk, 1mo, 3mo
"prepost": false # optional - include pre/post market data
}
get_options_chain- 获取期权数据:
{
"symbol": "AAPL",
"expiration_date": "2024-12-20", # optional - uses nearest date if not specified
"include_greeks": true # optional
}
所有响应都包括当前价格数据、错误处理和全面的市场信息。”
运行服务器
python stockflow.py
与MCP客户端一起使用
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
server_params = StdioServerParameters(
command="python",
args=["stockflow.py"]
)
async def run():
async with stdio_client(server_params) as (read, write):
async with ClientSession(read, write) as session:
await session.initialize()
# Get current stock data
result = await session.call_tool(
"get-stock-data",
arguments={"symbol": "AAPL"}
)
# Get options chain
options = await session.call_tool(
"get-options-chain",
arguments={
"symbol": "AAPL",
"expiration_date": "2024-12-20"
}
)
if __name__ == "__main__":
import asyncio
asyncio.run(run())
可用工具
-
get-stock-data- 当前价格和成交量
- 市值和市盈率
- 52周最高/最低价
-
get-historical-data- OHLC价格
- 可配置的时间周期
- 成交量数据
-
get-options-chain- 看涨期权和看跌期权
- 行权价格
- 希腊字母和隐含波动率
- 成交量和未平仓合约
可用资源
-
company-info://{symbol}- 公司描述
- 所属行业和领域
- 员工人数
- 网站
-
financials://{symbol}- 损益表
- 资产负债表
- 现金流量表
提示
analyze-options- 期权策略分析
- 风险/回报评估
- 市场状况评估
要求
- Python 3.12+
- mcp
- yfinance
限制
- 数据来源于雅虎财经,可能存在延迟
- 期权数据的可用性取决于市场时间
- 根据雅虎财经API的限制,存在速率限制
贡献
欢迎贡献!请随时提交Pull Request。
许可证
本项目根据MIT许可证发布 - 详情请参阅LICENSE文件。
作者
Todd Wolven - (https://github.com/twolven)
致谢
- 使用Anthropic的模型上下文协议(MCP)构建
- 数据由Yahoo Finance提供
- 为与Anthropic的Claude配合使用而开发