github-repos
Provides read-only access to GitHub repositories, enabling listing repos, retrieving repo metadata, browsing file trees, reading file contents, fetching READMEs, searching code, and viewing commit history.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@github-reposlist my repositories"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
github-mcp-server
A minimal, read-only MCP server exposing your GitHub repos to Claude Code (or any MCP-compatible client) over stdio.
Tools it exposes
list_repos(owner?, include_forks?, limit?)- list your repos (or another owner's public repos)get_repo_info(owner, repo)- metadata for one repolist_directory(owner, repo, path?, ref?)- browse a repo's file treeread_file(owner, repo, path, ref?, max_bytes?)- read a text file's contentsget_readme(owner, repo, ref?)- fetch a repo's READMEsearch_code(query, owner?, repo?, limit?)- search code (optionally scoped to your repos)list_commits(owner, repo, path?, limit?)- recent commit history
Everything is read-only - no write, create, or delete endpoints are exposed.
Related MCP server: GitHub MCP Server
Setup
Create a GitHub Personal Access Token (fine-grained, recommended): GitHub -> Settings -> Developer settings -> Personal access tokens -> Fine-grained tokens -> Generate new token.
Repository access: select the repos you want Claude to read (or "All repositories")
Permissions: Contents: Read-only, Metadata: Read-only (add Code search: Read-only if you want
search_codeto work)
Install dependencies:
cd github-mcp-server python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txtSet the token (don't hardcode it in the script or commit it anywhere):
export GITHUB_TOKEN=github_pat_xxxxxxxxxxxxFor persistence, add that line to your
~/.zshrc/~/.bashrc, or use a.envfile with a tool likedirenv- just make sure it's gitignored.Register the server with Claude Code CLI:
claude mcp add github-repos -- python3 /absolute/path/to/github-mcp-server/server.py(If you used a venv, point at the venv's python:
/absolute/path/to/github-mcp-server/.venv/bin/python3)Since the server reads
GITHUB_TOKENfrom its environment, either export it in the shell you runclaudefrom, or pass it explicitly:claude mcp add github-repos --env GITHUB_TOKEN=github_pat_xxxxxxxxxxxx -- python3 /absolute/path/to/github-mcp-server/server.pyVerify it's connected:
claude mcp listYou should see
github-reposlisted as connected. Then in a Claude Code session you can ask things like "list my repos" or "read the README of my flight-delay-prediction repo" and Claude will call these tools.
Local smoke test (without a client)
python3 -c "
import os
os.environ['GITHUB_TOKEN'] = 'github_pat_xxx'
from server import list_repos
print(list_repos())
"Notes / next steps
Rate limits: authenticated requests get 5,000/hour from GitHub's REST API, fine for interactive use.
If you later want write access (opening issues, commenting on PRs), add new
@mcp.tool()functions usingrequests.post/patch- keep them separate and clearly named so it stays obvious which tools mutate GitHub state.If you want this reachable from claude.ai/Cowork (not just Claude Code CLI/VS Code), it needs to move from stdio transport to a hosted HTTP server with OAuth - a materially bigger step, only worth it if you need that reach.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceRead-only GitHub MCP server that lets assistants search and read repositories, issues, pull requests, commits, and file contents, scoped to the user's personal access token.MIT
- AlicenseNot gradedqualityDmaintenanceEnables GitHub API integration via MCP, allowing search, repository details, file contents, and issue management.452ISC
- 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 gradedqualityCmaintenanceEnables 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.
Related MCP Connectors
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
Turn a GitHub repo or docs site into agent-ready context: pack it or search it, over MCP.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/VishalBasker/github-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server