Codebase Context Dumper

Proporciona fácilmente contexto del código fuente a Modelos de Lenguaje de Gran Escala (LLMs).

Documentación

MseeP.ai Security Assessment Badge

codebase-context-dumper MCP Server

smithery badge npm version License: Apache-2.0

Un servidor de Model Context Protocol (MCP) diseñado para volcar fácilmente el contexto de tu código base en Modelos de Lenguaje de Gran Tamaño (LLMs).

@lex-tools/codebase-context-dumper MCP server

¿Por qué usar esto?

Las ventanas de contexto amplias en los LLM son potentes, pero seleccionar y formatear manualmente archivos de un código base grande es tedioso. Esta herramienta automatiza el proceso al:

  • Escanear recursivamente el directorio de tu proyecto.
  • Incluir archivos de texto del árbol de directorios especificado que no estén excluidos por las reglas de .gitignore.
  • Omitir automáticamente los archivos binarios.
  • Concatenar el contenido con marcadores claros de ruta de archivo.
  • Compatibilidad con fragmentación (chunking) para manejar códigos base más grandes que la ventana de contexto del LLM.
  • Integrarse sin problemas con clientes compatibles con MCP.

Uso (Recomendado: npx)

La forma más fácil de usar esta herramienta es mediante npx, que ejecuta la última versión sin necesidad de una instalación local.

Configura tu cliente MCP (por ejemplo, Claude Desktop, extensiones de VS Code) para usar el siguiente comando:

{
  "mcpServers": {
    "codebase-context-dumper": {
      "command": "npx",
      "args": [
        "-y",
        "@lex-tools/codebase-context-dumper"
      ]
    }
  }
}

El cliente MCP podrá entonces invocar la herramienta dump_codebase_context proporcionada por este servidor.

Características y Detalles de la Herramienta

Herramienta: dump_codebase_context

Lee recursivamente archivos de texto de un directorio especificado, respetando las reglas de .gitignore y omitiendo archivos binarios. Concatena el contenido con encabezados/pies de ruta de archivo. Admite la fragmentación de la salida para códigos base grandes.

Funcionalidad:

  • Escanea el directorio proporcionado en base_path.
  • Respeta los archivos .gitignore en todos los niveles (incluidos los anidados y .git de forma predeterminada).
  • Detecta y omite archivos binarios.
  • Lee el contenido de cada archivo de texto válido.
  • Antepone un encabezado (--- START: relative/path/to/file ---) y añade un pie (--- END: relative/path/to/file ---) al contenido de cada archivo.
  • Concatena todos los contenidos de archivos procesados en una sola cadena.

Parámetros de Entrada:

  • base_path (cadena, obligatorio): La ruta absoluta al directorio del proyecto a escanear.
  • num_chunks (entero, opcional, predeterminado: 1): El número total de fragmentos en los que dividir la salida. Debe ser >= 1.
  • chunk_index (entero, opcional, predeterminado: 1): El índice basado en 1 del fragmento a devolver. Requiere num_chunks > 1 y chunk_index <= num_chunks.

Salida: Devuelve el contenido de texto concatenado (y potencialmente fragmentado).

Instalación Local y Uso (Avanzado)

Si prefieres ejecutar una versión local (por ejemplo, para desarrollo):

  1. Clona el repositorio:
    git clone git@github.com:lex-tools/codebase-context-dumper.git
    cd codebase-context-dumper
    
  2. Instala las dependencias:
    npm install
    
  3. Compila el servidor:
    npm run build
    
  4. Configura tu cliente MCP para que apunte a la salida de compilación local:
    {
      "mcpServers": {
        "codebase-context-dumper": {
          "command": "/path/to/your/local/codebase-context-dumper/build/index.js" // Adjust path
        }
      }
    }
    

Contribuciones

¡Las contribuciones son bienvenidas! Consulta CONTRIBUTING.md para obtener detalles sobre desarrollo, depuración y publicación de nuevas versiones.

Licencia

Este proyecto está licenciado bajo la Apache License 2.0. Consulta el archivo LICENSE para obtener más detalles.