GitHub MCP Server
Provides tools for interacting with GitHub API, enabling management of repositories, commits, and branches.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@GitHub MCP Serverlist my repositories"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
GitHub MCP Server
A Model Context Protocol server for interacting with the GitHub API.
Features
Tools
list_user_repos: List repositories for the authenticated userParameters:
type(optional): "owner", "all", or "member" (default: "owner")sort(optional): "created", "updated", "pushed", or "full_name" (default: "full_name")direction(optional): "asc" or "desc" (default: "asc")per_page(optional): Number of results per page (default: 30, max: 100)page(optional): Page number (default: 1)
get_repo: Get details about a specific repositoryParameters:
repo(required): The name of the repositoryowner(optional): The account owner. If not provided, uses authenticated user.
create_repo: Create a new repositoryParameters:
name(required): The name of the repositorydescription(optional): A short descriptionprivate(optional): Whether the repository is private (default: false)auto_init(optional): Create initial commit with empty README (default: false)
create_commit: Create a new commit with file changesParameters:
repo(required): The name of the repositoryowner(optional): The account owner. If not provided, uses authenticated user.branch(optional): The branch name (default: "main")message(required): The commit messagefiles(required): Array of files to include in commitEach file requires:
path: File path relative to repository rootcontent: File content
push: Push changes to a remote repositoryParameters:
repo(required): The name of the repositoryowner(optional): The account owner. If not provided, uses authenticated user.branch(optional): The branch name (default: "main")
pull: Pull changes from a remote repositoryParameters:
repo(required): The name of the repositoryowner(optional): The account owner. If not provided, uses authenticated user.branch(required): The branch name
Related MCP server: GitHub Enterprise MCP Server
Requirements
Node.js 18+
GitHub personal access token with appropriate permissions
Set
GITHUB_TOKENenvironment variable
Installation
npm install
npm run buildConfiguration
Set your GitHub token as an environment variable:
export GITHUB_TOKEN=your_token_hereUsage
Run the server:
npm startDevelopment
For development with auto-rebuild:
npm run watchDebugging
Use the MCP Inspector:
npm run inspectorThis server cannot be deployed
Maintenance
Related MCP Connectors
Access the GitHub API, enabling file operations, repository management, search functionality, and…
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Manage repositories, users, releases, and automate GitHub workflows
Ask any GitHub repository a question. Get source-backed answers.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables comprehensive GitHub operations through natural language including file management, repository administration, issue tracking, and advanced code searching.4746 npm1MIT
- AlicenseBqualityDmaintenanceEnables interaction with GitHub repositories through the GitHub API, allowing file operations, repository management, issue tracking, and code search through natural language commands.336 npm4MIT
- FlicenseNot gradedqualityDmaintenanceEnables users to interact with GitHub via natural language requests, executing API calls and returning structured responses.-
- AlicenseNot gradedqualityDmaintenanceEnables comprehensive interaction with the GitHub API for managing repositories, issues, pull requests, commits, and GitHub Actions workflows through natural language.48 npmMIT