T

TestRail MCP服务

@sker65/testrail-mcp
0 Stars 22 次浏览 sker65 更新于 2026-08-23

一个模型上下文协议(MCP)服务器,允许通过与MCP客户端(如Claude Desktop)兼容的标准协议与TestRail的核心实体(项目、用例、运行、结果、数据集)进行交互。

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "testrail": {
      "args": [
        "testrail-mcp"
      ],
      "command": "uvx",
      "env": {
        "TESTRAIL_API_KEY": "your-api-key",
        "TESTRAIL_URL": "https://your-instance.testrail.io",
        "TESTRAIL_USERNAME": "your-email@example.com"
      }
    }
  }
}

可用工具 (23 个)

该服务在 MCP 协议中暴露的工具,AI 可按需调用

get_project 1 个参数 需填 1 项

Get a project by ID

必填参数:project_id

get_projects

Get all projects

该工具无需必填参数,直接调用即可

add_project 4 个参数 需填 1 项

Add a new project

必填参数:name

update_project 5 个参数 需填 1 项

Update an existing project

必填参数:project_id

delete_project 1 个参数 需填 1 项

Delete a project

必填参数:project_id

get_case 1 个参数 需填 1 项

Get a test case by ID

必填参数:case_id

get_cases 2 个参数 需填 1 项

Get all test cases for a project/suite

必填参数:project_id

add_case 9 个参数 需填 2 项

Add a new test case

必填参数:section_id、title

update_case 9 个参数 需填 1 项

Update an existing test case

必填参数:case_id

delete_case 1 个参数 需填 1 项

Delete a test case

必填参数:case_id

get_run 1 个参数 需填 1 项

Get a test run by ID

必填参数:run_id

get_runs 1 个参数 需填 1 项

Get all test runs for a project

必填参数:project_id

add_run 8 个参数 需填 3 项

Add a new test run

必填参数:project_id、suite_id、name

update_run 7 个参数 需填 1 项

Update an existing test run

必填参数:run_id

close_run 1 个参数 需填 1 项

Close an existing test run

必填参数:run_id

delete_run 1 个参数 需填 1 项

Delete a test run

必填参数:run_id

get_results 1 个参数 需填 1 项

Get all test results for a test

必填参数:test_id

add_result 7 个参数 需填 2 项

Add a new test result

必填参数:test_id、status_id

get_dataset 1 个参数 需填 1 项

Get a dataset by ID

必填参数:dataset_id

get_datasets 1 个参数 需填 1 项

Get all datasets for a project

必填参数:project_id

add_dataset 3 个参数 需填 2 项

Add a new dataset

必填参数:project_id、name

update_dataset 3 个参数 需填 1 项

Update an existing dataset

必填参数:dataset_id

delete_dataset 1 个参数 需填 1 项

Delete a dataset

必填参数:dataset_id

服务介绍

TestRail MCP 服务器

smithery 徽章

一个用于 TestRail 的 Model Context Protocol (MCP) 服务器,允许通过标准化协议与 TestRail 的核心实体进行交互。

功能

  • 通过 TestRail API 进行身份验证
  • 访问 TestRail 实体:
    • 项目
    • 用例
    • 运行
    • 结果
    • 数据集
  • 完全支持 Model Context Protocol
  • 兼容任何 MCP 客户端(如 Claude Desktop、Cursor、Winsurf 等)

安装

通过 Smithery 安装

要通过 Smithery 自动为 Claude Desktop 安装 testrail-mcp:

npx -y @smithery/cli install @sker65/testrail-mcp --client claude

手动安装

  1. 克隆此仓库:

    git clone https://github.com/yourusername/testrail-mcp.git
    cd testrail-mcp
    
  2. 创建并激活虚拟环境:

    python -m venv .venv
    source .venv/bin/activate  # 在 Windows 上: .venv\Scripts\activate
    
  3. 安装依赖项:

    pip install -e .
    

配置

TestRail MCP 服务器需要特定的环境变量来与您的 TestRail 实例进行身份验证。在运行服务器之前必须设置这些变量。

  1. 在项目的根目录中创建一个 .env 文件:

    TESTRAIL_URL=https://your-instance.testrail.io
    TESTRAIL_USERNAME=your-email@example.com
    TESTRAIL_API_KEY=your-api-key
    

    重要提示:

    • TESTRAIL_URL 应该是您 TestRail 实例的完整 URL(例如 https://example.testrail.io
    • TESTRAIL_USERNAME 是您用于登录的 TestRail 电子邮件地址
    • TESTRAIL_API_KEY 是您的 TestRail API 密钥(不是您的密码)
      • 要生成 API 密钥,请登录到 TestRail,转到 "我的设置" > "API 密钥" 并创建一个新的密钥
  2. 验证配置是否正确加载:

    uvx testrail-mcp --config
    

    这将显示您的 TestRail 配置信息,包括您的 URL、用户名以及 API 密钥的前几个字符以供验证。

如果您使用的是像 Claude Desktop 或 Cursor 这样的客户端,请确保环境变量对运行服务器的进程是可访问的。您可能需要在系统环境中设置这些变量,或确保它们从 .env 文件中加载。

使用

运行服务器

可以直接使用已安装的脚本来运行服务器:

uvx testrail-mcp

这将以 stdio 模式启动 MCP 服务器,可以与支持 stdio 通信的 MCP 客户端一起使用。

与 MCP 客户端一起使用

Claude Desktop

在 Claude Desktop 中,添加一个新的服务器,配置如下:

{
  "mcpServers": {
    "testrail": {
      "command": "uvx",
      "args": [
        "testrail-mcp"
      ],
      "env": {
        "TESTRAIL_URL": "https://your-instance.testrail.io",
        "TESTRAIL_USERNAME": "your-email@example.com",
        "TESTRAIL_API_KEY": "your-api-key"
      }
    }
  }
}

Cursor

在 Cursor 中,添加一个新的自定义工具,配置如下:

{
  "name": "TestRail MCP",
  "command": "uvx",
  "args": [
    "testrail-mcp"
  ],
  "communication": "stdio",
  "env": {
    "TESTRAIL_URL": "https://your-instance.testrail.io",
    "TESTRAIL_USERNAME": "your-email@example.com",
    "TESTRAIL_API_KEY": "your-api-key"
  }
}

Winsurf

在 Winsurf 中,添加一个新的工具,配置如下:

{
  "name": "TestRail MCP",
  "command": "uvx",
  "args": [
    "testrail-mcp"
  ],
  "protocol": "mcp",
  "env": {
    "TESTRAIL_URL": "https://your-instance.testrail.io",
    "TESTRAIL_USERNAME": "your-email@example.com",
    "TESTRAIL_API_KEY": "your-api-key"
  }
}

使用 MCP Inspector 测试

为了测试和调试,您可以使用 MCP Inspector:

npx @modelcontextprotocol/inspector \
  -e TESTRAIL_URL=<your-url> \
  -e TESTRAIL_USERNAME=<your-username> \
  -e TESTRAIL_API_KEY=<your-api-key> \
  uvx testrail-mcp

这将打开一个网页界面,您可以在其中探索和测试所有可用的工具和资源。

开发

此服务器使用以下技术构建:

  • FastMCP - 一个用于构建MCP服务器的Python框架
  • Requests - 用于与TestRail API进行HTTP通信
  • python-dotenv - 用于环境变量管理

许可证

MIT

相关 MCP 服务