DevContext
DevContext
DevContext — это прототип сервера Model Context Protocol (MCP) и CLI-инструмент, который предоставляет ИИ-ассистентам и инженерам данные о наблюдаемости рантайма (логи, деплои и метрики здоровья) для помощи в разборе инцидентов.
Обзор
ИИ-ассистенты могут просматривать исходный код репозиториев и предлагать исправления, но часто не видят, что происходит во время инцидентов в рантайме (например, недавние деплои, всплески частоты ошибок, переполнение диска или сбои внешних API). DevContext — это экспериментальный инструмент, который открывает контекст рантайма через интерфейс командной строки (CLI) и стандартные вызовы инструментов MCP.
Related MCP server: Nibble
Команды CLI и инструмента
DevContext можно запускать напрямую из командной строки или регистрировать как MCP-сервер.
1. devcontext diagnose
Запускает автоматический разбор инцидентов на встроенных наборах данных или пользовательских файлах/папках:
# 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
Запускает stdio MCP-сервер для подключения к MCP-хостам (например, Claude Desktop, Antigravity):
devcontext serveВарианты разбора логов
Детерминированный парсер (
parser.py): использует эвристики для выборки строк логов и попытки сопоставления структуры (JSON-lines, CSV, пары ключ-значение или временные метки в скобках с разделителями по пробелу).Ограничение: лучше всего подходит для простых однострочных логов. Сложные многострочные трассировки стека или нестандартные кастомные форматы могут выполнять откат к базовому сопоставлению строк.
Экспериментальная LLM-экстракция (
extraction.py): опционально отправляет фрагменты логов в API Groq (response_format={"type": "json_object"}) для извлечения структурированных объектов событий.Ограничение: добавляет задержку API (~200–400 мс) и расходы на токены; при отсутствии API-ключа или по тайм-ауту выполняется откат к детерминированному парсеру.
Варианты источников данных
Встроенные демонстрационные данные: передайте имя сервиса (например,
service_name="order-processing"), чтобы запросить встроенные демонстрационные данные.Пользовательские пути к файлам или папкам:
log_path: путь к одному файлу лога или папке с разделёнными файлами.log/.txt.deploys_path: путь к пользовательскому файлуdeploys.json.health_path: путь к пользовательскому файлуhealth.json.
Оценка и тестовые сценарии
Репозиторий содержит оценочный стенд (eval.py), протестированный на 5 синтетических тестовых сценариях:
Сценарий | Сервис | Тип сценария | Ожидаемый результат | Итог |
|
| Снижение лимитов ресурсов | Определить деплой | Пройден |
|
| Переполнение диска (без недавнего деплоя) | Определить переполнение диска (98%) | Пройден |
|
| Утечка памяти / OOM | Определить насыщение памяти (97%) | Пройден |
|
| Сбой внешнего API | Определить ошибки SendGrid 503 | Пройден |
|
| Неудачная миграция базы данных | Определить деплой | Пройден |
Ограничения и область применения
Небольшой набор тестов: этот оценочный набор содержит 5 синтетических тестовых сценариев для валидации. Это не полная производственная эталонная база.
Эвристическое сопоставление: функция
diagnose()использует простые правила (например, проверку, произошёл ли деплой в течение 10 минут после первой ошибки). Реальные иниценты инфраструктуры часто сложнее и могут включать несколько взаимодествующих факторов.
Архитектура
┌─────────────────────────────────────────────────────────┐
│ 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) │
└─────────────────────────────────────────────────┘Быстрый старт и настройка
1. Установка
git clone https://github.com/your-username/devcontext.git
cd devcontext
pip install -e .2. Диагностика сервиса через CLI
devcontext diagnose --service order-processing3. Регистрация в качестве MCP-сервера (Claude Desktop)
Добавьте DevContext в ваш файл claude_desktop_config.json:
{
"mcpServers": {
"devcontext": {
"command": "devcontext",
"args": [
"serve"
]
}
}
}4. Запуск оценочного набора
python eval.py5. Необязательная настройка API-ключа
Скопируйте .env.example в .env, если вы используете Groq для экспериментальной LLM-экстракции данных:
cp .env.example .envЗависимости и требования
Python 3.10+
mcp(Model Context Protocol SDK)groq(Опционально, для LLM-экстрабликации)
Будущие расширения
Подключаемые адаптеры: подключение напрямую к API CloudWatch, Datadog, Grafana Loki или Prometheus.
Вероятностные оценки достоверности: вывод распределения вероятностей корневой причины (например,
95% confidence: bad deploy) вместо одной детерминированной строки.Автоматические предложения отката: создание проверенных git revert-коммитов или спецификаций патчей Kubernetes вместе с диагностикой.
Лицензия
Распространяется по лицензии MIT.
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