▶ GitHub 44 tools · 24 granted
add_comment_to_pending_review
HIGH
needs approval
Add 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_comment
HIGH
needs approval
Add 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 user is not asking specifically to add or react to review comments. At least one of body or reaction is required.
add_reply_to_pull_request_comment
HIGH
needs approval
Add 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. At least one of body or reaction is required.
create_branch
HIGH
needs approval
Create a new branch in a GitHub repository
create_or_update_file
HIGH
needs approval
Create 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; do not use it for local file operations.
In order to obtain the SHA of original file version before updating, use the following git command:
git rev-parse <branch>:<path to file>
SHA MUST be provided for existing file updates.
create_pull_request
HIGH
needs approval
Create a new pull request in a GitHub repository.
create_repository
HIGH
needs approval
Create a new GitHub repository in your account or specified organization
delete_file
HIGH
needs approval
Delete a file from a GitHub repository
fork_repository
HIGH
needs approval
Fork a GitHub repository to your account or specified organization
get_commit
LOW
auto-run
Get details for a commit from a GitHub repository
get_file_contents
LOW
auto-run
Get the contents of a file or directory from a GitHub repository
get_label
LOW
auto-run
Get a specific label from a repository.
get_latest_release
LOW
auto-run
Get the latest release in a GitHub repository
get_me
LOW
auto-run
Get 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_tag
LOW
auto-run
Get a specific release by its tag name in a GitHub repository
get_tag
LOW
auto-run
Get details about a specific git tag in a GitHub repository
get_team_members
LOW
auto-run
Get member usernames of a specific team in an organization. Limited to organizations accessible with current credentials
get_teams
LOW
auto-run
Get details of the teams the user is a member of. Limited to organizations accessible with current credentials
issue_read
HIGH
needs approval
Get information about a specific issue in a GitHub repository.
issue_write
HIGH
needs approval
Create a new or update an existing issue in a GitHub repository.
list_branches
LOW
auto-run
List branches in a GitHub repository
list_commits
LOW
auto-run
Get 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_issue_fields
LOW
auto-run
List 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. When repo is omitted, returns org-level fields directly.
list_issue_types
LOW
auto-run
List supported issue types for a repository or its owner organization. When repo is omitted, returns org-level issue types directly.
list_issues
LOW
auto-run
List issues in a GitHub repository. For pagination, use the 'endCursor' from the previous response's 'pageInfo' in the 'after' parameter.
list_pull_requests
LOW
auto-run
List 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_releases
LOW
auto-run
List releases in a GitHub repository
list_repository_collaborators
LOW
auto-run
List 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 the `page` parameter.
list_tags
LOW
auto-run
List git tags in a GitHub repository
merge_pull_request
HIGH
needs approval
Merge a pull request in a GitHub repository.
pull_request_read
HIGH
needs approval
Get information on a specific pull request in GitHub repository.
pull_request_review_write
HIGH
needs approval
Create 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 omitted, a pending review is created.
- submit_pending: Submit an existing pending review of a pull request. This requires that a pending review exists for the current user on the specified pull request. The "body" and "event" parameters are used when submitting the review.
- delete_pending: Delete an existing pending review of a pull request. This requires that a pending review exists for the current user on the specified pull request.
- resolve_thread: Resolve a review thread. Requires only "threadId" parameter with the thread's node ID (e.g., PRRT_kwDOxxx). The owner, repo, and pullNumber parameters are not used for this method. Resolving an already-resolved thread is a no-op.
- unresolve_thread: Unresolve a previously resolved review thread. Requires only "threadId" parameter. The owner, repo, and pullNumber parameters are not used for this method. Unresolving an already-unresolved thread is a no-op.
push_files
HIGH
needs approval
Push multiple files to a GitHub repository in a single commit
request_copilot_review
HIGH
needs approval
Request a GitHub Copilot code review for a pull request. Use this for automated feedback on pull requests, usually before requesting a human reviewer.
run_secret_scanning
HIGH
needs approval
Scan 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 directly as content. The files parameter accepts either a single string or an array of strings containing raw file contents or diff hunks, and returns detected secrets with their locations and related secret scanning metadata. Content must not be empty. For full repository scanning, other mechanisms are available.
Caveats:
- Only files within the codebase should be scanned. Files outside of the codebase should not be sent.
- Files listed in .gitignore should be skipped.
search_code
LOW
auto-run
Fast 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_commits
LOW
auto-run
Search 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 branch only.
search_issues
LOW
auto-run
Search 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_requests
LOW
auto-run
Search for pull requests in GitHub repositories using issues search syntax already scoped to is:pr
search_repositories
LOW
auto-run
Find GitHub repositories by name, description, readme, topics, or other metadata. Perfect for discovering projects, finding examples, or locating specific repositories across GitHub.
search_users
LOW
auto-run
Find GitHub users by username, real name, or other profile information. Useful for locating developers, contributors, or team members.
sub_issue_write
HIGH
needs approval
Add a sub-issue to a parent issue in a GitHub repository.
update_pull_request
HIGH
needs approval
Update an existing pull request in a GitHub repository.
update_pull_request_branch
HIGH
needs approval
Update the branch of a pull request with the latest changes from the base branch.