使用 MCP(模型上下文协议)和 CCXT 集成高性能的加密货币交易所。
CCXT MCP 服务器通过模型上下文协议将语言模型连接到加密货币交易所。它充当桥梁,允许 LLM 访问实时市场数据并通过统一的 API 在多个交易所执行交易操作。
架构包括:
服务器组织成三个主要模块以提高可维护性和扩展性:
要通过 Smithery 自动安装 mcp-server-ccxt for Claude Desktop:
npx -y @smithery/cli install @doggybee/mcp-server-ccxt --client claude
你可以从 npm 安装 CCXT MCP 服务器:
# 全局安装
npm install -g @mcpfun/mcp-server-ccxt
# 启动服务器
mcp-server-ccxt
或者直接运行:
npx @mcpfun/mcp-server-ccxt
另外,你可以克隆并构建仓库:
# 克隆仓库
git clone https://github.com/doggybee/mcp-server-ccxt.git
cd mcp-server-ccxt
# 安装依赖
npm install
# 构建服务器
npm run build
# 启动服务器
npm start
创建环境文件
cp .env.example .env
编辑 .env 文件添加你的交易所 API 密钥
# 默认交易所(可选)
DEFAULT_EXCHANGE=binance
# 默认市场类型(可选)
DEFAULT_MARKET_TYPE=spot
# API 凭证(可选)
BINANCE_API_KEY=your_api_key
BINANCE_SECRET=your_api_secret
# 对于需要密码短语的交易所(例如 KuCoin)
KUCOIN_API_KEY=your_kucoin_api_key
KUCOIN_SECRET=your_kucoin_secret
KUCOIN_PASSPHRASE=your_kucoin_passphrase
# 代理配置(可选)
USE_PROXY=false
PROXY_URL=http://username:password@your-proxy-server:port
# 旧格式(仍然支持但建议使用上面的集成 URL 格式)
# PROXY_USERNAME=
# PROXY_PASSWORD=
注意:如果你遇到 MCP 通信问题,请参阅 故障排除指南 获取解决方案。
启动服务器:
# 如果通过 npm 全局安装
mcp-server--ccxt
# 如果手动安装
npm start
claude_desktop_config.json:如果通过 npm 安装(全局):
{
"mcpServers": {
"ccxt": {
"command": "mcp-server-ccxt"
}
}
}
如果手动安装:
{
"mcpServers": {
"ccxt": {
"command": "node",
"args": [
"/path/to/mcp-server-ccxt/build/index.js"
]
}
}
}
你也可以在自己的 Node.js 项目中使用此包作为模块:
// 导入 CCXT MCP 服务器
import '@mcpfun/mcp-server-ccxt';
// 当导入时服务器会自动启动
// 你可以通过环境变量进行配置
这里有一些你可以使用的 MCP 服务器示例查询:
list-exchanges:列出所有可用的加密货币交易所get-ticker:获取交易对的当前行情信息batch-get-tickers:一次性获取多个交易对的行情信息get-orderbook / get-order-book:获取交易对的市场订单簿get-ohlcv:获取交易对的 OHLCV 蜡烛图数据get-trades:获取交易对的最近成交记录get-markets:获取交易所的所有可用市场get-exchange-info:获取交易所信息和状态get-leverage-tiers:获取期货杠杆等级get-funding-rates:获取当前资金费率get-positions:获取开仓信息get-open-orders:获取所有未完成订单get-order-history:获取订单历史account-balance:从加密货币交易所获取账户余额place-market-order:在交易所下单市价单place-limit-order:在交易所下单限价单cancel-order:取消现有订单cancel-all-orders:取消所有未完成订单set-leverage:设置期货杠杆set-margin-mode:设置期货保证金模式place-futures-market-order:下单期货市价单place-futures-limit-order:下单期货限价单transfer-funds:在账户之间转账(例如现货转期货)cache-stats:获取 CCXT 缓存统计信息clear-cache:清除 CCXT 缓存set-log-level:设置日志级别get-proxy-config:获取代理设置set-proxy-config:配置代理设置set-market-type:设置默认市场类型set-default-exchange:更改默认交易所system-info:获取系统和环境信息MCP-CCXT 包含多项优化以确保高性能:
LRU 缓存系统:
自适应速率限制:
交易所连接管理:
创建专用 API 密钥:
限制 API 密钥权限:
安全存储:
.env 文件,并通过 .gitignore 排除 git本软件仅供信息参考。使用此软件与加密货币交易所互动涉及重大风险:
本项目根据 MIT 许可证发布 - 详情见 LICENSE.txt 文件。
本项目使用了 CCXT 库(https://github.com/ccxt/ccxt),其版权如下:
版权所有 (c) 2016-2024 CCXT 开发者
CCXT 依据 MIT 许可证发布,具体内容如下:
特此免费授予任何获得此软件及其相关文档文件副本的人(以下简称“软件”)不受限制地使用、复制、修改、合并、发布、分发、再许可和/或销售该软件的权限,并允许向他们提供软件的人这样做,但须遵守以下条件:
上述版权声明和本许可声明应包含在软件的所有副本或实质部分中。
软件按原样提供,不附带任何形式的担保,无论是明示的还是暗示的,包括但不限于适销性、特定用途适用性和非侵权性的担保。在任何情况下,作者或版权持有人都不对因软件或软件的使用或其他交易而产生的任何索赔、损害或其他责任承担任何责任,无论是在合同行为、侵权行为还是其他行为中。
对于问题、功能请求或贡献,请访问 GitHub 仓库。