GITHUB TOOLS

86 tools from the GitHub MCP Server, categorised by risk level.

View the GitHub policy →

READ TOOLS

58
actions_get Get details about specific GitHub Actions resources. Use this tool to get details about individual workflows, workflow runs, jobs, and artifacts by... actions_list Tools for listing GitHub Actions resources. Use this tool to list workflows in a repository, or list workflow runs, jobs, and artifacts for a speci... dismiss_notification Dismiss a notification by marking it as read or done fork_repository Fork a GitHub repository to your account or specified organization get_code_scanning_alert Get details of a specific code scanning alert in a GitHub repository. get_commit Get details for a commit from a GitHub repository get_copilot_job_status Get the status of a GitHub Copilot coding agent job. Use this to check if a previously submitted task has completed and to get the pull request URL... get_copilot_space This tool can be used to provide additional context to the chat from a specific Copilot space. If the user mentions the keyword 'Copilot space' wit... get_dependabot_alert Get details of a specific dependabot alert in a GitHub repository. get_discussion Get a specific discussion by ID get_discussion_comments Get comments from a discussion get_file_contents Get the contents of a file or directory from a GitHub repository 2/5 get_gist Get gist content of a particular gist, by gist ID get_global_security_advisory Get a global security advisory get_job_logs Get logs for GitHub Actions workflow jobs. Use this tool to retrieve logs for a specific job or all failed jobs in a workflow run. For single job l... get_label Get a specific label from a repository. get_latest_release Get the latest release in a GitHub repository get_me 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... get_notification_details Get detailed information for a specific GitHub notification, always call this tool when the user asks for details about a specific notification, if... get_release_by_tag Get a specific release by its tag name in a GitHub repository get_repository_tree Get the tree structure (files and directories) of a GitHub repository at a specific ref or SHA get_secret_scanning_alert Get details of a specific secret scanning alert in a GitHub repository. get_tag Get details about a specific git tag in a GitHub repository get_team_members Get member usernames of a specific team in an organization. Limited to organizations accessible with current credentials get_teams Get details of the teams the user is a member of. Limited to organizations accessible with current credentials github_support_docs_search Retrieve documentation relevant to answer GitHub product and support questions. Support topics include: GitHub Actions Workflows, Authentication, G... 2/5 list_branches List branches in a GitHub repository list_code_scanning_alerts List code scanning alerts in a GitHub repository. list_commits 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... list_copilot_spaces Retrieves the list of Copilot Spaces accessible to the user, including their names and owners. list_dependabot_alerts List dependabot alerts in a GitHub repository. list_discussion_categories List discussion categories with their id and name, for a repository or organisation. list_discussions List discussions for a repository or organisation. list_gists List gists for a user list_global_security_advisories List global security advisories from GitHub. list_issue_types List supported issue types for repository owner (organization). list_issues List issues in a GitHub repository. For pagination, use the 'endCursor' from the previous response's 'pageInfo' in the 'after' parameter. list_label List labels from a repository list_notifications Lists all GitHub notifications for the authenticated user, including unread notifications, mentions, review requests, assignments, and updates on i... list_org_repository_security_advisories List repository security advisories for a GitHub organization. list_pull_requests 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 List releases in a GitHub repository list_repository_security_advisories List repository security advisories for a GitHub repository. list_secret_scanning_alerts List secret scanning alerts in a GitHub repository. list_starred_repositories List starred repositories list_tags List git tags in a GitHub repository projects_get Get details about specific GitHub Projects resources. Use this tool to get details about individual projects, project fields, and project items by ... projects_list Tools for listing GitHub Projects resources. Use this tool to list projects for a user or organization, or list project fields and items for a spec... 2/5 pull_request_read Get information on a specific pull request in GitHub repository. request_copilot_review Request a GitHub Copilot code review for a pull request. Use this for automated feedback on pull requests, usually before requesting a human reviewer. search_code Fast and precise code search across ALL GitHub repositories using GitHub's native search engine. Best for finding exact symbols, functions, classes... 2/5 search_issues Search for issues in GitHub repositories using issues search syntax already scoped to is:issue 2/5 search_orgs Find GitHub organizations by name, location, or other organization metadata. Ideal for discovering companies, open source foundations, or teams. 2/5 search_pull_requests Search for pull requests in GitHub repositories using issues search syntax already scoped to is:pr 2/5 search_repositories Find GitHub repositories by name, description, readme, topics, or other metadata. Perfect for discovering projects, finding examples, or locating s... 2/5 search_users Find GitHub users by username, real name, or other profile information. Useful for locating developers, contributors, or team members. 2/5 star_repository Star a GitHub repository unstar_repository Unstar a GitHub repository

WRITE TOOLS

25
add_comment_to_pending_review 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... 3/5 add_issue_comment Add a comment to a specific issue in a GitHub repository. Use this tool to add comments to pull requests as well (in this case pass pull request nu... 2/5 add_reply_to_pull_request_comment Add a reply to an existing pull request comment. This creates a new comment that is linked as a reply to the specified comment. 2/5 assign_copilot_to_issue Assign Copilot to a specific issue in a GitHub repository. This tool can help with the following outcomes: - a Pull Request created with source co... 2/5 create_branch Create a new branch in a GitHub repository 2/5 create_gist Create a new gist 3/5 create_or_update_file 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 cr... 3/5 create_pull_request Create a new pull request in a GitHub repository. 2/5 create_pull_request_with_copilot Delegate a task to GitHub Copilot coding agent to perform in the background. The agent will create a pull request with the implementation. You shou... 2/5 create_repository Create a new GitHub repository in your account or specified organization 2/5 issue_read Get information about a specific issue in a GitHub repository. 2/5 issue_write Create a new or update an existing issue in a GitHub repository. 3/5 label_write Perform write operations on repository labels. To set labels on issues, use the 'update_issue' tool. 2/5 manage_notification_subscription Manage a notification subscription: ignore, watch, or delete a notification thread subscription. 2/5 manage_repository_notification_subscription Manage a repository notification subscription: ignore, watch, or delete repository notifications subscription for the provided repository. 2/5 mark_all_notifications_read Mark all notifications as read 2/5 merge_pull_request Merge a pull request in a GitHub repository. 2/5 projects_write Add, update, or delete project items, or create status updates in a GitHub Project. 3/5 pull_request_review_write 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... 2/5 push_files Push multiple files to a GitHub repository in a single commit 3/5 sub_issue_write Add a sub-issue to a parent issue in a GitHub repository. 2/5 triage_issue Triage an issue by capturing a focused triage rationale and optionally applying metadata (labels, issue type, and issue fields) in a single operati... 2/5 update_gist Update an existing gist 3/5 update_pull_request Update an existing pull request in a GitHub repository. 3/5 update_pull_request_branch Update the branch of a pull request with the latest changes from the base branch. 2/5

DESTRUCTIVE TOOLS

1

EXECUTE TOOLS

2
How many tools does the GitHub MCP server have? +

The GitHub MCP server exposes 86 tools across 4 categories: Read, Write, Destructive, Execute.

How do I enforce policies on GitHub tools? +

Use Intercept, the open-source MCP proxy. Write YAML rules for each tool — rate limits, argument validation, or deny rules — then run Intercept in front of the GitHub server.

What risk categories do GitHub tools fall into? +

GitHub tools are categorised as Read (58), Write (25), Destructive (1), Execute (2). Each category has a recommended default policy.

Enforce policies on GitHub

Open source. One binary. Zero dependencies.

npx -y @policylayer/intercept
github.com/policylayer/intercept →
// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.