关于 Polymarket MCP Server
Polymarket MCP Server 将 Polymarket 的 Gamma Markets API 数据提供给 AI 助手,工具可配置,涵盖市场、事件、订单簿、交易及历史数据。
主要功能
- 01筛选市场与事件列表
- 02查询市场和事件详情
- 03按关键词搜索市场
- 04获取订单簿与近期交易
- 05查询历史市场数据
- 06选择开放的工具
适用场景
- 01浏览预测市场列表
- 02查看特定事件或市场
- 03检查近期交易和订单簿
- 04分析历史市场数据
MCP 相关
它通过 MCP 提供可配置工具,供客户端查询 Polymarket 市场和事件数据。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Polymarket MCP 服务
一个用于 Polymarket Gamma Markets API 的 Model Context Protocol(MCP)服务。
该服务通过标准化的 MCP 接口访问 Polymarket 的预测市场和市场数据,让 AI 助手能够查询市场数据并分析预测市场。
功能
-
市场和事件数据访问
- 使用丰富的筛选选项列出所有可用市场和事件
- 获取详细的市场和事件信息
- 按关键词搜索市场
- 获取订单簿数据
- 查看近期交易
- 获取历史市场数据
-
支持 Docker 容器化
-
为 AI 助手提供交互式工具
工具列表可配置,因此你可以选择要提供给 MCP 客户端的工具。 如果你不使用某些功能,或不想占用过多上下文窗口,这项功能会很有用。
与 Claude Desktop 配合使用
Docker 设置
要在 Claude Desktop 中使用容器化服务,请将以下内容添加到 Claude Desktop 配置中:
{
"mcpServers": {
"polymarket": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e", "GAMMA_API_URL",
"-e", "GAMMA_REQUIRES_AUTH",
"polymarket-mcp-server"
],
"env": {
"GAMMA_API_URL": "https://gamma-api.polymarket.com",
"GAMMA_REQUIRES_AUTH": "false"
}
}
}
}
注意:你需要先使用
docker build -t polymarket-mcp-server .构建 Docker 镜像。
UV 设置(替代方法)
如果你不想使用 Docker,可以使用 uv 直接运行服务:
- 在项目根目录中创建并配置
.env文件:
# Copy the template
cp .env.template .env
# Edit the file to add your configuration
nano .env
.env 内容示例:
# Polymarket Gamma API Configuration
GAMMA_API_URL=https://gamma-api.polymarket.com
GAMMA_REQUIRES_AUTH=false
- 将服务配置添加到 Claude Desktop 配置中:
{
"mcpServers": {
"polymarket": {
"command": "/usr/local/bin/uv", // Use the full path to your uv installation
"args": [
"run",
"-m", "polymarket_mcp_server.main"
],
"cwd": "<full path to polymarket-mcp directory>",
"env": {
"GAMMA_API_URL": "https://gamma-api.polymarket.com",
"GAMMA_REQUIRES_AUTH": "false"
}
}
}
}
注意:如果 Claude Desktop 中出现
Error: spawn uv ENOENT,你可能需要指定uv的完整路径,或在配置中设置环境变量NO_UV=1。
开发
欢迎贡献!如果你有任何建议或改进,请提交 issue 或 pull request。
本项目使用 uv 管理依赖项。请按照适用于你平台的说明安装 uv:
curl -LsSf https://astral.sh/uv/install.sh | sh
然后,你可以创建虚拟环境并安装依赖项:
uv venv
source .venv/bin/activate # On Unix/macOS
.venv\Scripts\activate # On Windows
uv pip install -e .
环境变量支持
如果项目根目录中存在 .env 文件,服务会从中加载环境变量。将 .env.template 复制为 .env,并根据需要调整其中的值。
项目结构
本项目采用 src 目录结构:
polymarket-mcp/
├── src/
│ └── polymarket_mcp_server/
│ ├── __init__.py # Package initialization
│ ├── server.py # MCP server implementation
│ └── main.py # Main application logic
├── Dockerfile # Docker configuration
├── .dockerignore # Docker ignore file
├── .env.template # Template for environment variables
├── pyproject.toml # Project configuration
└── README.md # This file
测试
本项目包含一套全面的测试,可确保功能正常并帮助防止回归问题。
使用 pytest 运行测试:
# Install development dependencies
uv pip install -e ".[dev]"
# Run the tests
pytest
# Run with coverage report
pytest --cov=src --cov-report=term-missing
测试分为:
- 服务功能测试
- 主应用测试
- 错误处理测试
添加新功能时,请同时添加相应的测试。
可用工具
| 工具 | 类别 | 描述 |
|---|---|---|
get_markets | 市场数据 | 使用全面的筛选选项获取所有可用市场的列表 |
get_market_by_id | 市场数据 | 获取特定市场的详细信息 |
get_order_book | 市场数据 | [EXPERIMENTAL] 获取市场当前的订单簿 |
get_recent_trades | 市场数据 | 获取市场的最新交易 |
get_market_history | 市场数据 | 获取历史市场数据 |
search_markets | 市场数据 | 使用 slug 筛选按关键词搜索市场 |
get_events | 事件数据 | 使用全面的筛选选项获取所有可用事件的列表 |
get_event_by_id | 事件数据 | 获取特定事件的详细信息 |
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。