actions_get
Get details about specific GitHub Actions resources.
Use this tool to get details about individual workflows, workflow runs, jobs, and artifacts by their unique IDs.
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 specific workflow or workflow run.
actions_run_trigger
Trigger GitHub Actions workflow operations, including running, re-running, cancelling workflow runs, and deleting workflow run logs.
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 if not sure).
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 number as issue_number), but only if user is not asking specifically to add review comments.
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.
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 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
create_branch
Create a new branch in a GitHub repository
create_gist
Create a new gist
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 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
Create a new pull request in a GitHub repository.
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 should use this tool if the user asks to create a pull request to perform a specific task, or if the user asks Copilot to do something.
create_repository
Create a new GitHub repository in your account or specified organization
delete_file
Delete a file from a GitHub repository
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 once it's created. Provide the job ID (from create_pull_request_with_copilot) or pull request number (from assign_copilot_to_issue), or any pull request you want agent sessions for.
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' with the name and owner of the space, execute this tool.
The response includes a table of contents (TOC) listing all documents in the space, followed by the full content of each document. Documents are separated by markers in the format: '--- Document N: path (size) ---'. When searching for specific information, use grep (or equivalent command) to search across all documents; the separator lines will help identify which document contains the matching content.
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
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 logs, provide job_id. For all failed jobs in a run, provide run_id with failed_only=true.
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 build other tool calls.
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 you don't know the ID list notifications first.
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, GitHub Support Inquiries, Pull Request Practices, Repository Maintenance, GitHub Pages, GitHub Packages, GitHub Discussions, Copilot Spaces
issue_read
Get information about a specific issue in a GitHub repository.
issue_write
Create a new or update an existing issue in a GitHub repository.
label_write
Perform write operations on repository labels. To set labels on issues, use the 'update_issue' tool.
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 perPage parameter (up to 100).
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 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_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
manage_notification_subscription
Manage a notification subscription: ignore, watch, or delete a notification thread subscription.
manage_repository_notification_subscription
Manage a repository notification subscription: ignore, watch, or delete repository notifications subscription for the provided repository.
mark_all_notifications_read
Mark all notifications as read
merge_pull_request
Merge a pull request 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 their unique IDs.
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 specific project.
projects_write
Add, update, or delete project items, or create status updates in a GitHub Project.
pull_request_read
Get information on a specific pull request in GitHub repository.
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 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.
push_files
Push multiple files to a GitHub repository in a single commit
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.
run_secret_scanning
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. It accepts file contents or diffs 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
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_issues
Search for issues in GitHub repositories using issues search syntax already scoped to is:issue
search_orgs
Find GitHub organizations by name, location, or other organization metadata. Ideal for discovering companies, open source foundations, or teams.
search_pull_requests
Search for pull requests in GitHub repositories using issues search syntax already scoped to is:pr
search_repositories
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
Find GitHub users by username, real name, or other profile information. Useful for locating developers, contributors, or team members.
star_repository
Star a GitHub repository
sub_issue_write
Add a sub-issue to a parent issue in a GitHub repository.
triage_issue
Triage an issue by capturing a focused triage rationale and optionally applying metadata (labels, issue type, and issue fields) in a single operation.
Use this tool when:
- You are triaging a newly opened or untriaged issue for maintainers
- You need to categorize the issue (type) and suggest/apply relevant labels
- You want to record a brief, structured triage report
Do not use this tool when:
- The user is asking a general product question unrelated to triaging a specific issue
triage_rationale should be concise markdown aimed at maintainers (not the issue author); it should contain:
- Summary of the issue
- Analysis of the problem or request
- Suggested next steps or actions.
unstar_repository
Unstar a GitHub repository
update_gist
Update an existing gist
update_pull_request
Update an existing pull request in a GitHub repository.
update_pull_request_branch
Update the branch of a pull request with the latest changes from the base branch.