项目简介
Xray MCP 集成服务器是一个基于 Model Context Protocol (MCP) 的应用后端,旨在将 Xray Cloud 的 GraphQL API 能力集成到 LLM (大语言模型) 客户端(如 Claude Code)中。通过这个服务器,LLM 客户端可以调用一系列工具来管理 Xray Cloud 中的测试用例、测试执行、测试计划和测试集,从而实现智能化的测试管理、CI/CD 集成和自动化。
主要功能点
- 测试用例管理:
- 创建、获取、删除测试用例。
- 使用 JQL (Jira 查询语言) 搜索测试用例,或获取项目中所有测试用例。
- 支持更新测试用例的部分字段(如概要、描述、标签、优先级,但复杂字段需通过 Jira REST API)。
- 测试执行管理:
- 创建新的测试执行,将测试用例组织起来进行运行。
- 获取特定测试执行的详细信息,包括所有测试运行的状态。
- 使用 JQL 搜索测试执行,或获取项目中所有测试执行。
- 更新测试运行的状态(例如:PASS, FAIL, EXECUTING 等),支持 CI/CD 自动化集成。
- 测试计划管理:
- 创建新的测试计划,用于组织和规划测试活动。
- 获取特定测试计划的详细信息。
- 使用 JQL 搜索测试计划,或获取项目中所有测试计划。
- 向现有测试计划添加或移除测试用例。
- 测试集管理:
- 创建新的测试集,用于对相关测试用例进行分组。
- 获取特定测试集的详细信息。
- 使用 JQL 搜索测试集,或获取项目中所有测试集。
- 向现有测试集添加或移除测试用例。
安装步骤
- 克隆仓库:
git clone https://github.com/c4m3lblue-star/xray-mcp.git cd xray-mcp - 安装依赖:
npm install - 编译项目:
npm run build - 获取 Xray API 凭据:
- 访问 'https://xray.cloud.getxray.app/'。
- 导航到 Settings → API Keys。
- 点击 Create API Key 并复制生成的 Client ID 和 Client Secret。
服务器配置 (用于 MCP 客户端)
MCP 客户端(如 Claude Code)需要配置此服务器的启动命令。以下是一个 JSON 格式的配置示例,您需要将以下内容添加到您的 MCP 客户端配置文件(例如 macOS 上的 '~/Library/Application Support/Claude/claude_desktop_config.json')中。请根据您的实际情况替换路径和凭据。
{ "mcpServers": { "xray": { "command": "node", "args": ["/path/to/xray-mcp/dist/index.js"], "env": { "XRAY_CLIENT_ID": "你的Xray客户端ID", "XRAY_CLIENT_SECRET": "你的Xray客户端密钥" } } } }
- 将 '/path/to/xray-mcp' 替换为 'xray-mcp' 项目的绝对路径(例如:'/Users/youruser/repositories/xray-mcp')。
- 将 '"你的Xray客户端ID"' 替换为您在 Xray Cloud 获取的实际 Client ID。
- 将 '"你的Xray客户端密钥"' 替换为您在 Xray Cloud 获取的实际 Client Secret。
基本使用方法
一旦 MCP 服务器配置并启动成功,您的 LLM 客户端(如 Claude Code)就可以发现并调用上述所有 Xray 管理工具。您可以通过自然语言向 LLM 提出请求,例如:
- "请帮我在项目 ABC 中创建一个名为 '验证登录功能' 的手动测试用例。"
- "查询项目 PROJ 中所有在过去7天内创建的测试执行。"
- "将测试运行 ID 为 '5acc7ab0a3fe1b6fcdc3c737' 的状态更新为 'PASS'。"
- "获取测试用例键为 'ABC-123' 的详细信息。"
信息
分类
开发者工具