MCP-Allure
MCP-Allure
MCP-Allure 是一个 MCP 服务器,可以读取 Allure 报告并以 LLM 友好的格式返回它们。
动机
随着人工智能和大型语言模型 (LLM) 在软件开发中日益重要,弥合传统测试报告与人工智能辅助分析之间差距的需求也日益增长。传统的 Allure 测试报告格式虽然易于阅读,但并未针对 LLM 的使用和处理进行优化。
MCP-Allure 通过将 Allure 测试报告转换为 LLM 友好格式来解决这一挑战。这种转换使 AI 模型能够更好地理解、分析并提供关于测试结果的洞察,从而更轻松地:
生成有意义的测试摘要和见解
识别测试失败的模式
针对失败的测试提出潜在的修复建议
实现更有效的 AI 辅助调试
促进自动化测试文档生成
通过优化 LLM 使用的测试报告,MCP-Allure 帮助开发团队在测试工作流程中充分利用 AI 工具的潜力,从而实现更高效、更智能的测试分析和维护。
已解决的问题
效率:传统的测试报告格式并未针对人工智能的使用进行优化,导致测试分析和维护效率低下。
准确性:人工智能模型可能难以解释和分析未针对人工智能消费进行优化格式的测试报告。
成本:将测试报告转换为 LLM 友好格式可能既耗时又昂贵。
主要特点
转换:将 Allure 测试报告转换为 LLM 友好格式。
优化:优化 AI 消耗的测试报告。
效率:高效转换测试报告。
成本:以低成本转换测试报告。
准确性:以高精度转换测试报告。
安装
要使用 uv 安装 mcp-repo2llm:
{
"mcpServers": {
"mcp-allure-server": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"/Users/crisschan/workspace/pyspace/mcp-allure/mcp-allure-server.py"
]
}
}
}工具
获取魅力报告
读取Allure报告并返回JSON数据
输入:
report_dir:Allure HTML报告路径
返回:
字符串,格式化的JSON数据,像这样:
{
"test-suites": [
{
"name": "test suite name",
"title": "suite title",
"description": "suite description",
"status": "passed",
"start": "timestamp",
"stop": "timestamp",
"test-cases": [
{
"name": "test case name",
"title": "case title",
"description": "case description",
"severity": "normal",
"status": "passed",
"start": "timestamp",
"stop": "timestamp",
"labels": [
],
"parameters": [
],
"steps": [
{
"name": "step name",
"title": "step title",
"status": "passed",
"start": "timestamp",
"stop": "timestamp",
"attachments": [
],
"steps": [
]
}
]
}
]
}
]
}
Available Tools
1 toolget_allure_reportC
read allure report and return json data
| Name | Required | Description | Default |
|---|---|---|---|
| results_dir | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions reading and returning JSON data, but fails to disclose critical traits: whether this is a read-only operation (implied by 'read' but not explicit), potential side effects (e.g., file access permissions), error handling, or performance aspects (e.g., large report processing). The description adds minimal value beyond the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise—a single sentence with no wasted words—and front-loaded with the core action. However, it is under-specified rather than efficiently concise; it could benefit from slightly more detail without losing brevity. It earns a high score for structure but loses a point due to under-specification.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (a tool to read and parse reports), lack of annotations, 0% schema coverage, and no output schema, the description is incomplete. It does not explain the return format beyond 'json data' (e.g., structure, keys), error conditions, or dependencies. For a tool with one parameter and no structured support, more context is needed to be adequately helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, with 1 parameter ('results_dir') undocumented in the schema. The description does not compensate by explaining what 'results_dir' means (e.g., path to Allure results directory, expected format), its role in reading the report, or any constraints. This leaves the parameter's semantics unclear, failing to add meaning beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool 'read[s] allure report and return[s] json data', which provides a basic verb+resource combination ('read allure report') and outcome ('return json data'). However, it's vague about what constitutes an 'allure report' (e.g., test results, specific file format) and doesn't differentiate from siblings (though none exist). It avoids tautology by not merely restating the name, but lacks specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool—there are no alternatives mentioned (sibling tools are none), no context about prerequisites (e.g., requires an existing report directory), and no exclusions or comparisons. The description implies usage for reading reports but offers no further direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.0.0- First observed
get_allure_report
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or overlap between tools. The tool 'get_allure_report' has a single, clearly defined purpose of reading Allure reports and returning JSON data.
The single tool name 'get_allure_report' follows a clear verb_noun pattern (get + report). Since there is only one tool, consistency is inherently perfect with no deviations to assess.
The server has only one tool, which feels thin for a reporting domain like Allure. A single tool for reading reports lacks essential operations such as generating, listing, or managing reports, making it under-scoped for typical use cases.
The tool surface is severely incomplete for an Allure reporting server. It only provides a 'get' operation for reports, missing critical functions like creating reports, listing available reports, updating report data, or deleting reports, which are essential for full lifecycle coverage.
Maintenance
Related MCP Connectors
Direct access to Cypress tests results and accessibility reports in your AI workflow.
MCP server for AI access to SmartBear tools, including BugSnag, Reflect, Swagger, PactFlow, QTM4J.
MCP server for Pentest-Tools.com: run scans, manage findings and reports via your preffered LLM.
A Model Context Protocol server for Wix AI tools
Related MCP Servers
- AlicenseAqualityFmaintenanceQA Sphere MCP server that enables Large Language Models to interact directly with test management system test cases, supporting AI-powered development workflows and test case discovery.1545 npm23MIT
- FlicenseNot gradedqualityDmaintenanceAn AI-powered server for code analysis, requirements validation, and automated fix proposals with human-in-the-loop confirmation. It supports multiple LLM providers and ensures safe file modifications through automatic backups and path validation.-
- AlicenseAqualityAmaintenanceMCP server for Allure TestOps — lets an LLM agent (Claude Code, Cursor, Windsurf, etc.) inspect test quality without leaving the chat.11116 PyPI3MIT
- AlicenseCqualityBmaintenanceProduction-ready MCP server for Allure TestOps, enabling test case, launch, test result, and test plan management via natural language.10093 npm2MIT