项目简介
MCP币安交易服务器是一个基于Model Context Protocol (MCP) 构建的强大后端应用,旨在将币安加密货币交易所的丰富功能提供给大型语言模型(LLM)客户端,如Claude Desktop。它允许AI助手通过自然语言进行市场监控、交易操作和投资组合管理。
主要功能点
- 16个AI就绪工具: 涵盖完整的市场数据(如实时价格、24小时统计、K线图、最近交易)、账户信息查询(如余额、交易历史)、订单管理(如创建、查询、取消订单)等。
- 深度数据分析: 提供订单簿一级(L1)指标(如买卖价差、中价、流动性分析、价格墙检测)和二级(L2)深度数据(支持20或100个级别,采用紧凑整数编码以节省Token)。
- 实时数据: 通过WebSocket流提供100毫秒更新的实时价格和深度数据。
- 双重运行模式: 支持MCP标准的stdio协议,也支持作为独立的HTTP REST API服务器运行,并提供WebSocket数据流。
- Prompt模板支持: 内置'trading_analysis'和'portfolio_risk'等Prompt模板,赋能AI进行交易策略分析和投资组合风险评估。
- 资源访问: 提供'binance://market/btcusdt'、'binance://account/balances'等标准化资源URI,方便LLM客户端获取格式化的市场和账户数据。
- 安全与合规: 强调API密钥通过环境变量加载,不记录,仅限Binance Testnet测试网使用,确保资产安全。
- 健壮性: 采用Rust语言保证类型安全和编译时正确性,内置自动限速和指数退避重试机制。
安装步骤
- 安装Rust: 确保您的系统已安装Rust 1.90或更高版本(2024 Edition)。
- 克隆仓库: 打开您的终端或命令行工具,执行以下命令:
git clone https://github.com/ForgeTrade/mcp-binance-rs.git cd mcp-binance-rs - 构建服务器: 为了包含订单簿深度分析功能,请使用以下命令构建:
这将生成名为'mcp-binance-server'的可执行文件,位于'target/release/'目录下。cargo build --release --features orderbook
服务器配置
MCP服务器通常由MCP客户端(如Claude Desktop)通过配置文件启动和管理。以下是为Claude Desktop配置MCP币安服务器的示例,您需要将以下JSON片段添加到您的Claude Desktop配置文件'~/Library/Application Support/Claude/claude_desktop_config.json'中。
- 服务器名称 (server name): 在'mcpServers'对象中,'"binance"'是您给这个MCP服务器实例指定的名称,它将显示在Claude Desktop中。
- 启动命令 (command): 指定用于启动MCP服务器的命令。通常是'cargo',或者您系统上'cargo'可执行文件的完整路径(例如,在macOS或Linux上可能是'/Users/your_user/.cargo/bin/cargo')。
- 命令参数 (args):
- '"run"': 指示'cargo'运行项目。
- '"--release"': 以发布模式运行,优化性能和速度。
- '"--features"', '"orderbook"': 启用'orderbook'功能,以支持订单簿深度分析工具。
- '"--manifest-path"', '"/path/to/mcp-binance-rs/Cargo.toml"': 指定项目的'Cargo.toml'文件的完整路径,确保'cargo'能够找到项目。请务必将'/path/to/mcp-binance-rs/'替换为您的实际仓库路径。
- 环境变量 (env):
- '"BINANCE_API_KEY"': 您的币安测试网API Key。这是一个必填项,用于认证账户和交易操作。
- '"BINANCE_SECRET_KEY"': 您的币安测试网Secret Key。这也是一个必填项,用于签署认证请求。
- '"BINANCE_BASE_URL"': 币安API的基础URL。对于测试环境,请设置为'https://testnet.binance.vision'。
- '"RUST_LOG"': 设置Rust日志的详细程度,例如'info'。
示例配置(请务必替换为您的实际路径和密钥):
{ "mcpServers": { "binance": { "command": "cargo", "args": [ "run", "--release", "--features", "orderbook", "--manifest-path", "/path/to/mcp-binance-rs/Cargo.toml" ], "env": { "BINANCE_API_KEY": "您的测试网API密钥", "BINANCE_SECRET_KEY": "您的测试网Secret密钥", "BINANCE_BASE_URL": "https://testnet.binance.vision", "RUST_LOG": "info" } } } }
重要提示: 务必仅使用币安测试网API密钥和URL进行开发和测试。切勿使用生产环境的密钥,以防止真实资金风险。
基本使用方法
- 获取币安测试网凭证: 访问testnet.binance.vision注册账户并生成API密钥。请确保这些密钥是为测试网生成的。
- 配置Claude Desktop:
- 找到您的Claude Desktop配置文件(macOS通常是'~/Library/Application Support/Claude/claude_desktop_config.json')。
- 将上述“服务器配置”部分的JSON示例粘贴到'"mcpServers"'对象中。
- 将示例中的占位符(例如'"您的测试网API密钥"'和'/path/to/mcp-binance-rs/Cargo.toml')替换为您的实际信息。
- 重启Claude Desktop: 完全关闭Claude Desktop(例如,在macOS上使用Cmd+Q),然后重新打开。
- 验证连接与交互:
- 在Claude Desktop的用户界面中,查找🔌图标。点击它,您应该能看到一个名为“binance”的服务器条目,表示连接成功。
- 现在,您可以开始向Claude提问以利用币安功能。
- 查询市场数据: 尝试:“比特币现在的价格是多少?” (What's the current price of Bitcoin?)
- 获取订单簿深度: 尝试:“给我看ETHUSDT的订单簿前10层。” (Show me the order book for ETHUSDT with top 10 levels.)
- 查看账户余额: 尝试:“我的账户余额是多少?” (What's my account balance?)
- 执行交易(测试网): 在确保您的测试网账户有足够资金的情况下,尝试:“以50000 USDT的价格买入0.001个BTC。” (Place a limit buy order for 0.001 BTC at 50000 USDT.)
- AI辅助分析: 尝试:“分析BTCUSDT的交易机会。” (Analyze BTCUSDT for trading opportunities.) 或 “评估我的投资组合风险。” (Assess my portfolio risk.)
信息
分类
网页与API