内容
# polymarket-mcp
清洁的、**已解决负风险**的Polymarket市场和订单簿数据,作为MCP服务器。
无需API密钥,无需数据库——无状态包装器,封装公共Gamma和CLOB API,
其中的复杂部分(键集分页、负风险标志、代币→结果解析、订单簿解析)已经为您处理。
将任何MCP客户端(Claude Desktop、Cowork、Cursor等)指向它,您的代理可以直接查询预测市场数据。
## 工具
| 工具 | 功能描述 |
|---|---|
| `polymarket_get_markets` | 按流动性或24小时交易量获取最活跃的市场。返回问题、条件ID、**结果→代币ID映射**、负风险标志、事件、流动性、交易量、最佳买入/卖出、价差。过滤器:`limit`、`order_by`、`min_liquidity`、`contains`、`neg_risk_only`。 |
| `polymarket_get_orderbook` | 一个或多个结果代币ID的实时CLOB订单簿。排序后的买入/卖出订单 + 最佳买入/卖出、价差、中间价。 |
| `polymarket_resolve_token` | 将`token_id`、`condition_id`或`slug`解析为其市场和结果映射(代币是哪个结果,其兄弟节点)。 |
## 安装与运行
```bash
npm install
npm run build
```
添加到您的MCP客户端配置(例如Claude Desktop的`claude_desktop_config.json`):
```json
{
"mcpServers": {
"polymarket": { "command": "node", "args": ["/绝对路径/to/polymarket-mcp/dist/server.js"] }
}
}
```
然后询问您的代理类似的问题,如 *"当前最活跃的Polymarket市场是什么?"* 或 *"获取此代币ID的订单簿"*。
### 在没有客户端的情况下试用
```bash
npm run build && npm run smoke # 通过stdio驱动服务器与实时API交互
```
## 配置(所有配置项均为可选)
| 环境变量 | 默认值 |
|---|---|
| `GAMMA_BASE_URL` | `https://gamma-api.polymarket.com` |
| `CLOB_BASE_URL` | `https://clob.polymarket.com` |
| `FETCH_TIMEOUT_MS` | `15000` |
## 注意事项
- **只读。** 无交易,无订单,无密钥。它读取公共数据。
- 每次获取都有一个硬超时 + 备份,以防止上游停滞导致服务器挂起。
- 这是一个数据访问工具,而不是交易建议。价格和订单簿是实时的公共数据;在采取行动之前请自行验证。
## License
MIT