GitHub Explorer MCP

Explore repositórios do GitHub, incluindo conteúdo de arquivos, estrutura de diretórios e outros metadados.

Documentação

GitHub Explorer MCP

O servidor MCP que fornece informações de repositórios do GitHub, incluindo conteúdo de arquivos, estrutura de diretórios e outros metadados para clientes MCP como Claude Desktop, Cursor e outros.

Recursos

  • Resumos de Repositórios: Obtenha informações abrangentes sobre repositórios do GitHub
  • Estrutura de Diretórios: Veja a estrutura completa de arquivos de qualquer repositório com uma visualização em árvore ASCII
  • Conteúdo de Arquivos: Acesse o conteúdo de arquivos específicos
  • Aprimoramento de Metadados: Obtenha estrelas, forks, descrição e informações de última atualização
  • Clonagem Local de Repositórios: Clone repositórios localmente para processamento mais rápido e dados mais completos
  • Sistema de Cache: Armazene em cache os dados do repositório de forma eficiente para reduzir chamadas de API
  • Notificações de Progresso: Atualizações sobre operações de longa duração
  • Opções de Formato: Obtenha dados em formato de texto ou JSON estruturado
  • Auto-Completar: Sugestões para proprietários e nomes de repositórios
  • Interface Web: Página de status básica e informações quando executado em modo HTTP

Instalação

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 com Clientes MCP

Claude Desktop

Adicione à sua configuração do Claude Desktop:

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

Cursor

Adicione à sua configuração do Cursor:

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

Referência da API

O servidor MCP fornece as seguintes ferramentas:

github_repository_summary

Obtenha um resumo de um repositório do 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

Obtenha a estrutura em árvore de um repositório do GitHub.

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

github_read_important_files

Obtenha o conteúdo de arquivos específicos de um repositório do 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 (Em breve)

Pesquise conteúdo dentro de um repositório do 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 (Em breve)

Obtenha um diff entre dois branches ou commits.

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

Desenvolvimento

# 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

Solução de Problemas

Problemas de Versão do Node.js

Este projeto requer Node.js 18 ou superior porque usa APIs Web modernas como ReadableStream. Se você encontrar erros como:

ReferenceError: ReadableStream is not defined

Você deve:

  1. Atualize o Node.js para a versão 18 ou posterior
  2. Se estiver usando nvm, execute nvm use no diretório do projeto
  3. Certifique-se de usar os scripts modificados que incluem os polyfills necessários

Contribuição

Contribuições são bem-vindas! Sinta-se à vontade para enviar um Pull Request.

Licença

MIT