DevContext
DevContext
DevContext es un prototipo de servidor del Model Context Protocol (MCP) y una herramienta CLI que proporciona a los asistentes de codificación con IA y a los ingenieros datos de observabilidad en tiempo de ejecución (logs, despliegues y métricas de salud) para asistir en la triaje de incidentes.
Visión general
Los asistentes de codificación pueden inspeccionar los repositorios de código fuente y redactar correcciones, pero a menudo carecen de visibilidad sobre lo que ocurre durante incidentes en tiempo de ejecución (como despliegues recientes, picos en la tasa de errores, saturación del disco o caídas de APIs posteriores). DevContext es una herramienta de prueba de concepto que expone el contexto de ejecución a través de una interfaz de línea de comandos (CLI) y llamadas a herramientas MCP estándar.
Related MCP server: Nibble
Comandos CLI y herramientas
DevContext se puede ejecutar directamente desde la línea de comandos o registrarse como un servidor MCP.
1. devcontext diagnose
Ejecuta el triaje automatizado de incidentes contra conjunto de datos integrados o archivos o carpetas personalizadas:
# 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
Inicia el servidor MCP stdio para la conexión con hosts MCP (p. ej., Claude Desktop, Antigravity):
devcontext serveOpciones de análisis de logs
Parser determinista (
parser.py): Utiliza heurísticas para muestrear línees de logs e intentar la correspondencia de estructura (JSON-lines, CSV, pares clave-valor o marcas de tiempo básicas entre corchetes o separadas por espacios).Limitación: Es más adecuado para logs simples de una línea. Las trazas de pila complejas multilínea o los formatos personalizados no estándar pueden recurrir a la correspondencia básica de líneas.
Extracción experimental con LLM (
extraction.py): Envía de forma opcional fragmentos de log la API de Groq (response_format={"type": "json_object"}) para extraer objetos de eventos estructurados.Limitación: Introduce una latencia de API (~200–400ms) y de tokens; si falta la clave de API o se excede el tiempo de espera, se recurre al analizador determinista.
Opciones del origen de datos
Datos simulados integrados: Pase el nombre de entorno un servicio (p. ej.,
service_name="order-processing") para consultar los datos de demo incluidos.Rutas de archivos o directorios personalizados:
log_path: Ruta a un único archivo de log o a un directorio que contiene archivos.logo.txtdivididos.deploys_path: Ruta en un archivodeploys.jsonpersonalizado.health_path: Ruta a un archivohealth.jsonpersonalizado.
Escenarios de evaluación y pruebas
El repositorio incluye un banco de pruebas (eval.py) evaluado con 5 escenarios de prueba sintéticos:
Escenario | Servicio | Tipo de escenario | Resultado esperado | Resultado |
|
| Reducción de límite de recursos | Identificar el despliegue | Aprobado |
|
| Disco lleno (sin despliegue reciente) | Identificar la saturación del disco (98%) | Aprobado |
|
| Fuga de memoria / OOM | Identificar la saturación de memoria (97%) | Aprobado |
|
| Caída de API externa | Identificar errores 503 de SendGrid | Aprobado |
|
| Migración fallida de base de datos | Identificar el despliegue | Aprobado |
Limitaciones y alcance
Pequeño debate de pruebas: Este conjunto de evaluación contiene 5 casos de prueba sintéticos creados para la validación. No es un punto de referencia exhaustivo en producción.
Coincidencia heurística:
diagnose()utiliza reglas simples (p. ej., verificar si un despliegue ocurrió dentro de los 10 minutos después del primer error). Los incidentes reales en infraestructura suelen ser más complejos y pueden involucrar múltiples factores combinados.
Arquitectura
┌─────────────────────────────────────────────────────────┐
│ 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) │
└─────────────────────────────────────────────────┘Inicio rápido y configuración
1. Instalación
git clone https://github.com/your-username/devcontext.git
cd devcontext
pip install -e .2. Diagnóstico de un servicio mediante el CLI
devcontext diagnose --service order-processing3. Registro como servidor MCP (Claude Desktop)
Añade DevContext a tu claude_desktop_config.json:
{
"mcpServers": {
"devcontext": {
"command": "devcontext",
"args": [
"serve"
]
}
}
}4. Probar la suite de evaluación
python eval.py5. Configuración opcional de la clave API
Copia .env.example a .env si se usa Groq para la extracción experimental de logs con LLM:
cp .env.example .envDependencias y requisitos
Python 3.10+
mcp(SDK del Model Context Protocol)groq(Opcional, para extracción concecional LLM)
Extensiones futuras
Adaptadores conectables: Conectale directamente las APIs de CloudWatch, Datadog, Grafana Loki o Prometheus.
Puntuación de confianza probabilística: Genera distribuciones de probabilidad de causa raíz (p. ej.,
95% confidence: bad deploy) en lugar de más cadenas deterministas únicas.Propuestas automatizadas de rollback: Genera commits de git revert válidos o especificaciones de parche de Kubernetes junto al diagnóstico.
Licencia
Distribuido bajo la licencia MIT License.
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