Alphavantage MCP 服务器使用说明

项目简介

Alphavantage MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,旨在为大型语言模型 (LLM) 客户端提供实时的股票市场数据。它通过集成 Alphavantage API,将丰富的金融数据以标准化的 MCP 协议格式提供给客户端,使得 LLM 能够便捷地获取和利用这些数据进行分析、决策或生成内容。

主要功能点

  • 实时股票报价: 获取股票的实时报价信息。
  • 时间序列数据: 提供股票在不同时间粒度(如日、周、月、分钟)的历史价格数据。
  • 技术指标: 计算并返回各种常用的技术分析指标,如移动平均线 (SMA, EMA)、MACD、RSI 等。
  • 市场状态: 查询当前股票市场的开闭市状态。
  • 新闻 sentiment 分析: 获取与股票相关的新闻 sentiment 数据。
  • 公司基本面数据: 提供公司概况、财报数据(如 income statement, balance sheet, cash flow)等。
  • 宏观经济数据: 获取 GDP、CPI、利率、失业率等宏观经济指标数据。
  • 外汇和数字货币数据: 支持外汇和数字货币的实时及历史数据查询。
  • 商品数据: 提供原油、天然气、金属、农产品等大宗商品的价格数据。

安装步骤

  1. 克隆仓库: 首先,你需要将 AlphavantageMCPServer 仓库克隆到本地:

    git clone https://github.com/DonMorr/AlphavantageMCPServer
    cd AlphavantageMCPServer
  2. 安装依赖: 使用 pip 安装项目依赖:

    pip install .

    或者

    pip install -e .
  3. 配置 API Key: 访问 Alphavantage 官网 注册并获取免费的 API Key。然后,将 API Key 设置为环境变量 'ALPHAVANTAGE_API_KEY'。 你可以在你的 shell 配置文件(如 '.bashrc', '.zshrc')中添加以下行,并替换 'YOUR_API_KEY_HERE' 为你实际的 API Key:

    export ALPHAVANTAGE_API_KEY=YOUR_API_KEY_HERE

    设置完成后,请重新加载配置文件或重启终端使环境变量生效。

服务器配置

为了让 MCP 客户端(例如 Claude Desktop)连接到 Alphavantage MCP 服务器,你需要配置客户端的 'claude_desktop_config.json' 文件。以下是一个示例配置,你需要根据你的实际情况进行调整。

{
  "mcpServers": {
    "alphavantage": {
      "command": "uv",
      "args": [
        "--directory",
        "<你的AlphavantageMCPServer仓库路径>/AlphavantageMCPServer",  //  将 '<你的AlphavantageMCPServer仓库路径>' 替换为你克隆仓库的本地绝对路径
        "run",
        "alphavantage"
      ],
      "env": {
        // API Key 已经通过环境变量配置,这里可以留空,或者再次指定,但注意优先级和安全性
      }
    }
  }
}

配置参数说明:

  • '"alphavantage"': 服务器名称,客户端用此名称引用该服务器。
  • '"command": "uv"': 启动服务器的命令。这里使用 'uv' (基于 Rust 的 pip 和 venv 替代品, 速度更快), 确保你已经安装了 'uv'。如果使用 'python' 直接运行,可以改为 '"command": "python"'。
  • '"args": [...]': 传递给启动命令的参数列表。
    • '"--directory"': 指定服务器代码所在的目录,需要替换为你的仓库路径。
    • '"run"': 'uv run' 子命令用于运行 Python 模块或脚本。
    • '"alphavantage"': 指定要运行的 Python 模块名称,对应 'alphavantage' 包(在 'setup.py' 中定义了 'alphavantage' 入口点)。
  • '"env": {}': 可以设置传递给服务器进程的环境变量。 由于 API Key 已经通过全局环境变量配置,这里可以保持为空。 如果需要,你也可以在此处通过 '"ALPHAVANTAGE_API_KEY": "YOUR_API_KEY_HERE"' 再次指定 API Key,但这通常不是必要的,并且可能存在安全风险,建议使用全局环境变量。

注意: 请根据你的实际 Python 环境和 uv/python 命令的安装路径,以及 AlphavantageMCPServer 仓库的本地路径,调整上述配置。 确保 '<你的AlphavantageMCPServer仓库路径>' 被替换为你的实际路径。

基本使用方法

  1. 启动服务器: 配置好 'claude_desktop_config.json' 后,当 Claude Desktop 启动时,会自动尝试连接并启动 Alphavantage MCP 服务器。

  2. 在 LLM 中使用工具: 当服务器成功启动并连接后,你可以在 LLM 的 Prompt 中指示 LLM 使用 Alphavantage MCP 服务器提供的工具来获取金融数据。 例如,你可以询问:

    • "请帮我查询 AAPL 股票的当前报价。"
    • "我想知道过去一年 TSLA 股票的每日收盘价走势。"
    • "分析一下最近一个月比特币的价格波动情况。"
    • "告诉我今天涨幅最高的股票有哪些?"

    LLM 客户端会根据你的指令,调用 Alphavantage MCP 服务器提供的相应工具,并将返回的数据作为上下文信息用于生成回复。 具体的工具名称和参数可以参考 'src/mcp_server_alphavantage/server.py' 文件中 'AlphavantageTools' 枚举类和 '@server.list_tools()' 函数的定义。 LLM 客户端通常会提供界面或方式来浏览和选择可用的工具。

重要提示: Alphavantage API 的免费 Key 有调用频率限制。 请合理使用,避免频繁调用导致 API Key 被限制。 详细的 API 使用条款和限制请参考 Alphavantage 官网。

信息

分类

网页与API