tx MCP 服务器实现
使用说明(Markdown 格式)
-
项目简介
- tx 是一个围绕“为 AI 代理提供可扩展上下文服务”的工具集与服务器实现。MCP 服务器是其中的核心组件之一,负责对外提供按照 MCP 规范组织的资源、工具和提示模板等能力,通过 JSON-RPC 与 LLM 客户端进行通信。
-
主要功能点
- MCP 服务器核心能力
- 资源管理:托管和提供任务相关的知识、数据和上下文资源,便于 LLM 客户端在对话中引用与检索。
- 工具注册与执行:注册可调用的外部功能(Tools),LLM 客户端可通过 MCP 调用这些工具并获取结果。
- Prompt/模板渲染:定义并渲染可定制的 Prompt 模板,支持不同的交互模式。
- 会话与能力声明:服务器端维持会话状态、能力声明,以及安全与扩展机制。
- 通信与协议
- 通过 JSON-RPC 与客户端通信,接收请求(如读取资源、调用工具、获取 Prompts 等)。
- 提供多传输协议支持(如 Stdio、SSE、WebSocket),以适配不同运行环境和集成场景。
- 生态对接
- 与现有的 TypeScript SDK、REST API、以及 CLI/仪表盘等工具集成,形成端到端的 MCP 服务链。
- MCP 服务器核心能力
-
安装步骤
- 全局安装 TX 工具(示例命令,按实际仓库提供为准)
- npm install -g @jamesaphoenix/tx
- 初始化工作区并安装依赖
- 在项目根目录执行安装命令,确保能够构建与运行 MCP 服务
- 构建/启动 MCP 服务器
- 使用项目内提供的 MCP 服务启动脚本,或自行编译后运行应用程序(dist/server.js 等入口取决于构建配置)
- 运行参数与环境
- MCP 服务器通常需要指定监听端口、传输协议、以及数据存储路径等配置,具体以部署文档为准。
- 全局安装 TX 工具(示例命令,按实际仓库提供为准)
-
服务器配置(MCP 客户端所需信息)
- 配置格式(JSON):用于描述 MCP 服务器的对接参数,包含服务器名称、启动命令及参数等信息。注意:以下配置仅供客户端了解连接信息,不需要客户端直接依赖代码。
- 配置示例(JSON 注释性描述):
- serverName: "tx-mcp-server"
- startCommand: "node"
- args: ["dist/server.js", "--port", "8080", "--transport", "websocket"]
- description: "MCP 服务器启动参数,客户端根据此信息建立与 MCP 服务器的连接。传输协议默认支持 WebSocket,亦可配置 SSE 或 STDIO,端口按部署实际情况设置。"
- transports: ["websocket", "sse", "stdio"]
- healthCheckEndpoint: "/health"
- auth: { type: "none" } // 如需鉴权可在此扩展
- 重要说明
- MCP 客户端不需要上面的具体实现细节代码,只需知道服务器的对接信息与连接方式即可。
- 实际运行时,请参考仓库中 apps/mcp-server 相关文档与配置,确保启动命令、端口和传输选项的一致性。
-
基本使用
- 启动并对接
- 启动 MCP 服务器后,LLM 客户端通过 JSON-RPC 调用获取资源、执行工具、读取 Prompt 模板等能力。
- 常用交互模式
- 读取资源(如 context/learnings 等)
- 调用工具(如 tx_ready、tx_show、tx_list 等)以获取任务、依赖、或执行结果
- 获取并渲染 Prompt 模板以便与 LLM 交互
- 调试与监控
- 使用日志与 HTTP 健康检查端点监控服务器状态
- 与仪表盘/Dashboard 集成以查看资源、工具、Prompts 的元信息
- 启动并对接