GitHub MCP for AI agents
Agents read GitHub MCP at once. Changes and sends are held for a person's approval by default.
About GitHub MCP
GitHub MCP lets agents work with repositories, issues, pull requests, users, actions, projects, notifications, code security, and other authorized GitHub surfaces.
What an agent can do in GitHub MCP
Every GitHub MCP action is classed by the platform as a read, a change or a send. Reads run at once. Changes and sends are held for a person by default.
Runs at once (reads)
Looks things up in GitHub MCP without asking first. 27 actions.
- Get commitGet details for a commit from a GitHub repository
- Get file contentsGet the contents of a file or directory from a GitHub repository
- Get labelGet a specific label from a repository.
- Get latest releaseGet the latest release in a GitHub repository
- 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 release by tagGet a specific release by its tag name in a GitHub repository
- Get tagGet details about a specific git tag in a GitHub repository
- Get team membersGet member usernames of a specific team in an organization. Limited to organizations accessible with current credentials
- Get teamsGet details of the teams the user is a member of. Limited to organizations accessible with current credentials
- Issue readGet information about a specific issue in a GitHub repository.
- List branchesList branches 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).
Show all 27
- List issue fieldsList issue fields for a repository or organization. Returns field definitions including name, type (text, number, date, single_select), and for single_select fields the list of valid option names. Whe
- List issuesList issues in a GitHub repository. For pagination, use the 'endCursor' from the previous response's 'pageInfo' in the 'after' parameter.
- List issue typesList supported issue types for a repository or its owner organization. When repo is omitted, returns org-level issue types directly.
- 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 releasesList releases in a GitHub repository
- List repository collaboratorsList collaborators of a GitHub repository. Results are paginated; the response includes `nextPage`, `prevPage`, `firstPage`, and `lastPage` fields. To get the next page, use the `nextPage` value as th
- List tagsList git tags in a GitHub repository
- Pull request readGet information on a specific pull request in GitHub repository.
- Run secret scanningScan files, content, or recent changes for secrets such as API keys, passwords, tokens, and credentials. This tool is intended for targeted scans of specific files, snippets, or diffs provided directl
- 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 commitsSearch for commits across GitHub repositories using GitHub's commit search syntax. Useful for finding specific changes, authors, or messages across one or many repositories. Searches the default branc
- Search issuesSearch issues using natural-language semantic matching. Best for conceptual or paraphrased queries (e.g. "login fails after password reset"). Already scoped to is:issue.
- 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.
Held for approval by default (changes and sends)
Held for a person's approval by default. The approval is recorded and the action is sent once, never twice, with 10 seconds to undo. 17 actions.
- 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 and/or reaction to a specific issue or issue comment in a GitHub repository. Use this tool with pull requests as well (in this case pass pull request number as issue_number), but only if
- Add reply to pull request commentAdd a reply and/or reaction to an existing pull request comment. This can create a new comment linked as a reply to the specified comment, add an emoji reaction to the specified comment, or do both. A
- Create branchCreate a new branch in a GitHub repository
- Create or update fileCreate or update a single file in a GitHub repository. If updating, you should provide the SHA of the file you want to update. Use this tool to create or update a file in a GitHub repository remotely;
- Create pull requestCreate a new pull request in a GitHub repository.
- Create repositoryCreate a new GitHub repository in your account or specified organization
- Delete fileDelete a file from a GitHub repository
- Fork repositoryFork a GitHub repository to your account or specified organization
- Issue writeCreate a new or update an existing issue in a GitHub repository.
- Merge pull requestMerge a pull request in a GitHub repository.
- Pull request review writeCreate and/or submit, delete review of a pull request. Available methods: - create: Create a new review of a pull request. If "event" parameter is provided, the review is submitted. If "event" is omit
Show all 17
- Push filesPush multiple files to a GitHub repository in a single commit
- 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.
- Sub issue writeAdd a sub-issue to a parent 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.
Changes wait in Needs you
Changes and sends in GitHub MCP are held for a person's approval by default. The approval is recorded, and the action is sent once, never twice, with 10 seconds to undo.
GitHub MCP questions
Can an agent change data in GitHub MCP on its own?
Not by default. Changes and sends in GitHub MCP are held for a person's approval. The approval is recorded, and the action is sent once, never twice, with 10 seconds to undo.
What can an agent read in GitHub MCP?
This connector lists 27 read actions. Reads run at once, without waiting for approval.
How does GitHub MCP connect?
It connects with API key. Connectors are built and maintained by third-party developers; availability is confirmed during scoping.