bitbank-genesis MCP 服务器
使用说明(Markdown 格式)
-
项目简介
- 该仓库实现了一个完整的 MCP 服务器,能够向 MCP 客户端提供资源、工具、提示模板(Prompts),并通过 JSON-RPC 与客户端通信。后端基于 bitbank 公共 API 提供多种数据分析工具,帮助 LLM 客户端进行市场分析、指标计算、图表渲染等。
-
主要功能点
- MCP 核心能力:托管 Resources、注册 Tools、定义 Prompts,并通过 JSON-RPC 进行资源访问、工具调用、Prompt 获取等。
- 多传输协议:默认 STDIO,支持通过 HTTP 传输(MCP_ENABLE_HTTP=1 时 PORT 指定)、SSE/WebSocket 等传输模式。
- 自动注册与加载:工具、Prompts、资源等通过源码定义与注册,便于维护与扩展。
- 提供示例工具集合:get_ticker、get_orderbook、get_candles、analyze_indicators、渲染图表、模式检测、市场信号分析等,以及复杂工具(如 run_backtest、detect_patterns、analyze_market_signal 等)的整合。
- 可视化与艺术品输出:支持 SVG/Chart 输出、活用 Prompt/Artifact 机制向 LLM 提供可视化信息。
- 开发与调试支持:提供 Inspector/TSX 调试路径、容错与日志记录、CI/测试友好结构。
-
安装步骤
- 需要 Node.js 18 及以上环境。
- 克隆并安装依赖
- git clone https://github.com/tjackiet/bitbank-genesis-mcp-server.git
- cd bitbank-genesis-mcp-server
- npm install
- 运行方式(最简)
- 直接在开发环境中使用 TSX 执行 src/server.ts(需安装 tsx)
- 也可通过 MCP Inspector 直接调试运行:npx @modelcontextprotocol/inspector -- tsx src/server.ts
- 传输模式
- STDIO:默认工作方式,直接通过标准输入/输出与客户端通信。
- HTTP(可选):将 MCP 服务器暴露为 HTTP 端口,通过 MCP_ENABLE_HTTP=1 PORT=8787 启用,使用 StreamableHTTPServerTransport 进行传输。
- Claude Desktop 集成:按仓库 README/文档中给出的路径,将 MCP 服务器作为一个服务器节点注册到 Claude Desktop(需 Node.js 环境与 Claude Desktop 配置)。
- 配置 Claude Desktop 的服务器条目(参考配置思路,非代码示例)
- server 名称:bitbank(显示名可自定义)
- command:/usr/local/bin/node
- args:[{path to tsx}, {path to src/server.ts}]
- workingDirectory:项目根目录
- env:{ "LOG_LEVEL": "info", "NO_COLOR": "1" }
-
服务器配置(MCP 客户端启动/连接信息,非代码示例) 说明:以下为 MCP 客户端用于连接 MCP 服务器的配置模板,以 JSON 格式描述,实际客户端可能仅需将 serverName、command、args 作为初始化信息,具体参数请以实际客户端文档为准。 { "server": { "name": "bitbank-mcp", "command": "/usr/local/bin/node", "args": [ "/ABS/PATH/to/tsx/dist/cli.mjs", "/ABS/PATH/to/bitbank-genesis-mcp-server/src/server.ts" ], "workingDirectory": "/ABS/PATH/to/bitbank-genesis-mcp-server", "env": { "LOG_LEVEL": "info", "NO_COLOR": "1" } } } 注释:
- server.name:在 MCP 客户端 UI 中显示的名称,可自定义(如 bitbank-MCP)。
- command/args:启动 MCP 服务器的命令及参数,指向实际运行入口(tsx/tsx 需在运行时支持)。
- workingDirectory:服务器工作目录,确保相对路径引用正确。
- env:可选环境变量,示例中设置了日志级别和禁止彩色输出。
- 上述配置仅用于 MCP 客户端启动示例,客户端实际配置需求可能因实现而异,请以客户端文档为准。
-
基本使用方法
- 启动 MCP 服务器(STDIO 模式):
- 在开发环境中执行 src/server.ts(通过 tsx/tsx 启动,按仓库文档要求进行)。
- 通过 Claude Desktop 集成:
- 将服务器条目添加到 Claude Desktop 配置中,确保命令和工作目录指向实际运行入口。
- 启动 Claude Desktop,使用 bitbank 的 MCP 服务器进行对话。
- 运行时交互要点:
- LLM 客户端通过 JSON-RPC 调用资源读取、工具调用、Prompt 获取等接口,服务器端按 MCP 协议格式返回 JSON-RPC 响应。
- 服务器端具备多传输能力,开发阶段优先使用 STDIO,生产环境可开启 HTTP/WS 等传输。
- 启动 MCP 服务器(STDIO 模式):
-
部署与扩展
- 新工具的添加:在 tool-registry.ts 中注册新工具定义,并确保相应的 toolDef 文件存在,服务器启动时会自动注册。
- Prompts 与资源:Prompts 从 src/prompts.ts 自动注册,Resources 由服务器端对外暴露。
- 测试与调试:项目内含大量单元测试与类型检查配置,运行 vitest 测试用例以确保类型和行为一致。
-
重要注意
- MCP 的核心理念是为 LLM 客户端提供可扩展、标准化的上下文服务,确保资源可访问、工具可调用、Prompts 可渲染。
- 如果你在 Claude Desktop 中遇到权限/路径问题,请参考 README 中的路径与环境变量说明,确保 Node 18+ 环境可用。
-
参考与后续
- 该服务器实现包含大量工具、Prompts、文档注释,且具备多传输协议能力,适合作为加密资产分析场景的 MCP 服务端基础设施。