Skip to main content
Glama
sudo-ai-git

io.github.sudo-ai-git/mcp-benchmark-hygiene

by sudo-ai-git

mcp-benchmark-hygiene

mcp-name: io.github.sudo-ai-git/mcp-benchmark-hygiene

Deterministische Erkennung des pytest-Konfigurationslecks, das Agent-Benchmark-/Funktionsbewertung stillschweigend korrumpiert.

Kein LLM. Kein Netzwerk. Eine Frage, zuverlässig beantwortet:

Wenn ich python -m pytest <tests> in diesem Workspace ausführe, erbt es dann ein Host-Coverage-/Abbruch-Gate, das bestehenden Code fälschlich als fehlgeschlagen bewertet?


Der Fehler, den dies erkennt

Automatisierte Agenten-Bewertungs-Harnesses führen oft python -m pytest <hidden_tests> im Workspace des Ziels aus. Wenn dieser Workspace unter einer Repository-Wurzel verschachtelt ist, die pytest-addopts trägt — z. B.:

[tool.pytest.ini_options]
addopts = "--cov=harness --cov-report=term-missing:skip-covered --cov-fail-under=80"

...pytest löst diese Host-pyproject.toml als sein Rootdir auf, erbt die addopts und scheitert an dem eigenen Coverage-Gate des Hosts (harness bei 0 % gesammelt → unter dem Schwellenwert → Exit-Code ungleich Null). Das Harness zeichnet dann funktional BESTANDENEN Code als FEHLGESCHLAGEN auf.

Genau das ist der Fehler, der in sudo-ai-git/vulcanbench-findings dokumentiert ist: Der deklarative Grader von VulcanBench bewertete aus diesem Grund jede funktionale Aufgabe fälschlich als 0.0; mit -o addopts=, das das Leck neutralisiert, bestanden dieselben Workspaces 10/10.

Related MCP server: Debug Companion MCP

Der Fix, den es dir an die Hand gibt

Wenn ein Workspace als CORRUPTED markiert ist, gibt das Tool den korrigierten Befehl zurück:

python -m pytest -o addopts= <tests>

-o addopts= entfernt geerbte Coverage-/Abbruch-Gates. (Oder führe den Grader außerhalb der Repository-Wurzel aus.)

Werkzeuge

tool

purpose

inspect_workspace(path)

vollständige Analyse: ini-Kette, effektive addopts, CLEAN/CORRUPTED/UNKNOWN-Ergebnis + korrigierter Befehl

check_addopts(path)

schlanker Boolean: corrupted + Gründe

summarize(analysis)

einzeiliger, umsetzbarer Zusammenfassungs-String

Deterministischer Kern (ohne Abhängigkeiten)

Die Analyse durchläuft das Workspace-Verzeichnis bis zur Dateisystemwurzel, liest pyproject.toml / pytest.ini / tox.ini / setup.cfg in der Reihenfolge, in der pytest sie zuerst findet, und extrahiert addopts. Markiert werden:

  • Coverage-Gates--cov, --cov-fail-under, --cov-report, --cov-config

  • Abbruch-/Strict-Gates--maxfail, -x, --strict, --strict-markers, --pdb, --ff

Nur Gates, die Exit-Codes ändern / die Bewertung abbrechen, werden markiert. Ein harmloses addopts wird als CLEAN mit der exakten Zeichenkette gemeldet.

Installation und Ausführung (MCP stdio)

Ein Befehl (empfohlen) — installiert aus dem Repo, kein PyPI-Token nötig:

uv tool install git+https://github.com/sudo-ai-git/mcp-benchmark-hygiene
mcp-benchmark-hygiene                        # run stdio server
mcp-benchmark-hygiene --http --port 8137     # or Streamable HTTP

Oder mit pipx: pipx install git+https://github.com/sudo-ai-git/mcp-benchmark-hygiene

Direkt aus dem Quellcode (Fallback):

{ "mcpServers": {
    "benchmark-hygiene": { "command": "python3", "args": ["/abs/path/to/mcp_server.py"] }
}}

Erfordert das offizielle mcp-Python-Paket (pip install mcp). Der deterministische Kern (inspect_workspace / check_addopts / summarize) importiert und läuft mit null Abhängigkeiten — das mcp-Paket wird nur für den stdio-Server benötigt.

Streamable HTTP (remote/für Smithery veröffentlichbar)

python3 mcp_server.py --http --port 8137   # serves on http://<host>:8137/mcp/

Führe mit --http aus, um über Streamable HTTP (einen entfernten MCP-Endpunkt) statt über stdio zu dienen. Dies ist der Transport, den smithery mcp publish <url> für die URL-basierte Veröffentlichung erwartet — sobald also ein Smithery-Service-Token existiert, lässt sich der Server unverändert bereitstellen.

Beispiel

inspect_workspace(path="/home/runner/vulcanbench/workspace/task-1")
→ {
    "ok": true,
    "workspace": "/home/runner/vulcanbench/workspace/task-1",
    "ini_chain": [{"file": "/home/runner/vulcanbench/pyproject.toml",
                   "addopts": "--cov=harness ... --cov-fail-under=80"}],
    "effective_addopts": "--cov=harness ... --cov-fail-under=80",
    "will_corrupt_grading": true,
    "verdict": "CORRUPTED",
    "fixed_command": ["python3", "-m", "pytest", "-o", "addopts=", "<tests>"],
    "reasons": ["coverage gate(s) present: ['--cov', '--cov-fail-under']"]
}

Verifizierung

  • python3 test_detector.py — 5/5 Kern-Erkennungsprüfungen (Root-Gate, verschachtelte Vererbung, sauber, Abbruch-Gate, pyproject-no-pytest)

  • python3 test_e2e.py — treibt den echten MCP-stdio-Transport (initialize → tools/call) und prüft, dass CORRUPTED / CLEAN über die Leitung übertragen werden

Teil einer Familie

Dies ist einer von drei deterministischen, LLM-freien Agent-Trust-MCP-Servern von sudo-ai-git:

Lizenz & Herkunft

MIT. Unabhängig abgeleitet aus dem dokumentierten VulcanBench-#79-Befund; keine Unterstützung durch oder Verbindung mit morganlinton/VulcanBench impliziert.

Eine individuelle Integration beauftragen

Muss das mit deinem internen System verbunden werden (Auth, Logging, Security-Scan-Pass, gehostet)? Öffne eine Custom-Build-Anfrage. Die MIT-Referenz-Assets können in jedem Fall frei verwendet werden.

A
license - permissive license
Not graded
quality - not tested
C
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

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to run and analyze pytest tests for desktop applications through interactive commands. Supports test execution, filtering, result analysis, and debugging for comprehensive test automation workflows.
    2
  • A
    license
    Not graded
    quality
    A
    maintenance
    Local-first MCP and coding-agent reliability harness that captures bounded, sanitized failure evidence and generates deterministic executable regression tests. Capture is opt-in; no API key or hosted service is required.
    2
    Apache 2.0

View all related MCP servers

Related MCP Connectors

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/sudo-ai-git/mcp-benchmark-hygiene'

If you have feedback or need assistance with the MCP directory API, please join our Discord server