使用说明
🚀 MCP Bitget交易服务器
用于Bitget加密货币交换的MCP(模型上下文协议)服务器。使人工智能助手能够与Bitget API互动进行现货和期货交易。具有实时市场数据、订单管理、账户余额、杠杆控制和头寸跟踪功能。支持纸质交易模式的模拟交易。
✨ 特性
📊 市场数据
- 实时价格 -获取任何交易对的当前市场价格
- 全票 -24小时统计的完整股票信息
- 订单簿 -具有可配置深度级别的市场深度数据
- 历史蜡烛 -用于技术分析的OHLCV数据
💰 账户管理
- 余额信息 -所有资产的实时账户余额
- 位置跟踪 -监控当前期货头寸
- 保证金信息 -期货保证金账户详细信息
- 订单管理 -查看和管理未结订单
🎯 交易操作
- 下订单 -执行市价单和限价单
- 取消订单 -按ID取消现有订单
- 杠杆控制 -为期货头寸设置杠杆(1-125x)
- 模拟交易 -完全支持纸质交易模式
⚡ 技术特性
- TypeScript -完全类型化实施
- v2 API支持 -最新的Bitget API集成
- 速率限制 -针对API限制的内置保护
- 错误处理 -全面的错误管理
- Zod验证 -所有参数的输入验证
🛠️ 安装
先决条件
- Node.js 18+
- npm或纱线
- Bitget API凭证(用于现场/模拟交易)
快速开始
- 克隆存储库
git clone https://github.com/gagarinyury/MCP-bitget-trading.git
cd MCP-bitget-trading
- 安装依赖项
npm install
- 配置环境
cp .env.example .env
# Edit .env with your Bitget API credentials
- 构建项目
npm run build
- 启动服务器
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 _UMCBLUSDT保证金合约的后缀
🔒 安全
- API密钥:存储在环境变量中,从不提交代码
- 示范模式:使用
BITGET_SANDBOX=true用于票据交易 - 速率限制:内置保护(默认10个请求/秒)
- 验证:所有输入均已Zod模式验证
🐛 故障排除
常见问题
-
错误40009-签名错误
- 检查API密钥配置
- 确保时间戳同步
-
错误40099-Exchange环境不正确
- 验证演示/直播模式设置
- 检查
paptrading演示模式标题
-
错误400172-参数验证失败
- 检查所需参数
- 验证符号格式
🤝 贡献
- 分叉存储库
- 创建特征分支(
git checkout -b feature/amazing-feature) - 提交更改(
git commit -m 'Add amazing feature') - 推送到分支(
git push origin feature/amazing-feature) - 打开拉取请求
📄 许可证
MIT许可证-请参阅 许可证 详细信息文件
⚠️ 免责声明
此软件用于教育和开发目的。使用风险自负。在实时交易之前,始终在演示模式下进行测试。作者不对任何经济损失负责。
🔗 资源
📞 支持
由以下材料制成❤️ 面向加密货币交易社区
