项目简介

本项目 'mcp-finance' 是一个基于 Model Context Protocol (MCP) 构建的金融数据服务器。它利用 'yfinance' 和 MarketAux API 提供了多个工具,使 LLM 客户端能够轻松获取股票价格、公司基本信息、历史数据、财经新闻以及市场指数等金融数据。

主要功能点

  • 实时股票价格查询: 获取指定股票代码的最新价格及相关变动信息。
  • 公司信息查询: 获取上市公司的基本信息,包括公司名称、所属板块、行业、网站和业务概览等。
  • 历史数据查询: 获取股票在指定时间段内的历史交易数据,包括开盘价、收盘价和交易量等。
  • 财经新闻获取: 获取与指定股票代码相关的最新财经新闻报道。
  • 市场指数查询: 获取美国主要市场指数的实时数据,如标普500、纳斯达克和道琼斯指数。

安装步骤

  1. 安装 'uv' 包管理器 (推荐): 'uv' 是一个快速的 Python 包安装和管理工具,可以加速环境搭建。根据您的操作系统选择相应的安装命令:

    • MacOS/Linux:
      curl -LsSf https://astral.sh/uv/install.sh | sh
    • Windows:
      powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

    安装完成后,请重启您的终端。

  2. 克隆仓库: 将 'mcp-finance' 仓库克隆到本地:

    git clone [email protected]:nimitmk7/mcp-finance.git
    cd mcp-finance
  3. 配置环境变量:

    • 复制 '.env.example' 文件并重命名为 '.env':
      cp .env.example .env
    • 打开 '.env' 文件,将 'MARKETAUX_API_KEY=your-marketaux-api-key' 中的 'your-marketaux-api-key' 替换为您在 MarketAux 官网申请的 API 密钥。MarketAux API 用于获取财经新闻数据,请访问 https://marketaux.com/ 注册并获取 API 密钥。

服务器配置

要将此 MCP 服务器添加到 MCP 客户端(例如 Claude Desktop Client),您需要配置服务器的启动命令。以下是配置示例,请根据您的实际情况修改路径和用户名:

JSON 配置信息:

{
  "mcpServers": {
    "mcp-finance": {
      "command": "/Users/<用户名>/.local/bin/uv",
      "args": [
        "--directory",
        "/Users/<用户名>/<仓库路径>/mcp-finance",
        "run",
        "mcp_finance.py"
      ]
    }
  }
}

配置参数说明:

  • '"mcpServers"': MCP 服务器配置的根节点。
  • '"mcp-finance"': 您为此服务器自定义的名称,在客户端中用于识别和选择该服务器。
  • '"command"': 启动服务器的命令。
    • '/Users/<用户名>/.local/bin/uv' (MacOS/Linux 示例): 'uv' 包管理器的可执行文件路径。请替换 '<用户名>' 为您的实际用户名。如果您没有使用 'uv',而是使用 'python' 或 'pipenv' 等其他方式管理 Python 环境,请相应地修改此命令。例如,如果使用 'python' 虚拟环境,则可能是虚拟环境中的 Python 解释器路径。
  • '"args"': 启动命令的参数列表。
    • '"--directory"': 指定服务器代码所在的目录。
      • '/Users/<用户名>/<仓库路径>/mcp-finance' (示例): 请替换 '<用户名>' 为您的实际用户名,'<仓库路径>' 为您克隆 'mcp-finance' 仓库的父级目录。
    • '"run"': 'uv run' 命令用于运行 Python 脚本。如果您未使用 'uv',请根据您的环境配置进行调整。例如,直接使用 'python mcp_finance.py'。
    • '"mcp_finance.py"': MCP 服务器的主程序文件名。

Claude Desktop Client 配置步骤:

  1. 打开 Claude Desktop Client,进入 "Settings" (设置) -> "Developer" (开发者) 选项。
  2. 点击 "Edit Config" (编辑配置) 按钮,这将打开 'claude_desktop_config.json' 文件。
  3. 将上述 JSON 配置信息添加到 'claude_desktop_config.json' 文件中的 '"mcpServers"' 字段下。如果已经有其他 MCP 服务器配置,请将 '"mcp-finance"' 的配置添加到已有的配置列表中。
  4. 保存 'claude_desktop_config.json' 文件并重启 Claude Desktop Client。

基本使用方法

  1. 启动 Claude Desktop Client 后,点击界面上的 🔨 (锤子) 图标,打开工具列表。
  2. 检查 "mcp-finance" 服务器的工具是否出现在列表中。如果配置正确,您应该能看到 "Get Stock Price", "Get Company Info", "Get Historical Data", "Get Stock News", "Get Market Indices" 等工具。
  3. 在 Claude 的对话框中,您可以直接提问,例如:
    • "What is the price of Nvidia stock right now" (英伟达股票现在的价格是多少?)
    • "How much has the share price of Google changed over 1 month" (谷歌的股价在一个月内变化了多少?)
    • "Get me latest news for Microsoft" (获取微软的最新新闻) Claude 将会自动识别并调用相应的 MCP 工具来获取金融数据并回答您的问题。

信息

分类

商业系统