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
MCP PR Messages Generator
Generates Pull Request messages based on Git commits and changes.
GitHub PR & Issue Analyser
Analyze GitHub pull requests and manage issues, tags, and releases.
GitLab
Manage GitLab projects, files, and repositories using the GitLab API.
GitLab
Integrates with the GitLab REST API to manage repositories, issues, and merge requests.
Better GitLab MCP Server
An improved GitLab MCP server with bug fixes and enhancements for accessing GitLab resources.
Ares DevOps
Perform Git operations on Azure DevOps repositories using a Personal Access Token (PAT).
Custom GitLab
A custom GitLab server for interacting with repositories, issues, and merge requests. Requires a GitLab Personal Access Token.
MCP GitHub Enterprise
Query GitHub Enterprise license data, including summaries, per-user details, organization memberships, and enterprise roles.
Forgejo MCP Server
Manage Forgejo repositories and execute commands through an MCP-compatible chat interface.
MCP GitHub Project Manager
AI-powered GitHub project management with complete requirements traceability.