allure-testops-mcp
allure-testops-mcp
Allure TestOps 的 MCP 服务器。允许 LLM 智能体(Claude Code、Cursor、OpenCode 等)通过 Allure REST API 查询项目、测试运行(launches)、测试用例和测试结果。
基于 Python、FastMCP 和 stdio 传输协议。
适用于任何 Allure TestOps 实例 — SaaS 版 qameta.io 或自托管/本地部署版。专为企业网络设计:支持配置代理绕过、可选的 SSL 验证开关以及 API 令牌认证。
设计亮点
工具注解 — 每个工具都标记为
readOnlyHint: True/openWorldHint: True。所有 6 个工具均为只读;MCP 客户端不会要求确认。每个工具均提供结构化输出 — 每个工具都声明了
TypedDict返回类型,因此 FastMCP 会自动生成outputSchema,且每个结果都包含structuredContent(类型化负载)和预渲染的 Markdown 文本块。结构化错误处理 — 将认证、404、403、429、5xx 和缺少环境变量等错误转换为可操作的消息(例如:“认证失败 — 请验证 ALLURE_TOKEN 是否具有 API 权限”)。
Pydantic 输入验证 — 每个参数都有类型约束(范围、长度、字面量),并自动公开为 JSON Schema。
分页 — 列表工具返回一个包含
page、total、has_more和next_page的pagination块。通过 MCP 上下文报告进度 — 执行多次 API 调用的工具(
allure_get_project_statistics、allure_search_failed_tests)以及allure_list_test_cases会发出ctx.report_progress+ctx.info事件,以便兼容的客户端渲染进度条和步骤标签。
Related MCP server: Allure TestOps MCP
功能
涵盖日常 Allure TestOps 工作流的 6 个工具:
发现
allure_list_projects— 获取所有项目(包含 ID、名称、缩写)allure_get_project_statistics— 获取测试用例计数、自动化率、最近一次运行摘要
运行与结果
allure_list_launches— 获取包含通过/失败统计信息的近期运行记录allure_get_test_results— 获取某次运行中的测试结果(可按状态过滤)allure_search_failed_tests— 获取最近一次或指定运行中 FAILED/BROKEN 的测试
测试用例
allure_list_test_cases— 获取测试用例,支持自动化/手动过滤(每个结果还包含其层级,例如UNIT/API/E2E)
安装
需要 Python 3.10+。
# via uvx (recommended)
uvx --from allure-testops-mcp allure-testops-mcp
# or via pipx
pipx install allure-testops-mcp配置
简短版本 — claude mcp add:
claude mcp add allure -s project \
--env ALLURE_URL=https://allure.example.com \
--env ALLURE_TOKEN=your-api-token \
--env ALLURE_SSL_VERIFY=true \
-- uvx --from allure-testops-mcp allure-testops-mcp或者在 ~/.claude.json / 项目 .mcp.json 中配置:
{
"mcpServers": {
"allure": {
"type": "stdio",
"command": "uvx",
"args": ["--from", "allure-testops-mcp", "allure-testops-mcp"],
"env": {
"ALLURE_URL": "https://allure.example.com",
"ALLURE_TOKEN": "${ALLURE_TOKEN}",
"ALLURE_SSL_VERIFY": "true"
}
}
}
}查看 .env.example 获取所有支持的环境变量模板。
检查:
claude mcp list
# allure: uvx --from allure-testops-mcp allure-testops-mcp - ✓ Connected环境变量
变量 | 必需 | 描述 |
| 是 | Allure TestOps URL (例如 |
| 是 | Allure TestOps 的 API 令牌 (个人资料 → API 令牌) |
| 否 |
|
使用示例
在 Claude Code 中:
“列出所有 Allure 项目”
“显示项目 63 的最近 10 次运行”
“项目 175 最近一次运行中失败的测试”
“项目 842 的自动化率”
“运行 12345 中状态为 FAILED 的测试结果”
安全考量
API 令牌从
ALLURE_TOKEN环境变量读取 — 绝不会在命令行中传递,也不会写入日志。机密信息不会在工具响应中回显(没有
stat.request_headers转储,没有session.auth反射)。自签名 SSL 可通过
ALLURE_SSL_VERIFY=false选择性开启 — 默认为true。在公共网络上禁用验证存在安全风险;仅在受信任的企业实例中使用。禁用代理发现 (
session.trust_env = False) — MCP 会刻意忽略HTTP_PROXY/HTTPS_PROXY环境变量,因此会话不会被静默路由到非预期的代理。如果您的 Allure 实例只能通过代理访问,请在requests可以直接解析的环境中运行 MCP。未公开写操作 — 所有 6 个工具均为只读。即使 API 令牌具有写权限,此 MCP 服务器也无法在 Allure TestOps 中创建、修改或删除任何内容。
通过 Pydantic 进行输入验证 — 每个工具参数都有类型和边界限制(ID 必须 ≥ 1,分页上限为 200-500)。
速率限制
Allure TestOps 强制执行实例级速率限制(API 令牌通常约为每分钟 60 次请求)。当遇到 HTTP 429 时,MCP 会返回一个可操作的错误,建议您:
等待 30-60 秒后再重试。
减小
size参数(测试结果默认为 50,项目默认为 200)。使用更小的页面大小进行分页。
有两个工具在内部执行多次 API 调用:
allure_get_project_statistics— 3 次调用(TC 计数 + 运行记录 + 运行统计)。allure_search_failed_tests— 2-3 次调用(解析最新运行 + FAILED + BROKEN)。
两者都使用 MCP Context 来报告每一步的进度;allure_list_test_cases 也会发出单个进度事件。请在兼容的客户端中监控进度流。
开发
git clone https://github.com/mshegolev/allure-testops-mcp.git
cd allure-testops-mcp
pip install -e '.[dev]'
pytest直接运行服务器(stdio 传输,等待 stdin 的 MCP 消息):
ALLURE_URL=... ALLURE_TOKEN=... allure-testops-mcp许可证
MIT © Mikhail Shchegolev
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityAmaintenanceAI-native Model Context Protocol (MCP) server for TestRail. Lets Claude, Cursor, Windsurf, and other AI assistants browse projects, create and update test cases, kick off test runs, and record results through natural-language conversation — with strongly-typed tool schemas and per-project custom field validation that helps LLMs generate valid TestRail requests on the first try.2633928Apache 2.0
- AlicenseBqualityBmaintenanceProduction-ready MCP server for Allure TestOps, enabling test case, launch, test result, and test plan management via natural language.1001002MIT
- AlicenseBqualityAmaintenanceAn MCP server for Allure TestOps that enables AI agents to manage test cases, defects, test plans, and other test management entities with clear, easy-to-use tools and helpful error guidance.667Apache 2.0
- AlicenseAqualityCmaintenanceAn MCP server that connects AI agents to TestOps, enabling test case management, launches, defects, and analytics through natural language.4871MIT
Related MCP Connectors
Official MCP server for Qase — manage test cases, runs, suites, defects via AI tools.
Real-time chat hub for AI agents — Claude Code, Cursor, Cline, Codex over MCP or REST.
MCP server for AI access to SmartBear tools, including BugSnag, Reflect, Swagger, PactFlow, QTM4J.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mshegolev/allure-testops-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server