README
🚀 Desk3 MCP 服务器
Desk3 MCP 服务器是一个完全兼容 MCP(模型上下文协议) 的服务器,专为 Desk3 加密数据设计,支持 Dify、Claude、Notion MCP 等客户端。它能为用户提供便捷、高效的加密数据服务。
✨ 主要特性
- 将所有 Desk3 加密数据端点实现为 MCP 资源和工具,方便客户端调用。
- 支持 HTTP、SSE 和 JSON - RPC 2.0 接口,满足不同的通信需求。
- 可通过
uv run desk3_service一键启动,操作简便。 - 支持 Docker,便于部署和管理。
📦 安装指南
前提条件
- Python 3.12 或更高版本。
- uv 包管理器。
安装与运行
uv sync
uv run desk3_service
# 或者
uvicorn src.desk3_service.http_server:starlette_app --host 0.0.0.0 --port 8100
Docker 方式
docker build -t desk3-service .
docker run -e DESK3_API_KEY=your_api_key_here -p 8100:8100 desk3-service
💻 使用示例
启动模式
本项目支持两种启动模式:
1. HTTP/SSE 服务器(推荐)
在 0.0.0.0:8100 上启动一个 Starlette HTTP/SSE 服务器,供 Dify、Claude、Notion MCP 等使用。
# 推荐:直接使用 Python 运行
PYTHONPATH=src python -m desk3_service.http_server
# 或者运行 Starlette MCP 服务器变体
PYTHONPATH=src python -m desk3_service.starlette_mcp_server
或者,如果你想使用 uv/pyproject.toml 脚本,可以为 http_server 或 starlette_mcp_server 添加一个脚本条目。
2. MCP 标准输入输出服务器(高级)
启动一个纯 MCP 标准输入输出服务器,用于 CLI 或高级集成(非 HTTP/SSE):
uv run desk3_service
仅当你想通过标准输入输出使用 MCP 时才需要此模式(大多数用户不推荐)。
📚 详细文档
资源
服务器公开了以下资源:
| 资源 | 详情 |
|------|------|
| desk3://gas/suggest | EIP1559 Gas 建议(获取 EIP1559 Gas 建议,需 chainid 查询参数) |
| desk3://market/exchangeRate | 法币汇率列表(Fiat Exchange Rate List) |
| desk3://market/mini/24hr | 24 小时币价迷你行情(24hr Mini Ticker,支持 symbol 参数,如 ETHUSDT) |
| desk3://market/price | 实时代币价格信息(获取实时代币价格,支持 symbol 参数,如 ETHUSDT、BTCUSDT) |
| desk3://market/fear-greed | 加密货币贪婪与恐惧指数(Crypto Fear and Greed Index,分析市场情绪,助力明智投资决策,支持实时与历史数据) |
| desk3://market/btc/trend | 近 3 个月 BTC 趋势图表(获取近 3 个月 BTC 趋势图表,格式:[[日期, 当日价格, 活跃地址数, 新增地址数, 发生交易地址数]]) |
| desk3://market/eth/trend | 近 3 个月 ETH 趋势图表(获取近 3 个月 ETH 趋势图表,格式:[[日期, 当日价格, 活跃地址数, 新增地址数]]) |
| desk3://market/altcoin/season | 山寨币季指数(Altcoin Season Index,基于前 100 山寨币与比特币 90 天表现,实时判断市场是否处于山寨币季,含详细图表与指标) |
| desk3://market/bitcoin/dominance | 比特币主导率(Bitcoin Dominance,衡量比特币在整个加密货币市场的市值占比) |
| desk3://market/cycle/indicators | 加密货币市场周期顶部指标(Crypto Market Cycle Top Indicators,返回字段:指标/当前/24 小时%/参考价格/已触发) |
| desk3://market/pi-cycle-top | BTC Pi 周期顶部指标(BTC Pi Cycle Top Indicator,使用 111DMA 和 2x350DMA 识别比特币市场顶部) |
| desk3://market/rainbow | 比特币彩虹价格图(Bitcoin Rainbow Price Chart,使用对数增长曲线和色带说明市场情绪,识别潜在买入或卖出区域) |
| desk3://market/puell-multiple | Puell Multiple(皮勒乘数计算,通过将每日发行量(美元)除以其 365 天的平均值来评估比特币矿工的收入,反映市场挖矿压力) |
| desk3://market/cycles | 简易指标(Simple indicators:Puell 多重状态/Pi 周期顶部状态/加密货币市场周期顶部指标) |
工具
| 工具 | 详情 | 参数 |
|------|------|------|
| get_suggest_gas | 获取 EIP1559 估算 Gas 信息(需要 chainid) | chainid:区块链网络的链 ID(例如,以太坊主网为 1,Polygon 为 137) |
| get_exchange_rate | 获取法币汇率列表 | 无 |
| get_mini_24hr | 获取 24 小时迷你行情(支持 symbol 参数) | symbol:交易对符号,格式如 BTCUSDT、ETHUSDT 等。留空则获取所有符号 |
| get_token_price | 获取实时代币价格(支持 symbol 参数) | symbol:交易对符号,格式如 BTCUSDT、ETHUSDT 等。留空则获取所有符号 |
| get_fear_greed_index | 贪婪与恐惧指数(分析市场情绪,助力明智投资决策,支持实时与历史数据) | 无 |
| get_btc_trend | 获取近 3 个月 BTC 趋势图表 | 无 |
| get_eth_trend | 获取近 3 个月 ETH 趋势图表 | 无 |
| get_altcoin_season_index | 山寨币季指数 | 无 |
| get_bitcoin_dominance | 比特币主导率 | 无 |
| get_cycle_indicators | 获取加密货币市场周期顶部指标(返回字段:指标/当前/24 小时%/参考价格/已触发) | 无 |
| get_pi_cycle_top | Pi 周期顶部指标(使用 111DMA 和 2x350DMA 识别比特币市场顶部) | 无 |
| get_rainbow_chart | 比特币彩虹图(使用带有色带的对数增长曲线来说明市场情绪,并突出显示潜在的买入或卖出区域) | 无 |
| get_puell_multiple | Puell Multiple(通过将每日发行量(美元)除以其 365 天的平均值来评估比特币矿工的收入) | 无 |
| get_cycles | 发现加密货币市场周期指标(帮助您识别加密货币牛市的顶峰) | 无 |
配置
- 需要有效的
DESK3_API_KEY(在环境变量或.env文件中设置)。
🔧 技术细节
接口支持
支持 HTTP、SSE 和 JSON - RPC 2.0 接口,可根据不同的使用场景选择合适的接口进行数据交互。
启动方式
提供多种启动方式,包括 Python 直接启动、uv 脚本启动和 Docker 启动,方便不同用户的使用习惯和部署需求。
📄 许可证
文档中未提及许可证相关信息。
⚠️ 重要提示
- 请确保
uv已安装并在您的环境变量 PATH 中。 - 请确保您的
DESK3_API_KEY有效。 - 如果使用 Docker,请使用
-e DESK3_API_KEY=...设置 API 密钥。
Scan to contact