mcp-server-github
A Model Context Protocol (MCP) server that enables AI assistants like Claude to interact with the GitHub API directly.
README
mcp-server-github
A Model Context Protocol (MCP) server that enables AI assistants like Claude to interact with the GitHub API directly.
🚀 Features
- Issues Management - List, create, update, and comment on issues
- Pull Requests - Create PRs, review code, merge changes
- Repository Operations - Search repos, get file contents, commit files
- Code Search - Search code across GitHub
- Notifications - List and manage your GitHub notifications
- User Profiles - Get user and organization info
📦 Installation
npm install -g mcp-server-github
Or use directly with npx:
npx mcp-server-github
⚙️ Configuration
1. Get a GitHub Token
Create a Personal Access Token with the following scopes:
repo- Full control of private repositoriesread:user- Read user profile datanotifications- Access notifications
2. Set Environment Variable
export GITHUB_TOKEN=your_token_here
# or
export GH_TOKEN=your_token_here
3. Configure Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "mcp-server-github"],
"env": {
"GITHUB_TOKEN": "your_token_here"
}
}
}
}
🛠️ Available Tools
Issues
| Tool | Description |
|---|---|
list_issues |
List issues in a repository |
get_issue |
Get a specific issue by number |
create_issue |
Create a new issue |
update_issue |
Update an existing issue |
add_issue_comment |
Add a comment to an issue |
Pull Requests
| Tool | Description |
|---|---|
list_pull_requests |
List PRs in a repository |
get_pull_request |
Get a specific PR |
create_pull_request |
Create a new PR |
create_review |
Review a PR (approve/request changes) |
merge_pull_request |
Merge a PR |
Repository
| Tool | Description |
|---|---|
get_repository |
Get repository information |
list_repositories |
List user/org repositories |
search_repositories |
Search for repositories |
get_file_contents |
Get file contents |
create_or_update_file |
Create or update a file |
Code Search
| Tool | Description |
|---|---|
search_code |
Search code across GitHub |
Notifications
| Tool | Description |
|---|---|
list_notifications |
List notifications |
mark_notifications_read |
Mark all as read |
User
| Tool | Description |
|---|---|
get_authenticated_user |
Get your profile |
get_user |
Get any user's profile |
💡 Usage Examples
Once configured, you can ask Claude:
"List all open issues in my project"
"Create a PR from feature-branch to main with a summary of changes"
"Search for TypeScript files containing 'authentication' in my repos"
"Show me my unread GitHub notifications"
💎 Pro Features
Take your GitHub integration to the next level with Pro features:
🏢 Pro Plan
- Organization-wide Permissions - Manage permissions across all org repos
- Webhook Support - Real-time event notifications and custom endpoints
- Advanced Search - Search across organizations with filters and analytics
- Priority Support - Direct support channel
🏗️ Enterprise Plan
- Everything in Pro, plus:
- Self-hosted Deployment - Run on your own infrastructure
- SSO/SAML Integration - Enterprise authentication
- Audit Logs - Complete activity tracking
- Custom Integrations - Tailored to your workflow
- SLA Guarantee - 99.9% uptime commitment
💖 Support Development
If you find this project useful, consider becoming a sponsor!
Your sponsorship helps:
- Maintain and improve the project
- Add new features
- Provide better documentation
- Keep it free and open source
🔧 Development
# Clone the repo
git clone https://github.com/DebuggingMax/mcp-server-github.git
cd mcp-server-github
# Install dependencies
npm install
# Build
npm run build
# Run locally
npm start
📝 License
MIT License - see LICENSE for details.
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Made with ❤️ by DebuggingMax
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.