使用说明
雅虎金融MCP服务器
一个用于雅虎财经的简单MCP服务器 y融资此服务器提供一组工具来获取股票数据、新闻和其他财务信息。
工具
-
get_ticker_info
- 检索股票数据,包括公司信息、财务、交易指标和治理数据。
- 输入:
symbol(string):股票代码。
-
get_ticker_news
- 获取与特定股票代码相关的最新新闻文章,包括标题、内容和来源详细信息。
- 输入:
symbol(string):股票代码。
-
搜索
- 从雅虎财经获取并组织搜索结果,包括股票报价和新闻文章。
- 输入:
query(string):搜索查询(股票代码或公司名称)。search_type(string):要检索的搜索结果类型(选项:“全部”、“引号”、“新闻”)。
-
get_top
- 获得某个行业的顶级实体(ETF、共同基金、公司、成长型公司或表现良好的公司)。
- 输入:
sector(string):要得到的部门。top_type(string):要检索的顶级公司的类型(选项:“top_etfs”、“top_mutual_funds”、“top_companys”、”top_growth_companys“、”top_performing_companys“)。top_n(number,可选):要检索的顶级实体的数量(默认值为10)。
-
get_price_history
- 获取指定时间段和时间间隔内给定股票代码的历史价格数据。可以以降价表的形式返回数据,也可以使用mplfinance生成专业的财务图表,包括带有交易量条的烛台图、VWAP覆盖图和交易量概况分析。
- 输入:
symbol(string):股票代码。period(字符串,可选):检索数据的时间段(例如“1d”、“1mo”、“1y”)。默认值为“1mo”。interval(字符串,可选):数据间隔频率(例如“1d”、“1h”、“1m”)。默认值为“1d”。chart_type(字符串,可选):要生成的图表类型。如果未指定,则以降价表的形式返回价格数据。选项:- “price_volume”:带音量条的烛台图
- “vwap”:带有vwap叠加的成交量加权平均价格图
- “volume_profile”:带有交易量分布的烛台图,按价格水平显示交易量分布(在右侧显示为直方图)
- 输出:
- 如果
chart_type未指定:以降价表的形式返回历史价格数据 - 如果
chart_type指定:返回base64编码的WebP图像,以实现有效的令牌使用
- 如果
用法
您可以通过uv(Python包安装程序)、Docker或本地开发使用此MCP服务器。
通过紫外线
- 安装uv
- 将以下配置添加到MCP服务器配置文件中:
{
"mcpServers": {
"yfmcp": {
"command": "uvx",
"args": ["yfmcp@latest"]
}
}
}
通过Docker
将以下配置添加到MCP服务器配置文件中:
{
"mcpServers": {
"yfmcp": {
"command": "docker",
"args": ["run", "-i", "--rm", "narumi/yfinance-mcp"]
}
}
}
本地开发
对于本地开发,请将以下配置添加到MCP服务器配置文件中:
{
"mcpServers": {
"yfmcp": {
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/yfinance-mcp",
"yfmcp"
]
}
}
}
替换 /path/to/yfinance-mcp 使用本地存储库的实际路径。
演示聊天机器人
此存储库包括一个使用以下组件构建的演示聊天机器人 Chainlit 它为雅虎财经MCP服务器提供了一个对话界面。
特性
- 用于查询股票信息的交互式聊天界面
- 自动显示财务图表和数据可视化
- 支持OpenAI和LiteLLM后端
- 工具调用与MCP服务器的集成
设置
- 安装演示依赖项:
uv sync --extra dev
- 配置环境变量(创建
.env文件):
# For OpenAI
OPENAI_API_KEY=your_openai_api_key
DEFAULT_MODEL=gpt-4.1
# For LiteLLM (alternative)
LITELLM_API_KEY=your_litellm_api_key
LITELLM_BASE_URL=your_litellm_base_url
DEFAULT_MODEL=gpt-4.1
- 运行演示:
uv run chainlit run demo.py
聊天机器人将在 http://localhost:8000.
查询示例
- “获取AAPL股票信息”
- “显示TSLA最近的新闻”
- “显示过去一个月的NVDA价格历史记录”
- “给我看过去3个月微软的烛台图”