返回 MCP 目录
public公开dns本地运行

cryptocurrency-mcp-server

Desk3 MCP Server是一个完全兼容MCP协议的加密货币数据服务,提供多种市场指标和工具,支持HTTP/SSE/JSON-RPC接口,可一键部署。

article

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 密钥。
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端