Code Context Provider MCP
Proporciona contexto y análisis de código para asistentes de IA utilizando analizadores Tree-sitter basados en WebAssembly.
Documentación
Code Context Provider MCP
Servidor MCP que proporciona contexto de código y análisis para asistentes de IA. Extrae la estructura de directorios y símbolos de código utilizando analizadores WebAssembly Tree-sitter con cero dependencias nativas.
Características
- Generar estructura de árbol de directorios
- Analizar archivos JavaScript/TypeScript y Python
- Extraer símbolos de código (funciones, variables, clases, importaciones, exportaciones)
- Compatible con el protocolo MCP para una integración perfecta con asistentes de IA
Uso Rápido (Configuración MCP)
Instalación mediante Smithery
Para instalar Code Context Provider para Claude Desktop automáticamente mediante Smithery:
npx -y @smithery/cli install @AB498/code-context-provider-mcp --client claude
Windows
{
"mcpServers": {
"code-context-provider-mcp": {
"command": "cmd.exe",
"args": [
"/c",
"npx",
"-y",
"code-context-provider-mcp@latest"
]
}
}
}
MacOS/Linux
{
"mcpServers": {
"code-context-provider-mcp": {
"command": "npx",
"args": [
"-y",
"code-context-provider-mcp@latest"
]
}
}
}
O instalar globalmente con npm:
npm install -g code-context-provider-mcp
Luego úsalo ejecutando:
code-context-provider-mcp # if you're not using @latest, you may want to clear the cache for latest version using `Remove-Item -Path "$env:LOCALAPPDATA\npm-cache\_npx" -Recurse -Force` for windows and `rm -rf ~/.npm/_npx` for linux/macos
Herramientas Disponibles
get_code_context
Analiza un directorio y devuelve su estructura junto con símbolos de código (opcional).
Parámetros:
absolutePath(cadena, obligatorio): Ruta absoluta al directorio a analizaranalyzeJs(booleano, opcional): Si se deben analizar archivos JavaScript/TypeScript y Python (predeterminado: false)includeSymbols(booleano, opcional): Si se deben incluir símbolos de código en la respuesta (predeterminado: false)symbolType(enumeración, opcional): Tipo de símbolos a incluir si includeSymbols es true (opciones: 'functions', 'variables', 'classes', 'imports', 'exports', 'all', predeterminado: 'all')filePatterns(matriz de cadenas, opcional): Patrones de archivos a analizar (p. ej. ['.js', '.py', 'config.*'])maxDepth(número, opcional): Profundidad máxima de directorio a analizar (predeterminado: 5 niveles)
Nota: Las funciones anónimas se filtran automáticamente de los resultados.
Ejemplo de Salida de Texto en Llamada a Herramienta
Directory structure for: C:\Users\Admin\Desktop\mcp\context-provider-mcp
Code Analysis Summary:
- Files analyzed: 3
- Total functions: 29
- Total variables: 162
- Total classes: 0
Note: Symbol analysis is supported for JavaScript/TypeScript (.js, .jsx, .ts, .tsx) and Python (.py) files only.
Code analysis limited to a maximum depth of 5 directory levels (default).
├── index.js (39 KB)
│ └── [Analyzed: 22 functions, 150 variables, 0 classes]
│ Functions:
│ - initializeTreeSitter [39:0]
│ - getLanguageFromExtension [107:0]
│ - getPosition [138:24]
Ejemplos de Patrones de Archivos
Puedes usar el parámetro filePatterns para especificar qué archivos analizar. Esto es útil para proyectos complejos con múltiples lenguajes o archivos específicos de interés.
Ejemplos:
["*.js", "*.py"]- Analizar todos los archivos JavaScript y Python["config.*"]- Analizar todos los archivos de configuración independientemente de la extensión["package.json", "*.config.js"]- Analizar package.json y cualquier archivo de configuración JavaScript[".ts", ".tsx", ".py"]- Analizar archivos TypeScript y Python (usando formato de extensión)
La coincidencia de patrones de archivos admite:
- Patrones glob simples con comodines (*)
- Extensiones de archivo directas (con o sin el punto)
- Nombres de archivo exactos
Manejo de Proyectos Grandes
Para proyectos muy grandes, puedes usar el parámetro maxDepth para limitar la profundidad con la que la herramienta recorrerá los directorios:
maxDepth: 2- Analizar solo el directorio raíz y un nivel de subdirectoriosmaxDepth: 3- Analizar la raíz y dos niveles de subdirectoriosmaxDepth: 0- Analizar solo archivos en el directorio raíz
Esto es particularmente útil cuando:
- Se trabaja con monorepos grandes
- Se analizan proyectos con muchas dependencias
- Se enfoca solo en el código fuente principal y no en bibliotecas de terceros
Lenguajes Soportados
El análisis de símbolos de código está soportado para:
- JavaScript (.js)
- JSX (.jsx)
- TypeScript (.ts)
- TSX (.tsx)
- Python (.py)
Usar el parámetro filePatterns permite incluir otros tipos de archivos en la estructura del directorio, aunque el análisis simbólico puede ser limitado.
Desarrollo
[Desarrollo] Configuración del Entorno de Desarrollo
# Clone the repository
git clone https://github.com/your-username/code-context-provider-mcp.git
cd code-context-provider-mcp
# Install dependencies
npm install
# Set up WASM parsers
npm run setup
[Desarrollo] Post-Instalación
Después de la instalación, el script prepare del paquete se ejecuta automáticamente para descargar los analizadores WASM. Si por alguna razón la descarga falla, los usuarios pueden ejecutar manualmente la configuración:
npx code-context-provider-mcp-setup
Licencia
MIT