市场数据流服务

Ark Market Data MCP是一个通过WebSocket连接向Claude提供实时市场数据流的模型上下文协议服务器。

  • by Arkhamides
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Arkhamides/mcp-market-data

使用说明

方舟市场数据MCP

一个MCP(模型上下文协议)服务器,通过WebSocket连接将实时市场数据流式传输到Claude。

特性

  • 实时市场数据流 -连接到WebSocket服务器并缓冲传入的市场数据
  • MCP集成 -通过模型上下文协议与Claude无缝协作
  • 可配置的WebSocket URL -支持环境变量配置,实现灵活部署
  • 内存缓冲 -高效缓冲多达500条消息,大小可配置
  • 自动重新连接 -在连接失败时通过指数回退自动重新连接

安装

通过PyPI

pip install ark-market-data-mcp

源自源头

git clone https://github.com/arkhamides/mcp-market-data.git
cd ark-market-data-mcp
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -e .

快速开始

1.设置WebSocket端点

export WS_URI=ws://your-websocket-url.com

2.添加到克劳德

claude mcp add ark-market-data ark-market-data-mcp

3.与Claude一起使用

claude chat

让克劳德使用市场数据工具,例如,“最新的市场数据是什么?”

可用工具

MCP服务器为Claude提供了以下工具:

  • get_latest_message -从流中获取最新的市场信息
  • get_recent_messages -获取最后N条消息(默认值:10,最大值:500)
  • get_stream_status -检查WebSocket连接状态和缓冲区统计信息
  • clear_buffer -清除消息缓冲区

为应用程序的用户连接

远程服务器连接

https://mcp-market-data.com/mcp?api=YOUR_API_KEY

本地服务器连接

source venv/bin/activate
# Defaults to stdio
python3 -m ark_market_data_mcp

# Explicitly use stdio
python3 -m ark_market_data_mcp stdio

# Use HTTP transport (Docker, remote clients)
python3 -m ark_market_data_mcp http

发展

使用MCP检查员进行测试

# Terminal 1: Start the server
source venv/bin/activate
WS_URI=ws://your-websocket-url.com python3 -m ark_market_data_mcp

# Terminal 2: Open the MCP Inspector
npx @modelcontextprotocol/inspector

打开 http://localhost:5173 在浏览器中测试工具和消息。

运行测试

pytest

建筑

┌─────────────────────────┐
│     Claude (User)       │
└────────────┬────────────┘
             │
             │ (via stdio)
             │
┌────────────▼────────────┐
│   MCP Server (Python)   │
│  - Listens on stdio     │
│  - Exposes tools        │
└────────────┬────────────┘
             │
             │ (WebSocket)
             │
┌────────────▼───────────────┐
│   Ark Market Data Server   │
│    (Remote WebSocket)      │
└────────────────────────────┘

故障排除

连接被拒绝

如果您看到“连接被拒绝”错误:

  • 确保您的WebSocket服务器正在运行
  • 验证 WS_URI 环境变量设置正确
  • 如果使用远程服务器,请检查防火墙设置

未收到任何消息

  • 验证WebSocket服务器是否以预期格式发送数据
  • 检查日志:它们显示所有传入消息
  • 使用 get_stream_status 用于验证连接状态的工具

MCP工具未显示

  • 添加MCP后重新启动Claude
  • 检查服务器是否正常启动
  • 验证MCP是否正确添加: claude mcp list

许可证

麻省理工学院

作者

阿卡米德