GitHub Repo MCP
Navegue por repositórios do GitHub, explore diretórios e visualize o conteúdo de arquivos.
Documentação
GitHub Repo MCP
GitHub Repo MCP é um servidor MCP de código aberto que permite que seus assistentes de IA naveguem em repositórios do GitHub, explorem diretórios e visualizem o conteúdo de arquivos.
Sumário
Começando • Visão geral dos recursos
✨ Principais recursos
- 💻 Compatível com Cursor, Windsurf, Claude Desktop e outros clientes MCP que suportam o protocolo
stdio - 🔎 Navegue pelo conteúdo de qualquer repositório público do GitHub
- 📂 Explore diretórios e subdiretórios do repositório
- 📝 Visualize o conteúdo de arquivos de código e texto
- 📦 Instalação fácil via gerenciador de pacotes
Começando
Pré-requisitos
A instalação do servidor requer o seguinte no seu sistema:
- Node.js 18+
- npm ou yarn
Passo 1. Instalação
Você pode instalar e executar o GitHub Repo MCP usando Smithery, NPX ou configurando no mcp.json do seu IDE:
MacOS
npx github-repo-mcp
Windows NPX
cmd /c npx -y github-repo-mcp
Windows NPX via .cursor/mcp.json
{
"mcpServers": {
"github-repo-mcp": {
"command": "wsl",
"args": [
"bash",
"-c",
"cmd /c npx -y github-repo-mcp"
],
"enabled": true
}
}
}
Windows NPX via .cursor/mcp.json (se o caminho não estiver definido)
# Find the full path to npx first
which npx
{
"mcpServers": {
"github-repo-mcp": {
"command": "wsl",
"args": [
"bash",
"-c",
"'/home/[username]/.nvm/versions/node/v20.18.0/bin/npx github-repo-mcp'"
],
"enabled": true
}
}
}
Instalando via Smithery
Para instalar o GitHub Repo MCP para Claude Desktop automaticamente via Smithery:
npx -y @smithery/cli install @Ryan0204/github-repo-mcp --client claude
Aguarde alguns segundos ou clique no botão de atualizar algumas vezes se não registrar. Se ainda assim não registrar, certifique-se de que você digitou o comando correto.
Passo 2. Configuração
O servidor GitHub Repo MCP pode usar um token do GitHub para limites de taxa mais altos ao acessar a API do GitHub.
Variáveis de ambiente
| Variável | Obrigatória | Padrão | Descrição |
|---|---|---|---|
GITHUB_TOKEN | Não | Nenhum | Seu token de acesso pessoal do GitHub para limites de taxa mais altos |
Configurando um Token do GitHub (Opcional)
Embora o servidor funcione sem autenticação, a API do GitHub tem limites de taxa muito mais baixos para solicitações não autenticadas. Para aumentar seu limite de taxa:
- Crie um token de acesso pessoal em https://github.com/settings/tokens
- Defina o token como uma variável de ambiente no mcp.json:
{
"mcpServers": {
"github-repo-mcp": {
"command": "...",
"args": [
...
],
"env": {
"GITHUB_TOKEN": "Your_Github_Token"
}
"enabled": true,
}
}
}
Visão geral dos recursos
Ferramentas de navegação em repositórios
O servidor fornece três ferramentas principais para interagir com repositórios do GitHub:
1. getRepoAllDirectories
Lista todos os arquivos e diretórios na raiz de um repositório do GitHub.
- Parâmetros:
repoUrl: A URL do repositório do GitHub (ex.: "https://github.com/owner/repo")
2. getRepoDirectories
Lista o conteúdo de um diretório específico em um repositório do GitHub.
- Parâmetros:
repoUrl: A URL do repositório do GitHubpath: O caminho do diretório a buscar (ex.: "src")
3. getRepoFile
Recupera e exibe o conteúdo de um arquivo específico de um repositório do GitHub.
- Parâmetros:
repoUrl: A URL do repositório do GitHubpath: O caminho do arquivo a buscar (ex.: "src/index.js")
Exemplos de uso
Aqui estão alguns exemplos de como usar essas ferramentas com um assistente de IA:
-
Navegando pela raiz de um repositório: Peça ao seu assistente de IA "Mostre-me o conteúdo do repositório em https://github.com/Ryan0204/github-repo-mcp"
-
Explorando um diretório específico: Pergunte "Quais arquivos estão no diretório src de https://github.com/Ryan0204/github-repo-mcp?"
-
Visualizando um arquivo: Pergunte "Mostre-me o arquivo README.md de https://github.com/Ryan0204/github-repo-mcp"
Limitações
- Limite de taxa: Sem autenticação, a API do GitHub tem limites de taxa rigorosos (60 solicitações por hora)
- Repositórios privados: Só é possível acessar repositórios públicos, a menos que um token com permissões apropriadas seja fornecido
- Arquivos binários: O servidor detecta extensões de arquivos binários comuns e não exibirá seu conteúdo
- Arquivos grandes: A API do GitHub tem limitações no tamanho dos arquivos que podem ser recuperados
Solução de problemas
Aqui estão alguns problemas comuns e suas soluções:
- Limite de taxa excedido: Configure um token do GitHub conforme descrito na seção de Configuração
- Comando não encontrado: Certifique-se de que o pacote está instalado globalmente
- Erros de conexão: Verifique sua conexão com a internet e o status da API do GitHub
Se você encontrar algum problema, verifique a saída para mensagens de erro ou crie um problema no repositório do GitHub.
Aproveite! ☺️