codeviewer-mcp
codeviewer-mcp
codeviewer-mcp es un servidor MCP de TypeScript para flujos de trabajo de revisión de código con estado y conscientes de AST.
Se ejecuta sobre STDIO y está diseñado para clientes MCP y entornos LLM que pueden iniciar servidores MCP locales.
Qué proporciona este servidor
Herramientas MCP para el registro iterativo de planes y la revisión de fragmentos de código
Sesiones de revisión e historial respaldados por SQLite
Indexación de AST/localización de contexto para árboles de fuentes JS/TS
Comprobaciones previas (diagnósticos de TypeScript + detección de patrones de seguridad)
Salida de revisión estructurada con veredictos, comentarios categorizados y sugerencias de parches opcionales
Related MCP server: lsp-intelligence
Herramientas MCP
register_planreview_code_chunkcleanup_expired_sessionscleanup_sessionlist_sessionslist_indexing_errorslist_prompt_profilesget_prompt_profilehealth_check
Requisitos previos
Estos requisitos previos son necesarios para que este MCP se instale y ejecute correctamente.
Requisito | Por qué es necesario |
Node.js 20+ | Entorno de ejecución para el servidor y el SDK de MCP |
pnpm 9+ | Flujo de trabajo de instalación de dependencias y compilación |
Git | Clonar/actualizar repositorio para flujos de auto-instalación |
Cadena de herramientas de compilación nativa | Requerido por el módulo nativo |
Cadena de herramientas de compilación nativa por SO:
Windows: Visual Studio Build Tools 2022 (Desarrollo de escritorio con C++) + Python 3
macOS: Xcode Command Line Tools (
xcode-select --install)Linux (Debian/Ubuntu):
build-essential python3 make g++
Si faltan las compilaciones nativas, pnpm install puede fallar al compilar better-sqlite3.
Inicio rápido
git clone https://github.com/Master0fFate/codeviewer-mcp.git
cd codeviewer-mcp
pnpm install
pnpm build
pnpm startModo de desarrollo:
pnpm devVariables de entorno
Variable | Descripción | Predeterminado |
| Raíz del proyecto para la indexación de AST y comprobaciones de contención de rutas | Directorio de trabajo actual |
| Ruta de la base de datos SQLite |
|
| Directorio que contiene perfiles de prompt |
|
| ID del perfil de prompt predeterminado utilizado cuando |
|
| TTL de la sesión en horas, solo entero positivo |
|
| Token de portador opcional para entornos compartidos. Si se establece, cada llamada a la herramienta debe incluir | sin establecer |
| Limpiar sesiones caducadas al iniciar el proceso ( |
|
| Nivel de registro ( |
|
Ejemplo:
MCP_PROJECT_PATH=/absolute/path/to/repo \
MCP_SESSION_TTL_HOURS=24 \
LOG_LEVEL=info \
node dist/index.jsEjemplo de autenticación cuando MCP_AUTH_TOKEN está configurado:
{
"session_id": "11111111-1111-1111-1111-111111111111",
"plan_step": 1,
"target_file": "src/example.ts",
"code_chunk": "export const ok = true;",
"modification_type": "MODIFY",
"auth_token": "your-shared-secret"
}Flujo de trabajo de perfiles de prompt (prompts compartimentados)
Este MCP ahora admite la compartimentación de prompts a nivel de sesión desde la carpeta prompts.
Agregue archivos de prompt como
*.mden el directorio de prompts.El ID del perfil es el nombre del archivo sin extensión.
Ejemplo:
prompts/cybersec.md->prompt_profile: "cybersec"
Inicie una sesión con
register_plany unprompt_profileopcional.El perfil seleccionado se persiste en la sesión y se reutiliza para cada llamada a
review_code_chunken esa sesión.La salida de
review_code_chunkincluye:active_prompt_profileactive_prompt_titleactive_prompt_headings
Utilice herramientas auxiliares:
list_prompt_profilespara ver los perfiles disponibles.get_prompt_profilepara leer el contenido completo del prompt de un perfil.
Ejemplo de carga útil de register_plan con perfil de especialización:
{
"project_path": "/absolute/path/to/repo",
"prompt_profile": "cybersec",
"steps": [
"Review auth and secrets handling",
"Check unsafe execution paths"
]
}Guía de auto-instalación para LLM
Esta sección está escrita para instaladores autónomos de LLM y entornos MCP.
Lanzamiento canónico del servidor
node /absolute/path/to/codeviewer-mcp/dist/index.jsInstalación/actualización idempotente (bash)
set -euo pipefail
INSTALL_ROOT="${HOME}/mcp-servers"
SERVER_DIR="${INSTALL_ROOT}/codeviewer-mcp"
mkdir -p "${INSTALL_ROOT}"
if [ ! -d "${SERVER_DIR}/.git" ]; then
git clone https://github.com/Master0fFate/codeviewer-mcp.git "${SERVER_DIR}"
else
git -C "${SERVER_DIR}" pull --ff-only
fi
cd "${SERVER_DIR}"
pnpm install
pnpm buildInstalación/actualización idempotente (PowerShell)
$InstallRoot = Join-Path $HOME "mcp-servers"
$ServerDir = Join-Path $InstallRoot "codeviewer-mcp"
New-Item -ItemType Directory -Path $InstallRoot -Force | Out-Null
if (-not (Test-Path (Join-Path $ServerDir ".git"))) {
git clone https://github.com/Master0fFate/codeviewer-mcp.git $ServerDir
} else {
git -C $ServerDir pull --ff-only
}
Set-Location $ServerDir
pnpm install
pnpm buildInstalación del entorno (Claude Code, VS Code Copilot, OpenCode, MCP genérico)
Utilice los mismos valores de lanzamiento de STDIO en cada entorno.
Bloque de servidor canónico:
{
"name": "codeviewer-mcp",
"transport": "stdio",
"command": "node",
"args": ["/absolute/path/to/codeviewer-mcp/dist/index.js"],
"env": {
"MCP_PROJECT_PATH": "/absolute/path/to/target/repo",
"MCP_REVIEWER_DB_PATH": "/absolute/path/to/target/repo/.codeviewer-mcp.sqlite",
"LOG_LEVEL": "info"
}
}Claude Code / Claude Desktop
Abra la configuración de Claude MCP.
Agregue
codeviewer-mcpbajomcpServerscon los valores canónicos de comando/argumentos/entorno.Reinicie Claude.
Verifique que las herramientas sean detectables.
Ejemplo:
{
"mcpServers": {
"codeviewer-mcp": {
"command": "node",
"args": ["/absolute/path/to/codeviewer-mcp/dist/index.js"],
"env": {
"MCP_PROJECT_PATH": "/absolute/path/to/repo"
}
}
}
}VS Code Copilot (MCP)
Abra la gestión del servidor MCP de VS Code (UI o configuración JSON, según la versión).
Registre un servidor MCP STDIO local llamado
codeviewer-mcp.Establezca el comando
node, apunte los argumentos adist/index.jscompilado y establezcaMCP_PROJECT_PATH.Recargue la ventana de VS Code si lo requiere su versión de extensión.
Confirme el descubrimiento de herramientas en la lista de herramientas MCP de Copilot Chat.
Si su versión admite la configuración JSON, asigne el bloque de servidor canónico a su esquema de configuración de MCP.
OpenCode
Abra la configuración de OpenCode MCP.
Agregue un servidor STDIO local llamado
codeviewer-mcp.Use
node+dist/index.jscompilado.Establezca
MCP_PROJECT_PATHy las variables de entorno opcionales de DB/log.Reinicie OpenCode y verifique que aparezcan las herramientas.
Clientes MCP genéricos
Cualquier cliente que admita servidores MCP STDIO locales puede usar el bloque canónico anterior. Si los nombres de los campos difieren, asigne los mismos valores a su esquema de cliente.
Lista de verificación de verificación
[ ] El servidor se inicia sin errores de proceso
[ ] El cliente informa que la conexión MCP se ha establecido
[ ] Herramientas visibles:
register_plan,review_code_chunk,cleanup_expired_sessions,cleanup_session,list_sessions,list_indexing_errors,list_prompt_profiles,get_prompt_profile,health_check[ ]
register_plandevuelve unsession_idválido[ ]
review_code_chunkdevuelve una salida de veredicto estructurada[ ]
health_checkinforma un estado saludable de la base de datos/sesión
Desarrollo y validación
pnpm test
pnpm buildNotas de seguridad
Las comprobaciones de contención de rutas evitan escapar de la raíz del proyecto configurada, incluidos los escapes basados en enlaces simbólicos.
La autenticación es opcional (
MCP_AUTH_TOKEN) y debe habilitarse en entornos compartidos.Las sesiones caducan automáticamente según
MCP_SESSION_TTL_HOURS.SQLite está configurado con modo WAL y claves foráneas habilitadas.
Diseño del repositorio
/src/index.ts- Punto de entrada del proceso y transporte STDIO/src/server.ts- Servidor MCP y registro de herramientas/src/schemas.ts- Esquemas de contrato de herramientas Zod/src/state.ts- Almacén de estado SQLite y ciclo de vida de la sesión/src/ast.ts- Indexación de AST y localización de contexto/src/preflight.ts- Comprobaciones previas estáticas/src/reviewer.ts- Decisión de revisión y modelado de salida/src/logger.ts- Registro estructurado/tests- Suite de pruebas Vitest
Licencia
GNU v3
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceA code review tool server based on Model Context Protocol (MCP), providing multi-dimensional code review and scoring functions.42Apache 2.0
- Alicense-qualityDmaintenanceMCP server providing 29 tools across 5 layers for semantic TypeScript/JavaScript code intelligence, enabling AI agents to find references, trace impacts, guard APIs, and explain errors without text-search false positives.281MIT
- FlicenseAqualityDmaintenanceA Model Context Protocol (MCP) server for automated refactoring of Java and TypeScript/JavaScript codebases.163
- AlicenseAqualityFmaintenanceA code review tool server based on Model Context Protocol (MCP) providing multi-dimensional code review and scoring.413MIT
Related MCP Connectors
Hosted MCP server for structured code review passes on human- and AI-written code. Free tier.
A Model Context Protocol (MCP) application for automated GitHub PR analysis and issue management.…
Persistent memory and cross-session learning for AI coding assistants (hosted remote MCP).
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Master0fFate/codeviewer-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server