CCXT MCP Server

CCXT MCP Server

site icon
2025.05.07 1
Python加密货币交易市场数据分析账户管理金融服务
CCXT MCP Server 是一个基于 Model Context Protocol (MCP) 的服务,它将 CCXT 库的功能暴露为大型语言模型 (LLMs) 的工具。该服务允许 LLMs 以标准化和异步的方式与加密货币交易所交互,执行诸如获取余额、市场数据、创建订单等任务。
View on GitHub

Overview

基本能力

产品定位

CCXT MCP Server 是一个为大型语言模型 (LLMs) 提供加密货币交易所交互能力的服务。

核心功能

  • CCXT 集成:封装了常见的 CCXT 函数,用于与交易所交互。
  • 异步操作:使用 asyncioccxt.async_support 实现高效的非阻塞操作。
  • 清晰的工具定义:使用 typing.Annotatedpydantic.Field 提供清晰的参数描述和约束,便于 LLMs 和开发者理解和使用工具。
  • 认证处理:支持 API 密钥、密钥和密码认证,用于私有端点。
  • 公共和私有工具:提供公共市场数据和私有账户操作的工具。

适用场景

  • 加密货币交易自动化
  • 市场数据分析
  • 账户管理

工具列表

需要 API 认证的工具(私有)

  • fetch_account_balance:获取当前账户余额。
  • fetch_deposit_address:获取货币的存款地址。
  • withdraw_cryptocurrency:将加密货币提取到指定地址。
  • fetch_open_positions:获取未平仓头寸(主要用于期货/衍生品)。
  • set_trading_leverage:设置交易符号的杠杆(主要用于期货)。
  • create_spot_limit_order:创建新的现货限价订单。
  • create_spot_market_order:创建新的现货市价订单。
  • create_futures_limit_order:创建新的期货限价订单。
  • create_futures_market_order:创建新的期货市价订单。
  • cancel_order:取消现有的未成交订单。
  • fetch_order_history:获取订单历史(未成交/已成交)。
  • fetch_my_trade_history:获取用户执行的交易历史。

公共数据工具(无需认证)

  • fetch_ohlcv:获取历史 OHLCV(蜡烛图)数据。
  • fetch_funding_rate:获取永续合约的资金费率。
  • fetch_long_short_ratio:获取多空比率(需要交易所特定的 params)。
  • fetch_option_contract_data:获取期权合约的市场数据。
  • fetch_market_ticker:获取符号的最新价格 ticker 数据。
  • fetch_public_market_trades:获取符号的最近公共交易。

常见问题解答

  • 期货/期权:使用与期货或期权相关的工具时,确保通过 params 参数正确配置 CCXT 客户端,特别是传递 {'options': {'defaultType': 'future'}}(或 'swap''option',根据需要)如果交易所需要或不默认到所需的市场类型。
  • fetch_long_short_ratio:这不是标准的 CCXT 统一方法。您必须在 params 参数中提供特定的交易所方法名称及其参数。
  • 错误处理:如果在 CCXT 调用期间出现问题,工具会返回一个包含 "error" 键的字典。

使用教程

使用依赖

  1. 克隆仓库(如果尚未克隆) bash git clone <your-repo-url> # 替换为您的仓库 URL cd ccxt-mcp-server

  2. 创建并激活虚拟环境(推荐) bash python -m venv .venv source .venv/bin/activate # 在 Windows 上使用 `.venv\Scripts\activate`

  3. 安装依赖 所需的库列在 requirements.txt 中。您可以使用 pipuv 安装它们。

    • 使用 pip bash pip install -r requirements.txt
    • 使用 uv(如果已安装) bash uv pip install -r requirements.txt # 或者,如果您喜欢 uv 的环境管理: # uv sync

安装教程

  1. 按照上述步骤安装依赖。
  2. 运行 MCP 服务器: bash python mcp_server.py

调试方式

  1. 确保服务器已启动并运行。
  2. 检查服务器输出日志,确认没有错误信息。
  3. 使用 MCP 客户端连接服务器,测试工具功能。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。