mcpField
Y
Yahoo Fianace MCP

Yahoo Fianace MCP

本地服务
github.com/a05031113金融数据070 周前更新

关于 Yahoo Fianace MCP

Yahoo Finance MCP Server 将 `yfinance` 库的函数作为工具提供给需要 Yahoo Finance 数据的客户端。工具涵盖市场价格、公司财务、新闻、持仓、分析师建议和期权。

主要功能

  1. 01查询当前及历史股票价格
  2. 02查询股息和财务报表
  3. 03获取财报日期与公司新闻
  4. 04查看持仓和分析师建议
  5. 05查询期权日期与期权链

适用场景

  1. 01查看股票代码的最新或历史价格
  2. 02审阅公司报表与股息
  3. 03查询公司新闻和持仓情况
  4. 04查看分析师数据与期权链

MCP 相关

通过 stdio 将 `YahooFinance` 类的公开方法作为 MCP 工具提供。MCP 客户端负责启动服务进程并与其通信。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Yahoo Finance MCP 服务

此项目提供一个模型上下文协议(MCP)服务,将 yfinance 库中的各种函数作为独立工具公开。这样,MCP 客户端(如 Claude Desktop)就可以查询 Yahoo Finance 数据。

先决条件

  • Python: 请确保已安装 Python(建议使用 Python 3.8+)。
  • uv: 此项目使用 uv 进行环境和软件包管理。如果尚未安装,请按照此处的说明进行安装:https://github.com/astral-sh/uv

设置

  1. 克隆仓库:

    git clone [email protected]:a05031113/yahoo-fianace-mcp.git
    cd yahoo-finance # Or your repository directory name
    
  2. 创建虚拟环境: 强烈建议使用虚拟环境。使用 uv 创建虚拟环境:

    uv venv
    

    这将创建一个 .venv 目录。

  3. 激活虚拟环境:

    • 在 macOS/Linux 上:
      source .venv/bin/activate
      
    • 在 Windows(Git Bash/WSL)上:
      source .venv/Scripts/activate
      
    • 在 Windows(命令提示符/PowerShell)上:
      .venv\Scripts\activate
      

    你应该会在终端提示符开头看到 (.venv)。

  4. 安装依赖项: 使用 uv 安装所需的 Python 软件包:

    uv pip install -r requirements.txt
    

运行服务

此服务按照 MCP 的要求,通过标准输入/输出(stdio)进行通信。要运行服务,只需使用已激活虚拟环境中的 Python 解释器执行 main.py 脚本:

python main.py

服务将启动,并将日志消息打印到标准错误(stderr),同时等待标准输入(stdin)上的 JSON-RPC 请求。

通常,你需要将 MCP 客户端配置为运行此命令(例如,在其设置 JSON 文件中):

{
  "mcpServers": {
    "yahoo_finance_engine": {
      "command": "/path/to/your/yahoo-finance/.venv/bin/python", // Adjust path accordingly
      "args": [
        "/path/to/your/yahoo-finance/main.py" // Adjust path accordingly
      ]
    }
    // ... other servers
  }
}

随后,MCP 客户端将负责启动此服务进程并与之通信。

可用工具

此服务将 YahooFinance 类(定义于 src/tool.py)的公共方法作为独立的 MCP 工具公开。这些工具包括但不限于:

  • get_current_stock_price(symbol: str)
  • get_stock_price_by_date(symbol: str, date: str)
  • get_stock_price_date_range(symbol: str, start_date: str, end_date: str)
  • get_historical_stock_prices(symbol: str, period: str = "1mo", interval: str = "1d")
  • get_dividends(symbol: str)
  • get_income_statement(symbol: str, freq: str = "yearly")
  • get_cashflow(symbol: str, freq: str = "yearly")
  • get_balance_sheet(symbol: str, freq: str = "yearly")
  • get_earning_dates(symbol: str, limit: int = 12)
  • get_news(symbol: str)
  • get_company_info(symbol: str)
  • get_splits(symbol: str)
  • get_recommendations(symbol: str)
  • get_analyst_price_targets(symbol: str)
  • get_major_holders(symbol: str)
  • get_institutional_holders(symbol: str)
  • get_mutualfund_holders(symbol: str)
  • get_option_expiration_dates(symbol: str)
  • get_option_chain(symbol: str, date: str)
  • get_sustainability(symbol: str)

有关各工具参数的详细信息,请参阅 main.py 或 src/tool.py 中的文档字符串。

通过 MCP Review 认证。https://mcpreview.com/mcp-servers/a05031113/yahoo-fianace-mcp

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。