github-repos
github-mcp-server
Un servidor MCP mínimo y de solo lectura que expone tus repositorios de GitHub a Claude Code (o a cualquier cliente compatible con MCP) a través de stdio.
Herramientas que expone
list_repos(owner?, include_forks?, limit?)- lista tus repositorios (o los repositorios públicos de otro propietario)get_repo_info(owner, repo)- metadatos de un repositoriolist_directory(owner, repo, path?, ref?)- explora el árbol de archivos de un repositorioread_file(owner, repo, path, ref?, max_bytes?)- lee el contenido de un archivo de textoget_readme(owner, repo, ref?)- obtiene el README de un repositoriosearch_code(query, owner?, repo?, limit?)- busca código (opcionalmente limitado a tus repositorios)list_commits(owner, repo, path?, limit?)- historial de commits recientes
Todo es de solo lectura: no se exponen endpoints de escritura, creación o eliminación.
Related MCP server: github-mcp-tool
Configuración
Crea un Token de acceso personal de GitHub (de grano fino, recomendado): GitHub -> Configuración -> Configuración de desarrollador -> Tokens de acceso personal -> Tokens de grano fino -> Generar nuevo token.
Acceso a repositorios: selecciona los repositorios que quieres que Claude lea (o "Todos los repositorios")
Permisos: Contenido: Solo lectura, Metadatos: Solo lectura (añade Búsqueda de código: Solo lectura si quieres que
search_codefuncione)
Instala las dependencias:
cd github-mcp-server python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txtConfigura el token (no lo incrustes en el script ni lo confirmes en ningún lugar):
export GITHUB_TOKEN=github_pat_xxxxxxxxxxxxPara que sea persistente, añade esa línea a tu
~/.zshrc/~/.bashrc, o usa un archivo.envcon una herramienta comodirenv; solo asegúrate de que esté en.gitignore.Registra el servidor con Claude Code CLI:
claude mcp add github-repos -- python3 /absolute/path/to/github-mcp-server/server.py(Si usaste un venv, apunta al python del venv:
/absolute/path/to/github-mcp-server/.venv/bin/python3)Dado que el servidor lee
GITHUB_TOKENde su entorno, expórtalo en la shell desde la que ejecutasclaude, o pásalo explícitamente:claude mcp add github-repos --env GITHUB_TOKEN=github_pat_xxxxxxxxxxxx -- python3 /absolute/path/to/github-mcp-server/server.pyVerifica que está conectado:
claude mcp listDeberías ver
github-reposlistado como conectado. Luego, en una sesión de Claude Code puedes pedir cosas como "lista mis repositorios" o "lee el README de mi repositorio flight-delay-prediction" y Claude llamará a estas herramientas.
Prueba de humo local (sin un cliente)
python3 -c "
import os
os.environ['GITHUB_TOKEN'] = 'github_pat_xxx'
from server import list_repos
print(list_repos())
"Notas / próximos pasos
Límites de solicitudes: las solicitudes autenticadas obtienen 5,000 por hora desde la API REST de GitHub, suficiente para uso interactivo.
Si más adelante quieres acceso de escritura (abrir issues, comentar en PRs), añade nuevas funciones
@mcp.tool()usandorequests.post/patch; mantenlas separadas y con nombres claros para que siga siendo obvio qué herramientas modifican el estado de GitHub.Si quieres que esto sea accesible desde claude.ai/Cowork (no solo desde Claude Code CLI/VS Code), necesita pasar de transporte stdio a un servidor HTTP alojado con OAuth: un paso considerablemente mayor, solo vale la pena si necesitas ese alcance.
This server cannot be deployed
Maintenance
Related MCP Connectors
Access the GitHub API, enabling file operations, repository management, search functionality, and…
GitHub MCP — wraps the GitHub public REST API (no auth required for public endpoints)
GitHub Private MCP Pack — access private repos, org data via OAuth.
An MCP server that gives your AI access to the source code and docs of all public github repos
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables GitHub API integration via MCP, allowing search, repository details, file contents, and issue management.251 npmISC
- FlicenseNot gradedqualityDmaintenanceEnables managing GitHub repositories, files, and user information through MCP, with support for creating, updating, and deleting repository contents, as well as fetching user profiles.1-
- FlicenseNot gradedqualityDmaintenanceEnables natural language interaction with GitHub through an MCP server. Supports reading repos, issues, and PRs, as well as creating and editing issues with user confirmation.-
- AlicenseNot gradedqualityBmaintenanceEnables searching GitHub code with filters and reading arbitrary file contents from any repository via MCP.GPL 3.0