Servidor MCP de contexto de código
Un servidor de Protocolo de Contexto de Modelo (MCP) para proporcionar contexto de código desde repositorios Git locales. Este servidor permite:
- Clonar repositorios git localmente
- Ramas y archivos de proceso
- Generar incrustaciones para fragmentos de código
- Realizar una búsqueda semántica sobre el código
Características
- Utiliza repositorios git locales en lugar de la API de GitHub
- Almacena datos en una base de datos SQLite
- Divide el código en fragmentos semánticos
- Genera incrustaciones para fragmentos de código usando Ollama
- Proporciona búsqueda semántica sobre el código.
Prerrequisitos
- Node.js (v16+)
- Git
- Ollama con un modelo de incrustación
Instalación
Configuración
Establezca las siguientes variables de entorno:
DATA_DIR
: Directorio para la base de datos SQLite (predeterminado: '~/.codeContextMcp/data')REPO_CACHE_DIR
: Directorio para repositorios clonados (predeterminado: '~/.codeContextMcp/repos')
Usando Ollama
Para realizar incrustaciones más rápidas y potentes, puedes usar Ollama:
Uso
Uso con Claude Desktop
Agregue la siguiente configuración a su archivo de configuración de Claude Desktop ( claude_desktop_config.json
):
Herramientas
El servidor proporciona la siguiente herramienta:
consultaRepo
Clona un repositorio, procesa el código y realiza una búsqueda semántica:
El parámetro branch
es opcional. Si no se proporciona, la herramienta usará automáticamente la rama predeterminada del repositorio.
El parámetro keywords
es opcional. Si se proporciona, los resultados se filtrarán para incluir únicamente los fragmentos que contengan al menos una de las palabras clave especificadas (coincidencia sin distinción entre mayúsculas y minúsculas).
Los parámetros filePatterns
y excludePatterns
son opcionales. Permiten filtrar los archivos que se procesan y buscan mediante patrones glob (p. ej., **/*.ts
para todos los archivos TypeScript).
Esquema de base de datos
El servidor utiliza SQLite con el siguiente esquema:
repository
: almacena información sobre los repositoriosbranch
: almacena información sobre las ramasfile
: almacena información sobre los archivosbranch_file_association
: Asocia archivos con ramasfile_chunk
: almacena fragmentos de código y sus incrustaciones
Licencia
Instituto Tecnológico de Massachusetts (MIT)
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Un servidor MCP que proporciona búsqueda semántica en repositorios git locales, lo que permite a los usuarios clonar repositorios, procesar ramas y buscar código a través de fragmentos de código vectorizado.
Related MCP Servers
- AsecurityFlicenseAqualityMCP Server for the GitHub API, providing features for file operations, repository management, and advanced search, with automatic branch creation and comprehensive error handling.Last updated -1843TypeScript
- -securityAlicense-qualityA specialized MCP server for in-depth analysis of git repositories, offering tools for branch overview, time period analysis, file changes, and merge recommendations.Last updated -41JavaScriptApache 2.0
- AsecurityFlicenseAqualityMCP server for managing Git operations on local repositories, allowing users to list repositories, get and create tags, list commits, push tags, and refresh repositories through a standardized interface.Last updated -6Python
- -securityAlicense-qualityA MCP server that transforms code repositories from GitHub, GitLab, or local directories into LLM-friendly formats, preserving context and structure for better AI processing.Last updated -1PythonApache 2.0