allure-testops-mcp
allure-testops-mcp
MCP-Server für Allure TestOps. Ermöglicht es einem LLM-Agenten (Claude Code, Cursor, OpenCode usw.), Projekte, Testläufe, Testfälle und Testergebnisse über die Allure REST-API abzufragen.
Python, FastMCP, stdio-Transport.
Funktioniert mit jeder Allure TestOps-Instanz — SaaS qameta.io oder selbst gehostet / On-Premise. Entwickelt mit Blick auf Unternehmensnetzwerke: konfigurierbare Proxy-Umgehung, optionaler SSL-Verifizierungs-Schalter, API-Token-Authentifizierung.
Design-Highlights
Tool-Annotationen — jedes Tool ist mit
readOnlyHint: True/openWorldHint: Truemarkiert. Alle 6 Tools sind schreibgeschützt; MCP-Clients fragen nicht nach einer Bestätigung.Strukturierte Ausgabe bei jedem Tool — jedes Tool deklariert einen
TypedDict-Rückgabetyp, sodass FastMCP automatisch einoutputSchemageneriert und jedes Ergebnis sowohlstructuredContent(typisiertes Payload) als auch einen vorgerenderten Markdown-Textblock enthält.Strukturierte Fehler — Authentifizierungs-, 404-, 403-, 429-, 5xx- und fehlende Umgebungsvariablen-Fehler werden in umsetzbare Meldungen umgewandelt (z. B. "Authentifizierung fehlgeschlagen — überprüfen Sie, ob ALLURE_TOKEN über API-Berechtigungen verfügt").
Pydantic-Eingabevalidierung — jedes Argument hat typisierte Einschränkungen (Bereiche, Längen, Literale), die automatisch als JSON-Schema offengelegt werden.
Paginierung — Listen-Tools geben einen
pagination-Block mitpage,total,has_more,next_pagezurück.Fortschrittsberichte über MCP-Kontext — Tools, die mehrere API-Aufrufe tätigen (
allure_get_project_statistics,allure_search_failed_tests) sowieallure_list_test_casessendenctx.report_progress+ctx.info-Ereignisse, damit kompatible Clients Fortschrittsbalken und Schrittbezeichnungen rendern können.
Related MCP server: Allure TestOps MCP
Funktionen
6 Tools, die alltägliche Allure TestOps-Workflows abdecken:
Erkennung
allure_list_projects— alle Projekte mit ID, Name, Abkürzungallure_get_project_statistics— Anzahl der Testfälle, Automatisierungsrate, Zusammenfassung des letzten Laufs
Testläufe & Ergebnisse
allure_list_launches— aktuelle Testläufe mit Erfolgs-/Fehlerstatistikenallure_get_test_results— Testergebnisse in einem Lauf (Filter nach Status)allure_search_failed_tests— FEHLGESCHLAGENE/DEFEKTE Tests im letzten oder angegebenen Lauf
Testfälle
allure_list_test_cases— Testfälle mit Filter für automatisiert/manuell (jedes Ergebnis enthält auch seine Ebene, z. B.UNIT/API/E2E)
Installation
Erfordert Python 3.10+.
# via uvx (recommended)
uvx --from allure-testops-mcp allure-testops-mcp
# or via pipx
pipx install allure-testops-mcpKonfiguration
Kurzfassung — 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-mcpOder in ~/.claude.json / Projekt .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"
}
}
}
}Siehe .env.example für eine Vorlage aller unterstützten Umgebungsvariablen.
Überprüfung:
claude mcp list
# allure: uvx --from allure-testops-mcp allure-testops-mcp - ✓ ConnectedUmgebungsvariablen
Variable | Erforderlich | Beschreibung |
| ja | Allure TestOps URL (z. B. |
| ja | API-Token von Allure TestOps (Profil → API-Token) |
| nein |
|
Anwendungsbeispiel
In Claude Code:
"List all Allure projects"
"Show last 10 launches for project 63"
"Failed tests in the last launch for project 175"
"Automation rate for project 842"
"Test results in launch 12345 with status FAILED"
Sicherheitsüberlegungen
API-Token wird aus der Umgebungsvariablen
ALLURE_TOKENgelesen — wird niemals in der Befehlszeile übergeben und niemals in Protokolle geschrieben.Geheimnisse werden nicht in Tool-Antworten zurückgegeben (keine
stat.request_headers-Dumps, keinesession.auth-Reflektion).Selbstsigniertes SSL ist optional über
ALLURE_SSL_VERIFY=false— der Standardwert isttrue. Das Deaktivieren der Verifizierung in einem öffentlichen Netzwerk ist ein Sicherheitsrisiko; nur für vertrauenswürdige Unternehmensinstanzen verwenden.Proxy-Erkennung ist deaktiviert (
session.trust_env = False) — das MCP ignoriert absichtlichHTTP_PROXY/HTTPS_PROXY-Umgebungsvariablen, sodass die Sitzung nicht unbemerkt über einen unbeabsichtigten Proxy geleitet werden kann. Wenn Ihre Allure-Instanz nur über einen Proxy erreichbar ist, führen Sie das MCP in einer Umgebung aus, in derrequestsdirekt auflösen kann.Keine Schreibvorgänge verfügbar — alle 6 Tools sind schreibgeschützt. Selbst wenn das API-Token über Schreibrechte verfügt, kann dieser MCP-Server nichts in Allure TestOps erstellen, ändern oder löschen.
Eingabevalidierung über Pydantic — jedes Tool-Argument ist typisiert und begrenzt (IDs müssen ≥ 1 sein, Paginierung auf 200-500 begrenzt).
Ratenbegrenzungen
Allure TestOps erzwingt instanzspezifische Ratenbegrenzungen (normalerweise ca. 60 Anfragen / Minute für API-Token). Bei HTTP 429 gibt das MCP einen umsetzbaren Fehler zurück, der vorschlägt:
30-60 Sekunden vor dem erneuten Versuch zu warten.
Den
size-Parameter zu reduzieren (Standard 50 für Testergebnisse, 200 für Projekte).Mit kleineren Seitengrößen zu paginieren.
Zwei Tools führen intern mehrere API-Aufrufe durch:
allure_get_project_statistics— 3 Aufrufe (Anzahl der Testfälle + Testläufe + Laufstatistik).allure_search_failed_tests— 2-3 Aufrufe (Auflösung des letzten Laufs + FEHLGESCHLAGEN + DEFEKT).
Beide verwenden den MCP-Context, um den Fortschritt pro Schritt zu melden; allure_list_test_cases sendet ebenfalls ein einzelnes Fortschrittsereignis. Überwachen Sie den Fortschritts-Stream in kompatiblen Clients.
Entwicklung
git clone https://github.com/mshegolev/allure-testops-mcp.git
cd allure-testops-mcp
pip install -e '.[dev]'
pytestFühren Sie den Server direkt aus (stdio-Transport, wartet auf stdin für MCP-Nachrichten):
ALLURE_URL=... ALLURE_TOKEN=... allure-testops-mcpLizenz
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