Skip to main content
Glama
kwitsch

repo-explorer-mcp

by kwitsch

repo-explorer-mcp

Un servidor MCP en Rust que expone la herramienta explore_repository a través de un transporte rmcp stdio, distribuido para Linux (x86_64-unknown-linux-gnu) y Windows (x86_64-pc-windows-msvc). Impulsa un bucle interno de exploración con LLM sobre un backend codebase-memory-mcp y búsqueda de texto con ripgrep/rtk.

Instalación (recomendado: script de configuración npx)

El script de instalación detecta tu SO/arquitectura, comprueba/instala las dependencias de ejecución, descarga y verifica la suma de comprobación del archivo de versión correspondiente, instala el binario, informa del estado de PATH e imprime un fragmento .mcp.json listo para usar.

npx github:kwitsch/repo-explorer-mcp
# After the package is published to npm:
# npx repo-explorer-mcp-setup

Opciones:

  • -y, --yes — no interactivo; aprueba automáticamente las instalaciones de dependencias.

  • --force — reinstala incluso si ya hay un binario actualizado.

  • --version <x.y.z> — instala una versión específica (por defecto: la última).

  • -h, --help — uso.

El script instala en ~/.local/bin (Linux) o %LOCALAPPDATA%\repo-explorer-mcp (Windows). Nunca edita tu perfil de shell ni el PATH del sistema; solo informa de si el directorio de instalación está en PATH. ripgrep se instala automáticamente mediante apt/dnf/pacman en Linux o winget en Windows; si ninguno de esos está disponible, el script avisa y remite a la documentación de instalación de ripgrep en lugar de instalarlo por sí mismo. rtk y codebase-memory-mcp son solo informativos: si faltan, el script te lo indica y remite a su documentación de instalación original (rtk es opcional; la búsqueda recurre a ripgrep simple).

Related MCP server: ast-outline-mcp

Instalación (alternativa manual)

Compilar desde el código fuente:

cargo build --release --workspace
# binary at target/release/repo-explorer-mcp

O descarga un archivo de versión y su suma de comprobación, verifícalo y coloca el binario en PATH (consulta docs/smoke-test.md para los comandos de verificación). Los archivos de versión siguen el contrato de nomenclatura fijo:

repo-explorer-mcp-<version>-x86_64-unknown-linux-gnu.tar.gz (+ .sha256)
repo-explorer-mcp-<version>-x86_64-pc-windows-msvc.zip       (+ .sha256)

desde https://github.com/kwitsch/repo-explorer-mcp/releases.

Verifica la versión:

repo-explorer-mcp --version # prints: repo-explorer-mcp 0.1.0

Configuración

El servidor lee una configuración TOML. Precedencia de rutas: --config <path> → variable de entorno REPO_EXPLORER_CONFIG./repo-explorer.toml. El directorio de trabajo de lanzamiento se trata como la raíz del repositorio a explorar.

Ejemplo de repo-explorer.toml:

[llm]
# Failover cooldown after a provider errors, in seconds.
cooldown_seconds = 90

# Providers are tried in file order (= failover order).
[[llm.providers]]
name = "primary"
kind = "anthropic"
api_key_env = "ANTHROPIC_API_KEY"   # names an env var; never the key itself
model = "claude-sonnet-4"

[[llm.providers]]
name = "secondary"
kind = "openai"
api_key_env = "OPENAI_API_KEY"
model = "gpt-4o"

# Exactly one of `command`+`args` (stdio) XOR `endpoint` (network).
[codebase_memory]
command = "codebase-memory-mcp"
args = ["--stdio"]

[search]
prefer_rtk = false        # true prefers `rtk rg`; false uses plain ripgrep
timeout_seconds = 45
# rtk_path / ripgrep_path may be set explicitly; omitted => auto-detected on PATH.

[logging]
level = "info"            # trace | debug | info | warn | error

La variable de entorno indicada por cada api_key_env debe estar realmente definida en el entorno; de lo contrario, la carga de la configuración falla con MissingEnvVar.

.mcp.json

Forma de binario instalado (lo que imprime el script de instalación):

{
  "mcpServers": {
    "repo-explorer": {
      "command": "/home/you/.local/bin/repo-explorer-mcp",
      "args": [],
      "env": {}
    }
  }
}

En Windows, el command es %LOCALAPPDATA%\\repo-explorer-mcp\\repo-explorer-mcp.exe. Añade "--config", "<path>" a args si tu repo-explorer.toml no está en el directorio de trabajo de lanzamiento. La forma de desarrollo dentro del repositorio, en cambio, se lanza mediante cargo run --release --quiet -p repo-explorer-mcp --.

Compilación y pruebas

cargo build --workspace
cargo test --workspace
cargo clippy --all-targets -- -D warnings
cargo fmt --check

Solución de problemas

La carga de la configuración falla rápidamente con un error con nombre:

Error

Causa

Solución

EmptyProviderList

llm.providers está vacío

Añade al menos un [[llm.providers]].

DuplicateProviderName

Dos proveedores comparten un name

Haz que el name de cada proveedor sea único.

MissingEnvVar

Un api_key_env nombra una variable no definida

export la variable nombrada antes del lanzamiento.

MissingCodebaseMemoryConnection

Ni command ni endpoint están definidos

Define exactamente uno en [codebase_memory].

ConflictingCodebaseMemoryConnection

Tanto command como endpoint están definidos

Mantén solo uno.

Consulta docs/smoke-test.md para verificar de principio a fin un artefacto de versión descargado.

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

View all related MCP servers

Related MCP Connectors

  • Give your AI agent a persistent map of your project's structure, dependencies, and bugs.

  • Turn a GitHub repo or docs site into agent-ready context: pack it or search it, over MCP.

  • Repo intel for AI coding agents: overview, PRs, contributors, hot files, CI, deps. Remote MCP.

View all MCP Connectors

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/kwitsch/repo-explorer-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server