DevContext
DevContext
DevContext ist ein Prototyp eines Model Context Protocol (MCP)-Servers und CLI-Tools, das KI-Codeassistenten und Entwicklern Laufzeit-Observability-Daten (Logs, Deploys und Health-Metriken) bereitstellt, um die Incident-Triage zu unterstützen.
Überblick
Codierungsassistenten können Quellcode-Repositories inspizieren und Fixes entwerfen, aber ihnen fehlt oft der Einblick in das, was bei Laufzeit-Störungen passiert (z. B. kürzliche Deployments, Fehlerratenspikes, volle Festplatten oder Ausfälle von Downstream-APIs). DevContext ist ein Proof-of-Concept-Tool, das Laufzeitkontext über eine Befehlszeilen-Schnittstelle (CLI) und standardmäßige MCP-Toolaufrufe bereitstellt.
Related MCP server: Nibble
CLI- & Tool-Befehle
DevContext kann direkt von der Kommandozeile ausgeführt oder als MCP-Server registriert werden.
1. devcontext diagnose
Führt eine automatisierte Incident-Triage gegen integrierte Datensätze oder benutzerdefinierte Dateien/Ordner durch:
# Diagnose built-in service dataset
devcontext diagnose --service order-processing
# Output raw JSON format
devcontext diagnose --service order-processing --json
# Point at custom log, deploy, and health paths (files or log directories)
devcontext diagnose --log-path /var/log/app/ --deploys-path deploys.json --health-path health.json
# Enable experimental Groq LLM extraction
devcontext diagnose --service order-processing --use-llm2. devcontext serve
Startet den Stdio-MCP-Server für die Verbindung zu MCP-Hosts (z. B. Claude Desktop, Antigravity):
devcontext serveOptionen für das Log-Parsing
Deterministischer Parser (
parser.py): Verwendet Heuristiken, um Logzeilen zu sampeln und eine Strukturzuordnung zu versuchen (JSON-lines, CSV, Key-Value-Paare oder einfache Timestamps in eckigen Klammern/leerzeichengetrennt).Einschränkung: Am besten geeignet für einfache einzeilige Logs. Komplexe mehrzeilige Stack-Traces oder nicht standardkonforme benutzerdefinierte Formate können auf einen einfachen Zeilenabgleich zurückfallen.
Experimentelle LLM-Extraktion (
extraction.py): Sendet optionale Log-Chunks an die Groq-API (response_format={"type": "json_object"}), um strukturierte Ereignisobjekte zu extrahieren.Einschränkung: Verursacht API-Latenz (ca. 200–400 ms) und Token-Kosten; falls der API-Key fehlt oder Anrufe ein Zeitlimitüberschreiten, wird auf den deterministischen Parser zurückgegriffen.
Optionen für Datenquellen
Integrierte Mock-Daten: Einen Dienstnamen übergeben (z. B.
service_name="order-processing"), um die enthaltenen Demo-Daten abzufragen.Benutzerdefinierte Datei- oder Ordnerpfade:
log_path: Pfad zu einer einzelnen Log-Datei oder einem Verzeichnis mit aufgeteilten.log- /.txt-Dateien.deploys_path: Pfad zu einer benutzerdefiniertendeploys.json-Datei.health_path: Pfad zu einer benutzerdefiniertenhealth.json-Datei.
Evaluierung & Test-Szenarien
Das Repository enthält eine Evaluierungs-Umgebung (eval.py), die gegen 5 synthetische Test-Szenarien getestet wurde:
Szenario | Service | Szenariotyp | Erwartetes Ergebnis | Ergebnis |
|
| Reduzierung des Ressourcenlimits | Deployment | Bestanden |
|
| Festplatte voll (kein neues Deployment) | Festplattenerschöpfung (98 %) identifizieren | Bestanden |
|
| Memory Leak / OOM | Speichersättigung (97 %) identifizieren | Bestanden |
|
| Ausfall der externen API | SendGrid-503-Fehler identifizieren | Bestanden |
|
| Fehlgeschlagene Datenbankmigration |
| Bestanden |
Einschränkungen & Umfang
Kleine Test-Suite: Diese Evaluations-Suite enthält 5 synthetische Testfälle zu Validierungszwecken. Dies ist kein erschöpfender Produktions-Benchmark.
Heuristischer Abgleich:
diagnose()verwendet einfache Regeln (z. B. Prüfung, ob ein Deployment innerhalb von 10 Minuten nach dem ersten Fehler stattfand). Reale Infrastruktur-Störungen sind oft komplexer und können mehrfach zusammenhängende wid himelastende, zusammenspielende Faktoren umfassen.
Architektur
┌─────────────────────────────────────────────────────────┐
│ CLI / MCP Clients │
│ (devcontext CLI / Claude Desktop / Antigravity) │
└───────────────────────────┬─────────────────────────────┘
│ CLI Args / stdio JSON-RPC
┌───────────────────────────▼─────────────────────────────┐
│ DevContext Entry Point │
│ (cli.py / server.py) │
└───────────────────────────┬─────────────────────────────┘
│
┌───────────────────────────▼─────────────────────────────┐
│ Diagnostic Core (tools.py) │
└───────┬───────────────────┬─────────────────────┬───────┘
│ │ │
┌───────▼───────────┐ ┌─────▼─────────────┐ ┌─────▼─────────────┐
│ Structure Parser │ │ Deployment Engine │ │ Health Observer │
│ (parser.py) │ │ (deploys.json) │ │ (health.json) │
└───────┬───────────┘ └───────────────────┘ └───────────────────┘
│
┌───────┴─────────────────────────────────────────┐
│ Groq API (Optional LLM log extraction) │
└─────────────────────────────────────────────────┘Schnittgeräte & Setup
1. Installation
git clone https://github.com/your-username/devcontext.git
cd devcontext
pip install -e .2. Dienst per CLI diagnostizieren
devcontext diagnose --service order-processing3. Als MCP-Server registrieren (Claude Desktop)
Fügen Sie DevContext zu Ihrer claude_desktop_config.json hinzu:
{
"mcpServers": {
"devcontext": {
"command": "devcontext",
"args": [
"serve"
]
}
}
}4. Evaluierung-Suite ausführen
python eval.py5. Optionale API-Key-Einrichtung
Kopieren Sie .env.example zu .env, wenn Sie Groq für die experimentelle LLM-Log-Extraktion verwenden:
cp .env.example .envAbhängigkeiten & Anforderungen
Python 3.10+
mcp(Model Context Protocol SDK)groq(Optional, für die LLM-Extraktion)
Zukünftige Erweiterungen
Plug-fähige Adapter: Direkte Verbindung zu CloudWatch-, Datadog-, Grafana-Loki- oder Prometheus-APIs.
Probabilistische Konfidenzwerte: Ausgabe von Wahrscheinlichkeitsverteilungen der Grundursache (z. B.
95% confidence: bad deploy) statt einzelner deterministischer Zeichenketten.Automated Rollback-Vorschläge: Generieren Sie validierte git-revert-Commits oder Kubernetes-Patch-Spezifikationen zusammen mit der Diagnose.
Lizenz
Unter der MIT-Lizenz lizenziert.
This server cannot be deployed
Maintenance
Related MCP Connectors
- SuperlogOAuthsh.superlog
Open-source agent that observes and fixes your application. Query logs, traces, metrics, incidents.
Production observability for AI agents: search runs, read evaluations, acknowledge incidents.
Data + AI observability — monitor and troubleshoot production-grade agents and the context they use.
Your team's shipping standards, org map and delivery metrics, inside your coding agent.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to investigate backend incidents by executing runbooks that gather evidence from observability and storage systems.1 npm9MIT
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to investigate production incidents by exposing service health, logs, and deployment data through MCP tools.1 npm-
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to access observability and evaluation data, including run history, span traces, LLM-as-judge evaluation results, and regression reports.MIT
- AlicenseNot gradedqualityCmaintenanceExposes a live application's runtime state to coding agents, including logs, DB schema, config, and feature flags, with read-only SQL and secret redaction.MIT