加密货币交易服务器

MCP Bitget交易服务器是一个基于Model Context Protocol的加密货币交易服务,支持与Bitget API交互,提供实时市场数据、订单管理、账户余额、杠杆控制和持仓跟踪等功能。

  • by gagarinyury
  • TypeScript
  • 本地部署
  • 6 星标
  • 更新于
在 GitHub 查看 gagarinyury/MCP-bitget-trading

使用说明

🚀 MCP Bitget交易服务器

用于Bitget加密货币交换的MCP(模型上下文协议)服务器。使人工智能助手能够与Bitget API互动进行现货和期货交易。具有实时市场数据、订单管理、账户余额、杠杆控制和头寸跟踪功能。支持纸质交易模式的模拟交易。

✨ 特性

📊 市场数据

  • 实时价格 -获取任何交易对的当前市场价格
  • 全票 -24小时统计的完整股票信息
  • 订单簿 -具有可配置深度级别的市场深度数据
  • 历史蜡烛 -用于技术分析的OHLCV数据

💰 账户管理

  • 余额信息 -所有资产的实时账户余额
  • 位置跟踪 -监控当前期货头寸
  • 保证金信息 -期货保证金账户详细信息
  • 订单管理 -查看和管理未结订单

🎯 交易操作

  • 下订单 -执行市价单和限价单
  • 取消订单 -按ID取消现有订单
  • 杠杆控制 -为期货头寸设置杠杆(1-125x)
  • 模拟交易 -完全支持纸质交易模式

⚡ 技术特性

  • TypeScript -完全类型化实施
  • v2 API支持 -最新的Bitget API集成
  • 速率限制 -针对API限制的内置保护
  • 错误处理 -全面的错误管理
  • Zod验证 -所有参数的输入验证

🛠️ 安装

先决条件

  • Node.js 18+
  • npm或纱线
  • Bitget API凭证(用于现场/模拟交易)

快速开始

  1. 克隆存储库
git clone https://github.com/gagarinyury/MCP-bitget-trading.git
cd MCP-bitget-trading
  1. 安装依赖项
npm install
  1. 配置环境
cp .env.example .env
# Edit .env with your Bitget API credentials
  1. 构建项目
npm run build
  1. 启动服务器
npm start

🔧 配置

环境变量

创建一个 .env 根目录中的文件:

# Bitget API Configuration
BITGET_API_KEY=your_api_key_here
BITGET_SECRET_KEY=your_secret_key_here
BITGET_PASSPHRASE=your_passphrase_here

# Environment settings
BITGET_SANDBOX=true  # Set to true for demo trading
BITGET_BASE_URL=https://api.bitget.com
BITGET_WS_URL=wss://wspap.bitget.com/v2/ws/public

# Optional settings
LOG_LEVEL=info
RATE_LIMIT_REQUESTS_PER_SECOND=10

Claude桌面集成

添加到您的Claude Desktop MCP设置(~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "bitget-trading": {
      "command": "node",
      "args": ["/path/to/MCP-bitget-trading/dist/server.js"],
      "env": {
        "BITGET_API_KEY": "your_key",
        "BITGET_SECRET_KEY": "your_secret",
        "BITGET_PASSPHRASE": "your_passphrase",
        "BITGET_SANDBOX": "true"
      }
    }
  }
}

📚 可用工具

市场数据工具

工具 说明 参数
getPrice 获取当前价格 symbol: string
getTicker 获取完整的股票信息 symbol: string
getOrderBook 获取订单簿 symbol: string, depth?: number
getCandles 获取OHLCV数据 symbol: string, interval: string, limit?: number

帐户工具

工具 说明 参数
getBalance 获取账户余额 asset?: string
getPositions 获取期货头寸 symbol?: string
getMarginInfo 获取保证金信息 symbol?: string
getOrders 获取未结订单 symbol?: string, status?: string

交易工具

工具 说明 参数
placeOrder 下新订单 symbol, side, type, quantity, price?
cancelOrder 取消订单 orderId: string, symbol: string
setLeverage 设置杠杆 symbol: string, leverage: number

🎮 使用示例

基本价格检查

// Get current Bitcoin price
await getPrice({ symbol: "BTCUSDT" })

// Get futures price
await getPrice({ symbol: "BTCUSDT_UMCBL" })

交易操作

// Place a limit buy order
await placeOrder({
  symbol: "BTCUSDT",
  side: "buy",
  type: "limit",
  quantity: "0.001",
  price: "50000"
})

// Set leverage for futures
await setLeverage({
  symbol: "BTCUSDT_UMCBL",
  leverage: 10
})

账户信息

// Check balance
await getBalance({ asset: "USDT" })

// Get all positions
await getPositions({})

🏗️ 发展

脚本

npm run dev      # Development with hot reload
npm run build    # Production build
npm run test     # Run tests
npm run lint     # Lint code
npm run format   # Format code

项目结构

src/
├── api/
│   └── rest-client.ts    # Bitget REST API client
├── types/
│   ├── bitget.ts         # Bitget API types
│   └── mcp.ts           # MCP schema definitions
└── server.ts            # Main MCP server

📋 符号格式

现货交易

  • 格式: BTCUSDT, ETHUSDT, ADAUSDT
  • 无需后缀

期货交易

  • 格式: BTCUSDT_UMCBL, ETHUSDT_UMCBL
  • _UMCBL USDT保证金合约的后缀

🔒 安全

  • API密钥:存储在环境变量中,从不提交代码
  • 示范模式:使用 BITGET_SANDBOX=true 用于票据交易
  • 速率限制:内置保护(默认10个请求/秒)
  • 验证:所有输入均已Zod模式验证

🐛 故障排除

常见问题

  1. 错误40009-签名错误

    • 检查API密钥配置
    • 确保时间戳同步
  2. 错误40099-Exchange环境不正确

    • 验证演示/直播模式设置
    • 检查 paptrading 演示模式标题
  3. 错误400172-参数验证失败

    • 检查所需参数
    • 验证符号格式

🤝 贡献

  1. 分叉存储库
  2. 创建特征分支(git checkout -b feature/amazing-feature)
  3. 提交更改(git commit -m 'Add amazing feature')
  4. 推送到分支(git push origin feature/amazing-feature)
  5. 打开拉取请求

📄 许可证

MIT许可证-请参阅 许可证 详细信息文件

⚠️ 免责声明

此软件用于教育和开发目的。使用风险自负。在实时交易之前,始终在演示模式下进行测试。作者不对任何经济损失负责。

🔗 资源

📞 支持


由以下材料制成❤️ 面向加密货币交易社区