Skip to main content
Glama
mshegolev

allure-testops-mcp

by mshegolev

allure-testops-mcp

PyPI Python License: MIT Tests

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。

  • 分页 — 列表工具返回一个包含 pagetotalhas_morenext_pagepagination 块。

  • 通过 MCP 上下文报告进度 — 执行多次 API 调用的工具(allure_get_project_statisticsallure_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_URL

Allure TestOps URL (例如 https://allure.example.com)

ALLURE_TOKEN

Allure TestOps 的 API 令牌 (个人资料 → API 令牌)

ALLURE_SSL_VERIFY

true/false。对于自签名企业证书,请设置为 false。默认:true

使用示例

在 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

Install Server
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
Response time
2dRelease cycle
14Releases (12mo)
Commit activity

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

  • A
    license
    B
    quality
    A
    maintenance
    AI-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.
    26
    339
    28
    Apache 2.0
  • A
    license
    B
    quality
    A
    maintenance
    An 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.
    66
    7
    Apache 2.0

View all related MCP servers

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.

View all MCP Connectors

Latest Blog Posts

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