股票市场数据服务

一个提供实时股票市场数据和分析工具的模型上下文协议服务器,集成Alpha Vantage API获取全面的股票信息。

  • by SambasBoyyyy
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 SambasBoyyyy/mcp-server

使用说明

股票市场MCP服务器

提供实时股票市场数据和分析工具的模型上下文协议(MCP)服务器。该服务器与AlphaVantage API集成,以获取全面的股票信息。

特性

  • 实时股票报价:获取当前股票价格、变化和交易量
  • 股票搜索:按公司名称或代码搜索股票
  • 时间序列数据:检索历史每日库存数据
  • 公司概况:获取全面的公司信息和基本信息
  • 输入验证:安全的输入验证和错误处理
  • TypeScript支持:完全打字,以获得更好的开发体验

先决条件

在安装此MCP服务器之前,请确保您的系统上安装了以下内容:

所需软件

  1. Node.js (版本18或更高)

    • 下载地址:https://nodejs.org/
    • 验证安装: node --version
  2. npm (附带Node.js)

    • 验证安装: npm --version
  3. TypeScript (将自动安装)

    • 全局安装(可选): npm install -g typescript

API密钥设置

您需要从Alpha Vantage获得一个免费的API密钥:

  1. 访问:https://www.alphavantage.co/support/#api-钥匙
  2. 注册一个免费帐户
  3. 从仪表板获取API密钥

安装

步骤1:克隆或下载项目

如果您还没有,请导航到您的项目目录:

cd "C:\Random Projects\stock-mcp"

步骤2:安装依赖项

npm install

这将安装所有必需的软件包:

  • @modelcontextprotocol/sdk -MCP-SDK
  • axios -API调用的HTTP客户端
  • dotenv -环境变量管理
  • typescript -TypeScript编译器
  • tsx -TypeScript执行

步骤3:设置环境变量

  1. 复制示例环境文件:
copy env.example .env
  1. 编辑 .env 文件并添加您的Alpha Vantage API密钥:
ALPHA_VANTAGE_API_KEY=your_actual_api_key_here

步骤4:构建项目

npm run build

用法

发展模式

在热重载的开发模式下运行服务器:

npm run dev

生产模式

  1. 构建项目:
npm run build
  1. 启动服务器:
npm start

观看模式

对于自动重建的开发:

npm run watch

可用工具

MCP服务器提供以下工具:

1. get_stock_quote

获取给定交易品种的实时股票报价。

参数:

  • symbol (string):股票代码(例如AAPL、MSFT、GOOGL)

例子:

{
  "name": "get_stock_quote",
  "arguments": {
    "symbol": "AAPL"
  }
}

2. search_stocks

按公司名称或代码搜索股票。

参数:

  • keywords (string):搜索关键字(公司名称或符号)

例子:

{
  "name": "search_stocks",
  "arguments": {
    "keywords": "Apple"
  }
}

3. get_daily_time_series

获取股票的每日时间序列数据。

参数:

  • symbol (string):股票代码
  • outputSize (字符串,可选):“紧凑型”(100个数据点)或“完整型”(20+年)。默认值:“紧凑”

例子:

{
  "name": "get_daily_time_series",
  "arguments": {
    "symbol": "AAPL",
    "outputSize": "compact"
  }
}

4. get_company_overview

全面了解公司概况和基本情况。

参数:

  • symbol (string):股票代码

例子:

{
  "name": "get_company_overview",
  "arguments": {
    "symbol": "AAPL"
  }
}

配置

环境变量

创建一个 .env 项目根目录中的文件,包含以下变量:

# Required: Alpha Vantage API Key
ALPHA_VANTAGE_API_KEY=your_api_key_here

# Optional: Alternative API (for future use)
POLYGON_API_KEY=your_polygon_api_key_here

# Optional: Server Configuration
PORT=3000
NODE_ENV=development

API限值

  • 免费Alpha Vantage计划:每天25个请求,每分钟5个请求
  • 高级计划:可用更高的限制
  • 服务器包括速率限制处理和错误消息

故障排除

常见问题

  1. “已达到API呼叫频率限制”

    • 您已超过免费API限制
    • 等待限额重置或升级您的计划
  2. “找不到符号的数据”

    • 检查股票代码是否正确
    • 某些符号在API中可能不可用
  3. “网络错误”

    • 检查您的互联网连接
    • 验证API密钥是否正确
  4. 构建错误

    • 确保Node.js版本为18或更高
    • 跑 npm install 确保所有依赖项都已安装

调试模式

设置环境变量以启用调试日志记录:

NODE_ENV=development npm run dev

项目结构

stock-mcp/
├── src/
│   ├── index.ts           # Main MCP server entry point
│   ├── types.ts           # TypeScript type definitions
│   ├── validation.ts      # Input validation utilities
│   └── services/
│       └── stockApi.ts    # Stock API service implementation
├── dist/                  # Compiled JavaScript (after build)
├── package.json           # Project dependencies and scripts
├── tsconfig.json          # TypeScript configuration
├── env.example            # Environment variables template
└── README.md             # This file

贡献

  1. 复刻仓库
  2. 创建要素分支
  3. 进行更改
  4. 如果适用,添加测试
  5. 提交拉取请求

许可证

MIT许可证-有关详细信息,请参阅许可证文件

支持

对于问题和疑问:

  1. 检查上面的故障排除部分
  2. 验证您的API密钥和网络连接
  3. 查看Alpha Vantage API文档:https://www.alphavantage.co/documentation/

后续步骤

安装后,您可以:

  1. 使用示例请求测试服务器
  2. 将其与您的MCP客户端集成
  3. 根据您的特定需求定制工具
  4. 添加其他数据源或API