GitHub Explorer MCP

Explora repositorios de GitHub, incluyendo contenido de archivos, estructura de directorios y otros metadatos.

Documentación

GitHub Explorer MCP

El servidor MCP que proporciona información de repositorios de GitHub, incluyendo contenido de archivos, estructura de directorios y otros metadatos para clientes MCP como Claude Desktop, Cursor y otros.

Características

  • Resúmenes de repositorios: Obtén información completa sobre repositorios de GitHub
  • Estructura de directorios: Visualiza la estructura completa de archivos de cualquier repositorio con una bonita visualización de árbol ASCII
  • Contenido de archivos: Accede al contenido de archivos específicos
  • Mejora de metadatos: Obtén estrellas, bifurcaciones, descripción e información de última actualización
  • Clonación de repositorios locales: Clona repositorios localmente para un procesamiento más rápido y datos más completos
  • Sistema de caché: Almacena en caché eficientemente los datos de repositorios para reducir llamadas a la API
  • Notificaciones de progreso: Actualizaciones sobre operaciones de larga duración
  • Opciones de formato: Obtén datos en formato texto o JSON estructurado
  • Autocompletado: Sugerencias para propietarios y nombres de repositorios
  • Interfaz web: Página de estado básica e información cuando se ejecuta en modo HTTP

Instalación

Usando NPM

# Install from npm
npm install @trishchuk/github-explorer-mcp -g

# Run the server (stdio mode for MCP clients)
github-explorer-mcp

# Or run in HTTP/SSE mode
github-explorer-mcp-sse

Usando Docker

# Build Docker image
docker build -t github-explorer-mcp .

# Run container
docker run -p 3000:3000 github-explorer-mcp

Uso con clientes MCP

Claude Desktop

Añade a tu configuración de Claude Desktop:

{
  "mcpServers": {
    "github-explorer": {
      "command": "npx",
      "args": ["-y", "@trishchuk/github-explorer-mcp"]
    }
  }
}

Cursor

Añade a tu configuración de Cursor:

{
  "mcpServers": {
    "github-explorer": {
      "command": "npx",
      "args": ["-y", "@trishchuk/github-explorer-mcp"]
    }
  }
}

Referencia de la API

El servidor MCP proporciona las siguientes herramientas:

github_repository_summary

Obtén un resumen de un repositorio de GitHub.

{
  owner: string;    // GitHub organization or username
  repo: string;     // Repository name
  branch?: string;  // Optional branch name
  includeMetadata?: boolean; // Include stars, forks, etc.
}

github_directory_structure

Obtén la estructura de árbol de un repositorio de GitHub.

{
  owner: string;    // GitHub organization or username
  repo: string;     // Repository name
  branch?: string;  // Optional branch name
}

github_read_important_files

Obtén el contenido de archivos específicos de un repositorio de GitHub.

{
  owner: string;     // GitHub organization or username
  repo: string;      // Repository name
  filePaths: string[]; // List of paths to files
  branch?: string;   // Optional branch name
  format?: 'text' | 'json'; // Output format
}

git_search (Próximamente)

Busca contenido dentro de un repositorio de GitHub.

{
  owner: string;     // GitHub organization or username
  repo: string;      // Repository name
  query: string;     // Search query
  branch?: string;   // Optional branch name
  maxResults?: number; // Maximum results to return
}

git_diff (Próximamente)

Obtén un diff entre dos ramas o confirmaciones.

{
  owner: string;     // GitHub organization or username
  repo: string;      // Repository name
  base: string;      // Base branch/commit
  head: string;      // Head branch/commit
}

Desarrollo

# Clone the repository
git clone https://github.com/x51xxx/github-explorer-mcp.git
cd github-explorer-mcp

# Install dependencies
npm install

# IMPORTANT: This project requires Node.js 18 or later
# If using nvm, run:
nvm use

# Build the project
npm run build

# Run the built server
npm start
# or
npm run start:sse

Solución de problemas

Problemas de versión de Node.js

Este proyecto requiere Node.js 18 o posterior porque utiliza APIs web modernas como ReadableStream. Si encuentras errores como:

ReferenceError: ReadableStream is not defined

Debes:

  1. Actualizar Node.js a la versión 18 o posterior
  2. Si usas nvm, ejecuta nvm use en el directorio del proyecto
  3. Asegúrate de usar los scripts modificados que incluyen los polyfills necesarios

Contribuciones

¡Las contribuciones son bienvenidas! No dudes en enviar un Pull Request.

Licencia

MIT