github-repos
github-mcp-server
Ein minimaler, schreibgeschützter MCP-Server, der deine GitHub-Repos über stdio für Claude Code (oder jeden MCP-kompatiblen Client) bereitstellt.
Bereitgestellte Tools
list_repos(owner?, include_forks?, limit?)- listet deine Repos (oder die öffentlichen Repos eines anderen Besitzers) aufget_repo_info(owner, repo)- Metadaten für ein Repolist_directory(owner, repo, path?, ref?)- durchsucht den Dateibaum eines Reposread_file(owner, repo, path, ref?, max_bytes?)- liest den Inhalt einer Textdateiget_readme(owner, repo, ref?)- ruft die README eines Repos absearch_code(query, owner?, repo?, limit?)- durchsucht Code (optional auf deine Repos beschränkt)list_commits(owner, repo, path?, limit?)- listet die letzten Commits auf
Alles ist schreibgeschützt – es werden keine Schreib-, Erstell- oder Lösch-Endpunkte bereitgestellt.
Related MCP server: github-mcp-tool
Einrichtung
Erstelle einen GitHub Personal Access Token (feingranular, empfohlen): GitHub -> Settings -> Developer settings -> Personal access tokens -> Fine-grained tokens -> Generate new token.
Repository access: Wähle die Repos aus, die Claude lesen soll (oder „All repositories")
Permissions: Contents: Read-only, Metadata: Read-only (füge Code search: Read-only hinzu, wenn du
search_codeverwenden möchtest)
Abhängigkeiten installieren:
cd github-mcp-server python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txtToken setzen (baue es nicht fest ins Skript ein und committe es nicht irgendwo):
export GITHUB_TOKEN=github_pat_xxxxxxxxxxxxFür die dauerhafte Speicherung füge diese Zeile zu deiner
~/.zshrc/~/.bashrchinzu oder verwende eine.env-Datei mit einem Tool wiedirenv– stelle nur sicher, dass sie gitignored ist.Registriere den Server mit der Claude Code CLI:
claude mcp add github-repos -- python3 /absolute/path/to/github-mcp-server/server.py(Wenn du ein venv verwendet hast, zeige auf das Python des venv:
/absolute/path/to/github-mcp-server/.venv/bin/python3)Da der Server
GITHUB_TOKENaus seiner Umgebung liest, exportiere es entweder in der Shell, aus der duclaudeausführst, oder übergib es explizit:claude mcp add github-repos --env GITHUB_TOKEN=github_pat_xxxxxxxxxxxx -- python3 /absolute/path/to/github-mcp-server/server.pyÜberprüfe, ob es verbunden ist:
claude mcp listDu solltest
github-reposals verbunden aufgelistet sehen. In einer Claude-Code-Sitzung kannst du dann Dinge fragen wie „liste meine Repos auf“ oder „lies die README meines flight-delay-prediction-Repos“ und Claude wird diese Tools aufrufen.
Lokaler Smoke-Test (ohne Client)
python3 -c "
import os
os.environ['GITHUB_TOKEN'] = 'github_pat_xxx'
from server import list_repos
print(list_repos())
"Hinweise / nächste Schritte
Rate-Limits: authentifizierte Anfragen erhalten 5.000/Stunde von der GitHub-REST-API, das reicht für interaktive Nutzung.
Wenn du später Schreibzugriff möchtest (Issues öffnen, PRs kommentieren), füge neue
@mcp.tool()-Funktionen mitrequests.post/patchhinzu – halte sie getrennt und klar benannt, damit offensichtlich bleibt, welche Tools den GitHub-Zustand verändern.Wenn du dies von claude.ai/Cowork aus erreichbar machen möchtest (nicht nur Claude Code CLI/VS Code), muss es von stdio-Transport auf einen gehosteten HTTP-Server mit OAuth umgestellt werden – ein wesentlich größerer Schritt, der sich nur lohnt, wenn du diese Reichweite benötigst.
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