GitHub
Manage GitHub repositories using a personal access token via CLI or environment variables.
GitHub MCP Server
A Model Context Protocol (MCP) server that provides comprehensive GitHub repository operations through a simple CLI interface.
Features
- 🔍 Repository exploration and file content retrieval
- 📄 README and file content access
- 🔎 Code search within repositories
- 📋 Issues and pull requests management
- 🌿 Branch and commit information
- 👤 User information lookup
- 🚀 Rate limiting and error handling
- 📦 Easy npx installation
Installation & Usage
Quick Start (Recommended)
# Run directly with npx (no installation needed)
npx @ildunari/github-mcp-server --github-token YOUR_GITHUB_TOKEN
# Or use environment variable
export GITHUB_TOKEN=your_token_here
npx @ildunari/github-mcp-server --github-token $GITHUB_TOKEN
Global Installation
npm install -g @ildunari/github-mcp-server
@ildunari/github-mcp-server --github-token YOUR_GITHUB_TOKEN
GitHub Token Setup
-
Go to GitHub Settings → Developer settings → Personal access tokens
-
Generate a new token (classic) with these scopes:
repo(for private repositories)public_repo(for public repositories)read:user(for user information)
-
Use the token with the CLI:
npx @ildunari/github-mcp-server --github-token ghp_your_token_here
Available Tools
Repository Operations
github_repo_info- Get repository informationgithub_list_contents- List directory contentsgithub_get_file_content- Get file contentgithub_get_readme- Get repository READMEgithub_search_code- Search code in repository
Issues & Pull Requests
github_list_issues- List repository issuesgithub_get_issue- Get specific issue detailsgithub_list_pulls- List pull requestsgithub_get_pull- Get specific pull request details
Repository Management
github_list_branches- List repository branchesgithub_user_info- Get user information
CLI Options
Options:
-t, --github-token GitHub access token for API requests [required]
-r, --rate-limit Rate limit delay in ms between requests [default: 100]
-h, --help Show help
Examples
Basic Usage
# Start the MCP server
npx @ildunari/github-mcp-server --github-token YOUR_TOKEN
# The server will run on stdio and accept MCP requests
With Custom Rate Limiting
# Slower rate limiting (500ms between requests)
npx @ildunari/github-mcp-server --github-token YOUR_TOKEN --rate-limit 500
MCP Client Configuration
For use with Claude Desktop or other MCP clients:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["@ildunari/github-mcp-server", "--github-token", "YOUR_GITHUB_TOKEN"]
}
}
}
Response Formats
All tools support two detail levels:
summary(default) - Condensed informationdetailed- Full API response
Example tool call:
{
"name": "github_repo_info",
"arguments": {
"repo_url": "https://github.com/microsoft/vscode",
"detail_level": "summary"
}
}
Error Handling
The server includes comprehensive error handling for:
- Invalid GitHub URLs
- API rate limits
- Authentication errors
- Network issues
- File encoding problems
License
MIT License
Author
ildunari
Contributing
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
Related Servers
GitKraken
A CLI for interacting with GitKraken APIs. Includes an MCP server via `gk mcp` that not only wraps GitKraken APIs, but also Jira, GitHub, GitLab, and more.
GitLab CLI MCP Server
Seamlessly integrate AI assistants with GitLab using the glab CLI tool.
MCP GitHub Project Manager
Manage GitHub projects with requirements traceability and advanced workflows.
Bitbucket
Access the Bitbucket Cloud API for automation, CI/CD pipelines, and integrations.
GitHub Kanban MCP Server
Manage GitHub issues as a Kanban board using the gh CLI.
GitLab
Manage GitLab projects, files, and repositories using the GitLab API.
MCP Git Repo Browser
A server for browsing and interacting with local Git repositories.
Obsidian GitHub MCP
Connects AI assistants to Obsidian vaults stored in GitHub repositories, enabling them to read, search, and analyze your notes and documentation.
Bitbucket MCP Server
An MCP server for Bitbucket that provides pull request context to LLMs for automated code reviews.
Git
Tools to read, search, and manipulate Git repositories