GitHub Official

GitHub Official

Official GitHub MCP Server, by GitHub. Provides seamless integration with GitHub APIs, enabling advanced automation and interaction capabilities for developers and tools.

80 Tools

Requires Secrets
Add to Docker Desktop

Version 4.43 or later needs to be installed to add the server automatically

Tools

NameDescription
add_comment_to_pending_reviewAdd review comment to the requester's latest pending pull request review. A pending review needs to already exist to call this (check with the user if not sure).
add_issue_commentAdd a comment to a specific issue in a GitHub repository.
add_sub_issueAdd a sub-issue to a parent issue in a GitHub repository.
assign_copilot_to_issueAssign Copilot to a specific issue in a GitHub repository. This tool can help with the following outcomes: - a Pull Request created with source code changes to resolve the issue More information can be found at: - https://docs.github.com/en/copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/about-assigning-tasks-to-copilot
cancel_workflow_runCancel a workflow run
create_and_submit_pull_request_reviewCreate and submit a review for a pull request without review comments.
create_branchCreate a new branch in a GitHub repository
create_gistCreate a new gist
create_issueCreate a new issue in a GitHub repository.
create_or_update_fileCreate or update a single file in a GitHub repository. If updating, you must provide the SHA of the file you want to update. Use this tool to create or update a file in a GitHub repository remotely; do not use it for local file operations.
create_pending_pull_request_reviewCreate a pending review for a pull request. Call this first before attempting to add comments to a pending review, and ultimately submitting it. A pending pull request review means a pull request review, it is pending because you create it first and submit it later, and the PR author will not see it until it is submitted.
create_pull_requestCreate a new pull request in a GitHub repository.
create_repositoryCreate a new GitHub repository in your account
delete_fileDelete a file from a GitHub repository
delete_pending_pull_request_reviewDelete the requester's latest pending pull request review. Use this after the user decides not to submit a pending review, if you don't know if they already created one then check first.
delete_workflow_run_logsDelete logs for a workflow run
dismiss_notificationDismiss a notification by marking it as read or done
download_workflow_run_artifactGet download URL for a workflow run artifact
fork_repositoryFork a GitHub repository to your account or specified organization
get_code_scanning_alertGet details of a specific code scanning alert in a GitHub repository.
get_commitGet details for a commit from a GitHub repository
get_dependabot_alertGet details of a specific dependabot alert in a GitHub repository.
get_discussionGet a specific discussion by ID
get_discussion_commentsGet comments from a discussion
get_file_contentsGet the contents of a file or directory from a GitHub repository
get_issueGet details of a specific issue in a GitHub repository.
get_issue_commentsGet comments for a specific issue in a GitHub repository.
get_job_logsDownload logs for a specific workflow job or efficiently get all failed job logs for a workflow run
get_meGet details of the authenticated GitHub user. Use this when a request is about the user's own profile for GitHub. Or when information is missing to build other tool calls.
get_notification_detailsGet detailed information for a specific GitHub notification, always call this tool when the user asks for details about a specific notification, if you don't know the ID list notifications first.
get_pull_requestGet details of a specific pull request in a GitHub repository.
get_pull_request_commentsGet comments for a specific pull request.
get_pull_request_diffGet the diff of a pull request.
get_pull_request_filesGet the files changed in a specific pull request.
get_pull_request_reviewsGet reviews for a specific pull request.
get_pull_request_statusGet the status of a specific pull request.
get_secret_scanning_alertGet details of a specific secret scanning alert in a GitHub repository.
get_tagGet details about a specific git tag in a GitHub repository
get_workflow_runGet details of a specific workflow run
get_workflow_run_logsDownload logs for a specific workflow run (EXPENSIVE: downloads ALL logs as ZIP. Consider using get_job_logs with failed_only=true for debugging failed jobs)
get_workflow_run_usageGet usage metrics for a workflow run
list_branchesList branches in a GitHub repository
list_code_scanning_alertsList code scanning alerts in a GitHub repository.
list_commitsGet list of commits of a branch in a GitHub repository. Returns at least 30 results per page by default, but can return more if specified using the perPage parameter (up to 100).
list_dependabot_alertsList dependabot alerts in a GitHub repository.
list_discussion_categoriesList discussion categories with their id and name, for a repository
list_discussionsList discussions for a repository or organisation.
list_gistsList gists for a user
list_issuesList issues in a GitHub repository.
list_notificationsLists all GitHub notifications for the authenticated user, including unread notifications, mentions, review requests, assignments, and updates on issues or pull requests. Use this tool whenever the user asks what to work on next, requests a summary of their GitHub activity, wants to see pending reviews, or needs to check for new updates or tasks. This tool is the primary way to discover actionable items, reminders, and outstanding work on GitHub. Always call this tool when asked what to work on next, what is pending, or what needs attention in GitHub.
list_pull_requestsList pull requests in a GitHub repository. If the user specifies an author, then DO NOT use this tool and use the search_pull_requests tool instead.
list_secret_scanning_alertsList secret scanning alerts in a GitHub repository.
list_sub_issuesList sub-issues for a specific issue in a GitHub repository.
list_tagsList git tags in a GitHub repository
list_workflow_jobsList jobs for a specific workflow run
list_workflow_run_artifactsList artifacts for a workflow run
list_workflow_runsList workflow runs for a specific workflow
list_workflowsList workflows in a repository
manage_notification_subscriptionManage a notification subscription: ignore, watch, or delete a notification thread subscription.
manage_repository_notification_subscriptionManage a repository notification subscription: ignore, watch, or delete repository notifications subscription for the provided repository.
mark_all_notifications_readMark all notifications as read
merge_pull_requestMerge a pull request in a GitHub repository.
push_filesPush multiple files to a GitHub repository in a single commit
remove_sub_issueRemove a sub-issue from a parent issue in a GitHub repository.
reprioritize_sub_issueReprioritize a sub-issue to a different position in the parent issue's sub-issue list.
request_copilot_reviewRequest a GitHub Copilot code review for a pull request. Use this for automated feedback on pull requests, usually before requesting a human reviewer.
rerun_failed_jobsRe-run only the failed jobs in a workflow run
rerun_workflow_runRe-run an entire workflow run
run_workflowRun an Actions workflow by workflow ID or filename
search_codeFast and precise code search across ALL GitHub repositories using GitHub's native search engine. Best for finding exact symbols, functions, classes, or specific code patterns.
search_issuesSearch for issues in GitHub repositories using issues search syntax already scoped to is:issue
search_orgsFind GitHub organizations by name, location, or other organization metadata. Ideal for discovering companies, open source foundations, or teams.
search_pull_requestsSearch for pull requests in GitHub repositories using issues search syntax already scoped to is:pr
search_repositoriesFind GitHub repositories by name, description, readme, topics, or other metadata. Perfect for discovering projects, finding examples, or locating specific repositories across GitHub.
search_usersFind GitHub users by username, real name, or other profile information. Useful for locating developers, contributors, or team members.
submit_pending_pull_request_reviewSubmit the requester's latest pending pull request review, normally this is a final step after creating a pending review, adding comments first, unless you know that the user already did the first two steps, you should check before calling this.
update_gistUpdate an existing gist
update_issueUpdate an existing issue in a GitHub repository.
update_pull_requestUpdate an existing pull request in a GitHub repository.
update_pull_request_branchUpdate the branch of a pull request with the latest changes from the base branch.

Manual installation

You can install the MCP server using:

Installation for

Related servers