GitHub MCP Server
A Model Context Protocol (MCP) server for seamless integration with the GitHub API, providing advanced automation and interaction capabilities for developers and AI tools.
Unlock the Full Potential of GitHub
Connect your AI agents and development tools directly to the GitHub ecosystem for powerful automation workflows.
Automate Workflows
Automate repetitive GitHub tasks, from issue management to pull request reviews and repository maintenance.
Analyze Data
Extract and analyze valuable data from repositories, commits, issues, and user activity for insights.
Build AI Tools
Create intelligent applications and agents that interact with the GitHub ecosystem in novel ways.
Quick Start
Integrate the server with your favorite tools. You'll need Docker installed and a GitHub Personal Access Token with the required permissions.
Manual Installation
Add the following JSON to your user settings file (Ctrl+Shift+P -> `Preferences: Open User Settings (JSON)`).
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "github_token",
"description": "GitHub Personal Access Token",
"password": true
}
],
"servers": {
"github": {
"command": "docker",
"args": [ "run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "ghcr.io/github/github-mcp-server" ],
"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}" }
}
}
}
}
Comprehensive Tool API for Github MCP Server
A rich set of tools to interact with every aspect of GitHub, from repositories and issues to security alerts and user management.
Users
get_me
Get detailed information for the authenticated user.
No parameters
search_users
Search for GitHub users.
Issues
get_issue
Get detailed content of an issue in a repository.
create_issue
Create a new issue in a GitHub repository.
list_issues
List and filter repository issues.
update_issue
Update an existing issue.
Pull Requests
get_pull_request
Get detailed information for a specific pull request.
create_pull_request
Create a new pull request.
merge_pull_request
Merge a pull request.
list_pull_requests
List and filter a repository's pull requests.
Repositories
get_file_contents
Get the contents of a file or directory.
create_or_update_file
Create or update a single file in a repository.
list_branches
List branches in a GitHub repository.
create_branch
Create a new branch.
Code & Secret Scanning
list_code_scanning_alerts
List code scanning alerts for a repository.
list_secret_scanning_alerts
List secret scanning alerts for a repository.
Notifications
list_notifications
List notifications for a GitHub user.
mark_all_notifications_read
Mark all notifications as read.