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.
Обзор архитектуры
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 installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/kushalsai-01/mcp-server-codebase-analyser'
If you have feedback or need assistance with the MCP directory API, please join our Discord server