MCP server for browsing public GitHub repositories from Claude.ai. Uses Streamable HTTP transport — you deploy it once to a hosting platform, then connect Claude.ai to the URL.
No GitHub token required. All 7 tools work against public repos out of the box.
| Tool | Description |
|---|---|
github_get_repo |
Full metadata for a single repo |
github_list_user_repos |
Paginated list of a user/org's repos |
github_search_repos |
Search with GitHub query syntax |
github_list_branches |
Branch names, SHAs, protection status |
github_list_commits |
Commits filterable by path, author, date |
github_get_file |
Read a file or list a directory |
github_get_tree |
Full recursive file tree |
Railway is the easiest zero-config option.
- Push this folder to a GitHub repo (or fork it)
- Go to railway.app → New Project → Deploy from GitHub repo
- Select your repo — Railway auto-detects Node and runs
npm run build && npm start - Once deployed, copy the public URL (e.g.
https://github-mcp-server-production.up.railway.app)
- New Web Service → Connect your GitHub repo
- Build command:
npm install && npm run build - Start command:
npm start - Copy the public URL
npm install
npm run build
fly launch # follow prompts
fly deploy
fly status # get your app URL- Go to claude.ai → Settings → Integrations
- Click Add Integration
- Enter your deployed URL with
/mcpappended:https://your-app-url.railway.app/mcp - Click Save — Claude will detect and list all 7 tools automatically
npm install
npm run build
npm start
# Server runs at http://localhost:3000
# Test: curl http://localhost:3000/healthUse MCP Inspector to test tools locally:
npx @modelcontextprotocol/inspector http://localhost:3000/mcpSet GITHUB_TOKEN as an environment variable on your hosting platform, then update
src/services/github.ts to include it in the Authorization header:
"Authorization": process.env.GITHUB_TOKEN ? `Bearer ${process.env.GITHUB_TOKEN}` : "",On Railway: Settings → Variables → Add GITHUB_TOKEN = ghp_your_token_here
| Claude Code version | Claude.ai version (this file) | |
|---|---|---|
| Transport | stdio (local process) | Streamable HTTP (remote server) |
| Hosting | Runs on your machine | Deployed to Railway / Render / Fly |
| Config | claude_desktop_config.json |
Claude.ai Settings → Integrations |
| Tools | Identical 7 tools | Identical 7 tools |