TestCollab MCP Server
使用说明内容(Markdown 格式)
-
项目简介
- 该仓库实现一个 MCP 服务器,用于向 AI 助手(如 Claude、Codex 等)提供 TestCollab 的上下文信息、资源访问能力与工具调用能力,并支持通过不同传输方式(如标准输入/输出、HTTP 等)与客户端通信。
-
主要功能点
- 资源管理:提供项目上下文资源(如 suites、tags、custom_fields、requirements)的获取,方便将人类可读名称映射到系统内部的数值ID。
- 工具注册与执行:实现若干 MCP 工具(如 list_test_cases、create_test_case、update_test_case、get_project_context 等),允许 LLM 客户端发起对 TestCollab 的操作请求,返回结构化响应。
- 提示模板与交互支持:为 LLM 的对话提供可扩展的模板和上下文渲染能力,方便在对话中整合测试用例和项目数据。
- 支持多种传输协议:包括基于标准 I/O 的稳定传输与可扩展的 HTTP 传输,便于浏览器/代码端的集成。
- 会话管理与能力声明:通过会话的上下文管理确保凭证安全传递,注册工具和资源以实现可扩展的能力展示。
-
安装步骤
-
- 安装依赖并构建项目
- 在工作区根目录执行安装依赖的命令,随后构建生成可运行的分发文件。
-
- 启动模式
- 有两种运行模式:
- STDIO 传输模式(适合本地脚本/CLI 调用):通过命令行启动,服务会通过标准输入/输出进行 MCP 交互。
- HTTP 传输模式(适合网页/浏览器/远程客户端):启动一个简单的 HTTP 服务器,通过自定义传输与 MCP 客户端进行通信。
-
- 使用 http-server 启动(HTTP 传输)
- 启动命令示例:node dist/http-server.js
-
- 使用 stdio 启动(STDIO 传输)
- 启动命令示例:node dist/index.js
- 注意:在实际使用中,应该先准备好 TestCollab API 的访问凭证(TC_API_TOKEN)及 API 基础地址(TC_API_URL),以及默认项目(TC_DEFAULT_PROJECT)等环境变量,服务器会根据传输模式从请求上下文或环境变量获取需要的配置。
-
-
服务器配置(用于 MCP 客户端的连接配置,注:MCP 客户端不需要该信息本身,只需知道如何启动服务器)
- 服务器名称(server_name):testcollab
- 启动命令与参数(command、args,将在客户端配置中使用,示例仅为说明,具体路径请按实际环境配置)
- command: node
- args: ["dist/http-server.js"] // 如要使用 HTTP 传输模式,请使用 HTTP 服务器入口
- 环境变量(可选,客户端仅作参考)
- TC_API_URL: http://localhost:1337
- TC_API_TOKEN: your-api-token
- TC_DEFAULT_PROJECT: 16
- 说明:上述信息用于 MCP 客户端在配置中建立对 MCP 服务器的连接。具体路径应根据打包产物的位置和服务器启动方式进行调整。
-
基本使用方法
- 启动后,MCP 服务器会提供对外的接口,LLM 客户端需要通过 MCP 协议与之通信,包括读取资源、调用工具、获取 Prompt 等能力。
- 在与 Claude、Codex 等集成时,通常需要先通过 get_project_context 等工具获取项目上下文以解析名称到 ID 的映射,然后再进行列表、创建、更新等操作调用。
- 若在 HTTP 传输下使用,请在请求头中提供认证信息(X-TC-API-Token、X-TC-API-URL、X-TC-Default-Project),或让服务器以环境变量形式提供默认配置。
- 客户端示例通常包括:
- 启动 MCP 服务器的命令及参数
- 指定启动端口(如 MCP_PORT=3100)
- 提供必要的 API 访问凭证和目标项目
- 常见操作顺序(简化示例):
- 启动服务器
- 使用 get_project_context 获取上下文
- 使用 list_test_cases、create_test_case、update_test_case 等工具完成测试用例管理
- 注意:上述步骤与实现细节紧密相关,实际调用请参考服务器端提供的工具及资源接口文档。
-
备注
- 该实现包含完整的服务端代码、资源和工具注册、以及与 TestCollab API 的集成逻辑,具备独立运行的能力,符合 MCP 服务器的核心职责与行为。