MCP Server Codebase Analyzer
Анализатор кодовой базы MCP-сервера
Промышленный MCP-сервер (Model Context Protocol), который анализирует кодовые базы TypeScript, обнаруживает проблемы со здоровьем кода, получает системные инциденты и генерирует практические планы по устранению неполадок. Поддерживает двойной транспорт (STDIO для локальной разработки, SSE для облачного развертывания). Построен на базе ts-morph, Express и валидации Zod.
🚀 Функции
Три основных инструмента:
analyze_codebase_health— сканирует репозитории TypeScript на наличие:Больших файлов (кандидаты на рефакторинг)
Отсутствующих явных типов функций (слабая типизация)
Циклических зависимостей (архитектурные проблемы)
Использует
ts-morphдля анализа на уровне AST
fetch_system_incidents— возвращает структурированные данные об инцидентах:Имитационные данные об инцидентах (идеально для тестирования/демонстрации)
Настраиваемые задержки и режимы сбоев
JSON-ответы, удобные для LLM
generate_remediation_plan— создает практические планы исправлений:Анализ первопричин на основе трассировок стека
Пошаговые инструкции по устранению
Рекомендации по коду и лучшие практики
Оценка уровня риска
Все инструменты возвращают структурированные конверты успеха/ошибки, предназначенные для обработки LLM.
Related MCP server: ts-language-mcp
Обзор архитектуры
flowchart LR
Client[McpClient] --> Runtime[RuntimeSelector]
Runtime -->|stdio| Stdio[StdioTransportAdapter]
Runtime -->|sse| Sse[SseTransportAdapter]
Stdio --> Server[McpServer]
Sse --> Server
Server --> Registry[ToolRegistry]
Registry --> ToolA[analyze_codebase_health]
Registry --> ToolB[fetch_system_incidents]
Registry --> ToolC[generate_remediation_plan]Локальный запуск (STDIO)
Установите зависимости:
npm install
Запустите сервер:
npm run dev:stdio
Сервер запускается через stdin/stdout и готов к работе с локальными MCP-клиентами.
Запуск с SSE (Express)
Установите переменные окружения:
TRANSPORT=sseопционально:
AUTH_TOKEN=your-secret-token
Запустите сервер:
npm run dev:sse
Эндпоинты:
GET /eventsдля потока SSEPOST /messages?sessionId=...для сообщений MCP JSON-RPC
Подключение из Cursor
Для локального использования зарегистрируйте Nexus-Core как stdio MCP-сервер:
command:
nodeargs:
dist/index.js(после сборки) илиtsx src/index.ts(разработка)env:
TRANSPORT=stdio
Для облачного использования настройте ваш MCP-клиент на использование SSE-эндпоинта:
stream URL:
https://<host>/eventsmessage URL:
https://<host>/messages?sessionId=<session-id>добавьте
Authorization: Bearer <AUTH_TOKEN>, если включена токеновая авторизация.
Примеры промптов
"Analyze my repo"
"Fetch incidents"
"Fix this error"
Переменные окружения
См. .env.example для всех поддерживаемых настроек. Важные параметры:
TRANSPORT:stdioилиsseTOOL_TIMEOUT_MS: жесткий таймаут для каждого вызова инструментаTS_MORPH_MAX_FILES,TS_MORPH_MAX_DEPTH: ограничители анализаINCIDENT_API_TIMEOUT_MS,INCIDENT_API_RETRIES: элементы управления внешними зависимостямиSSE_HEARTBEAT_MS,SSE_SESSION_TTL_MS: жизненный цикл сессии SSE
Промышленное развертывание
Docker
Сборка образа:
docker build -t nexus-core .Запуск контейнера:
docker run -e TRANSPORT=sse -e PORT=8080 -p 8080:8080 nexus-core
Cloud Run
Используйте deploy.sh:
PROJECT_ID=<gcp-project> REGION=<region> SERVICE=nexus-core ./deploy.shЭтот скрипт:
Собирает образ контейнера
Отправляет его в GCR
Развертывает в Cloud Run
Надежность и модель ошибок
Все запросы к инструментам проверяются с помощью Zod.
Ни один вызов инструмента не возвращает необработанные исключения.
Ошибки используют стандартный конверт с:
codemessageretryablesuggestedActionmeta(requestId,toolName, время выполнения)
This server cannot be deployed
Maintenance
Related MCP Connectors
Manage uptime monitors and incidents and search logs, metrics and traces from an AI assistant.
Triage failing GitHub Actions jobs and see what self-heal repaired, in natural language.
Ship production-ready TypeScript code in half the time, at half the cost.
Coding agents in multi-service codebases routinely rebuild existing helpers, trust stale type definitions, and modify API contracts without knowing who consumes them. Carrick solves this by indexing your entire TypeScript ecosystem across service and repository boundaries. By integrating deeply with the TypeScript compiler, Carrick traces every route, type, and cross-service call while recording function behaviour so agents search by intent rather than name. Delivered via MCP for AI agents and LSP for IDEs, Carrick ensures models see existing endpoints and utilities before generating new code. The scanner is source-available and runs from your CLI or CI pipeline.
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides real-time TypeScript diagnostics with intelligent caching for AI agents, enabling instant queries instead of running tsc repeatedly.98 npm3MIT
- AlicenseAqualityCmaintenanceEnables AI coding agents to interact with TypeScript projects through compiler-level code intelligence, providing tools for navigation, type information, diagnostics, refactoring, and semantic search.29214 npm4Apache 2.0
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to analyze code health in TypeScript/JavaScript projects, providing tools to run analysis, start a dashboard, and get summaries.6 npm3MIT
- AlicenseNot gradedqualityCmaintenanceAnalyzes codebases to produce structured quality health reports with risk-scored modules based on git churn, test coverage, and test-to-source mapping, acting as an MCP server for AI coding agents and a standalone CLI.MIT