Integrate Github into the workflow. Can get get PR details, create PR comment, get repository info, and get latest commit. Can be used in trigger mode to trigger a workflow when a PR is created, commented on, or a commit is pushed.
Fetch PR details including diff and files changed
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
pullNumber | number | Yes | Pull request number |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | Pull request ID |
number | number | Pull request number |
title | string | PR title |
state | string | PR state (open/closed) |
html_url | string | GitHub web URL |
diff_url | string | Raw diff URL |
body | string | PR description |
user | json | User who created the PR |
head | json | Head branch info |
base | json | Base branch info |
merged | boolean | Whether PR is merged |
mergeable | boolean | Whether PR is mergeable |
merged_by | json | User who merged the PR |
comments | number | Number of comments |
review_comments | number | Number of review comments |
commits | number | Number of commits |
additions | number | Lines added |
deletions | number | Lines deleted |
changed_files | number | Number of changed files |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
closed_at | string | Close timestamp |
merged_at | string | Merge timestamp |
files | array | Array of changed file objects |
Create comments on GitHub PRs
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
body | string | Yes | Comment content |
pullNumber | number | Yes | Pull request number |
path | string | No | File path for review comment |
position | number | No | Line number for review comment |
commentType | string | No | Type of comment (pr_comment or file_comment) |
line | number | No | Line number for review comment |
side | string | No | Side of the diff (LEFT or RIGHT) |
commitId | string | No | The SHA of the commit to comment on |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | Comment ID |
body | string | Comment body |
html_url | string | GitHub web URL |
user | json | User who created the comment |
path | string | File path (if file comment) |
line | number | Line number |
side | string | Diff side |
commit_id | string | Commit ID |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
Retrieve comprehensive GitHub repository metadata including stars, forks, issues, and primary language. Supports both public and private repositories with optional authentication.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
id | number | Repository ID |
name | string | Repository name |
full_name | string | Full repository name (owner/repo) |
description | string | Repository description |
html_url | string | GitHub web URL |
homepage | string | Homepage URL |
language | string | Primary programming language |
default_branch | string | Default branch name |
visibility | string | Repository visibility (public/private) |
private | boolean | Whether the repository is private |
fork | boolean | Whether this is a fork |
archived | boolean | Whether the repository is archived |
disabled | boolean | Whether the repository is disabled |
stargazers_count | number | Number of stars |
watchers_count | number | Number of watchers |
forks_count | number | Number of forks |
open_issues_count | number | Number of open issues |
topics | array | Repository topics |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
pushed_at | string | Last push timestamp |
owner | json | Repository owner object |
license | json | License information |
Retrieve the latest commit from a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
branch | string | No | Branch name (defaults to the repository's default branch) |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
sha | string | Commit SHA |
html_url | string | GitHub web URL |
commit | json | Commit info with message, author, committer |
author | json | Author user object |
committer | json | Committer user object |
Create a comment on a GitHub issue
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
issue_number | number | Yes | Issue number |
body | string | Yes | Comment content |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | Comment ID |
body | string | Comment body |
html_url | string | GitHub web URL |
user | json | User who created the comment |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
List all comments on a GitHub issue
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
issue_number | number | Yes | Issue number |
since | string | No | Only show comments updated after this ISO 8601 timestamp |
per_page | number | No | Number of results per page (max 100) |
page | number | No | Page number |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
items | array | Array of comment objects |
↳ id | number | Comment ID |
↳ body | string | Comment body |
↳ user | object | User who created the comment |
↳ html_url | string | GitHub web URL |
↳ created_at | string | Creation timestamp |
↳ updated_at | string | Last update timestamp |
count | number | Number of comments returned |
Update an existing comment on a GitHub issue or pull request
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
comment_id | number | Yes | Comment ID |
body | string | Yes | Updated comment content |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | Comment ID |
body | string | Comment body |
html_url | string | GitHub web URL |
user | json | User who updated the comment |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
Delete a comment on a GitHub issue or pull request
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
comment_id | number | Yes | Comment ID |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
deleted | boolean | Whether deletion was successful |
comment_id | number | Deleted comment ID |
List all review comments on a GitHub pull request
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
pullNumber | number | Yes | Pull request number |
sort | string | No | Sort by created or updated |
direction | string | No | Sort direction (asc or desc) |
since | string | No | Only show comments updated after this ISO 8601 timestamp |
per_page | number | No | Number of results per page (max 100) |
page | number | No | Page number |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
items | array | Array of review comment objects |
↳ id | number | Comment ID |
↳ body | string | Comment body |
↳ path | string | File path |
↳ line | number | Line number |
↳ user | object | User who created the comment |
↳ html_url | string | GitHub web URL |
↳ diff_hunk | string | Diff context |
↳ created_at | string | Creation timestamp |
↳ updated_at | string | Last update timestamp |
count | number | Number of comments returned |
Create a new pull request in a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
title | string | Yes | Pull request title |
head | string | Yes | The name of the branch where your changes are implemented |
base | string | Yes | The name of the branch you want the changes pulled into |
body | string | No | Pull request description (Markdown) |
draft | boolean | No | Create as draft pull request |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | Pull request ID |
number | number | Pull request number |
title | string | PR title |
state | string | PR state |
html_url | string | GitHub web URL |
body | string | PR description |
user | json | User who created the PR |
head | json | Head branch info |
base | json | Base branch info |
draft | boolean | Whether PR is a draft |
merged | boolean | Whether PR is merged |
mergeable | boolean | Whether PR is mergeable |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
Update an existing pull request in a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
pullNumber | number | Yes | Pull request number |
title | string | No | New pull request title |
body | string | No | New pull request description (Markdown) |
state | string | No | New state (open or closed) |
base | string | No | New base branch name |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | PR ID |
number | number | PR number |
title | string | PR title |
state | string | PR state |
html_url | string | GitHub web URL |
body | string | PR description |
user | json | User who created the PR |
head | json | Head branch info |
base | json | Base branch info |
draft | boolean | Whether PR is a draft |
merged | boolean | Whether PR is merged |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
Merge a pull request in a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
pullNumber | number | Yes | Pull request number |
commit_title | string | No | Title for the merge commit |
commit_message | string | No | Extra detail to append to merge commit message |
merge_method | string | No | Merge method: merge, squash, or rebase |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
sha | string | Merge commit SHA |
merged | boolean | Whether merge was successful |
message | string | Response message |
List pull requests in a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
state | string | No | Filter by state: open, closed, or all |
head | string | No | Filter by head user or branch name (format: user:ref-name or organization:ref-name) |
base | string | No | Filter by base branch name |
sort | string | No | Sort by: created, updated, popularity, or long-running |
direction | string | No | Sort direction: asc or desc |
per_page | number | No | Results per page (max 100) |
page | number | No | Page number |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
items | array | Array of pull request objects |
↳ id | number | PR ID |
↳ number | number | PR number |
↳ title | string | PR title |
↳ state | string | PR state |
↳ html_url | string | GitHub web URL |
↳ user | object | Author object |
↳ head | object | Head branch info |
↳ base | object | Base branch info |
↳ created_at | string | Creation timestamp |
↳ updated_at | string | Last update timestamp |
count | number | Number of PRs returned |
Get the list of files changed in a pull request
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
pullNumber | number | Yes | Pull request number |
per_page | number | No | Results per page (max 100) |
page | number | No | Page number |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
items | array | Array of changed file objects |
↳ filename | string | File path |
↳ status | string | Change status (added/modified/deleted/renamed) |
↳ additions | number | Lines added |
↳ deletions | number | Lines deleted |
↳ changes | number | Total changes |
↳ patch | string | File diff patch |
↳ sha | string | File SHA |
↳ blob_url | string | GitHub blob URL |
↳ raw_url | string | Raw file URL |
↳ previous_filename | string | Previous filename (for renamed files) |
count | number | Total number of files |
Close a pull request in a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
pullNumber | number | Yes | Pull request number |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | PR ID |
number | number | PR number |
title | string | PR title |
state | string | PR state (closed) |
html_url | string | GitHub web URL |
body | string | PR description |
user | json | User who created the PR |
head | json | Head branch info |
base | json | Base branch info |
draft | boolean | Whether PR is a draft |
merged | boolean | Whether PR is merged |
closed_at | string | Close timestamp |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
Request reviewers for a pull request
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
pullNumber | number | Yes | Pull request number |
reviewers | string | Yes | Comma-separated list of user logins to request reviews from |
team_reviewers | string | No | Comma-separated list of team slugs to request reviews from |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | PR ID |
number | number | PR number |
title | string | PR title |
html_url | string | GitHub web URL |
requested_reviewers | array | Array of requested reviewer objects |
requested_teams | array | Array of requested team objects |
Get the content of a file from a GitHub repository. Supports files up to 1MB. Content is returned decoded and human-readable.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
path | string | Yes | Path to the file in the repository (e.g., "src/index.ts") |
ref | string | No | Branch name, tag, or commit SHA (defaults to repository default branch) |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
name | string | File name |
path | string | Full path in repository |
sha | string | Git blob SHA |
size | number | File size in bytes |
type | string | Content type (file/dir/symlink/submodule) |
content | string | Decoded file content |
encoding | string | Content encoding |
html_url | string | GitHub web URL |
download_url | string | Direct download URL |
git_url | string | Git blob API URL |
_links | json | Related links |
Create a new file in a GitHub repository. The file content will be automatically Base64 encoded. Supports files up to 1MB.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
path | string | Yes | Path where the file will be created (e.g., "src/newfile.ts") |
message | string | Yes | Commit message for this file creation |
content | string | Yes | File content (plain text, will be Base64 encoded automatically) |
branch | string | No | Branch to create the file in (defaults to repository default branch) |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
content | json | Created file content info |
commit | json | Commit information |
Update an existing file in a GitHub repository. Requires the file SHA. Content will be automatically Base64 encoded. Supports files up to 1MB.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
path | string | Yes | Path to the file to update (e.g., "src/index.ts") |
message | string | Yes | Commit message for this file update |
content | string | Yes | New file content (plain text, will be Base64 encoded automatically) |
sha | string | Yes | The blob SHA of the file being replaced (get from github_get_file_content) |
branch | string | No | Branch to update the file in (defaults to repository default branch) |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
content | json | Updated file content info |
commit | json | Commit information |
Delete a file from a GitHub repository. Requires the file SHA. This operation cannot be undone through the API.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
path | string | Yes | Path to the file to delete (e.g., "src/oldfile.ts") |
message | string | Yes | Commit message for this file deletion |
sha | string | Yes | The blob SHA of the file being deleted (get from github_get_file_content) |
branch | string | No | Branch to delete the file from (defaults to repository default branch) |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
content | json | File content info (null for delete) |
commit | json | Commit information |
Get the contents of a directory in a GitHub repository. Returns a list of files and subdirectories. Use empty path or omit to get root directory contents.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
path | string | No | Directory path (e.g., "src/components"). Leave empty for root directory. |
ref | string | No | Branch name, tag, or commit SHA (defaults to repository default branch) |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
items | array | Array of file/directory objects |
↳ name | string | File or directory name |
↳ path | string | Full path in repository |
↳ sha | string | Git object SHA |
↳ size | number | Size in bytes |
↳ type | string | Type (file/dir/symlink/submodule) |
↳ html_url | string | GitHub web URL |
↳ download_url | string | Direct download URL |
↳ git_url | string | Git blob API URL |
↳ url | string | API URL for this item |
↳ _links | json | Related links |
count | number | Total number of items |
List all branches in a GitHub repository. Optionally filter by protected status and control pagination.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
protected | boolean | No | Filter branches by protection status |
per_page | number | No | Number of results per page (max 100, default 30) |
page | number | No | Page number for pagination (default 1) |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
items | array | Array of branch objects |
↳ name | string | Branch name |
↳ commit | object | Commit info with sha and url |
↳ protected | boolean | Whether branch is protected |
count | number | Number of branches returned |
Get detailed information about a specific branch in a GitHub repository, including commit details and protection status.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
branch | string | Yes | Branch name |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
name | string | Branch name |
commit | json | Commit object with sha, url, etc. |
protected | boolean | Whether branch is protected |
protection | json | Protection settings object |
protection_url | string | URL to protection settings |
Create a new branch in a GitHub repository by creating a git reference pointing to a specific commit SHA.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
branch | string | Yes | Name of the branch to create |
sha | string | Yes | Commit SHA to point the branch to |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
ref | string | Full reference name (refs/heads/branch) |
node_id | string | Git ref node ID |
url | string | API URL for the reference |
object | json | Git object with type and sha |
Delete a branch from a GitHub repository by removing its git reference. Protected branches cannot be deleted.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
branch | string | Yes | Name of the branch to delete |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
deleted | boolean | Whether the branch was deleted |
branch | string | Name of the deleted branch |
Get the branch protection rules for a specific branch, including status checks, review requirements, and restrictions.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
branch | string | Yes | Branch name |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
url | string | Protection settings URL |
required_status_checks | json | Status check requirements |
enforce_admins | json | Admin enforcement settings |
required_pull_request_reviews | json | PR review requirements |
restrictions | json | Push restrictions |
required_linear_history | json | Linear history requirement |
allow_force_pushes | json | Force push settings |
allow_deletions | json | Deletion settings |
block_creations | json | Creation blocking settings |
required_conversation_resolution | json | Conversation resolution requirement |
required_signatures | json | Signature requirements |
Update branch protection rules for a specific branch, including status checks, review requirements, admin enforcement, and push restrictions.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
branch | string | Yes | Branch name |
required_status_checks | object | Yes | Required status check configuration (null to disable). Object with strict (boolean) and contexts (string array) |
enforce_admins | boolean | Yes | Whether to enforce restrictions for administrators |
required_pull_request_reviews | object | Yes | PR review requirements (null to disable). Object with optional required_approving_review_count, dismiss_stale_reviews, require_code_owner_reviews |
restrictions | object | Yes | Push restrictions (null to disable). Object with users (string array) and teams (string array) |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
url | string | Protection URL |
required_status_checks | json | Status check requirements |
enforce_admins | json | Admin enforcement settings |
required_pull_request_reviews | json | PR review requirements |
restrictions | json | Push restrictions |
required_linear_history | json | Linear history requirement |
allow_force_pushes | json | Force push settings |
allow_deletions | json | Deletion settings |
Create a new issue in a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
title | string | Yes | Issue title |
body | string | No | Issue description/body |
assignees | string | No | Comma-separated list of usernames to assign to this issue |
labels | string | No | Comma-separated list of label names to add to this issue |
milestone | number | No | Milestone number to associate with this issue |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | Issue ID |
number | number | Issue number |
title | string | Issue title |
state | string | Issue state (open/closed) |
html_url | string | GitHub web URL |
body | string | Issue body/description |
user | json | User who created the issue |
labels | array | Array of label objects |
assignees | array | Array of assignee objects |
milestone | json | Milestone object |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
closed_at | string | Close timestamp |
Update an existing issue in a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
issue_number | number | Yes | Issue number |
title | string | No | New issue title |
body | string | No | New issue description/body |
state | string | No | Issue state (open or closed) |
labels | array | No | Array of label names (replaces all existing labels) |
assignees | array | No | Array of usernames (replaces all existing assignees) |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | Issue ID |
number | number | Issue number |
title | string | Issue title |
state | string | Issue state |
html_url | string | GitHub web URL |
body | string | Issue body |
user | json | User who created the issue |
labels | array | Array of label objects |
assignees | array | Array of assignee objects |
milestone | json | Milestone object |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
closed_at | string | Close timestamp |
List issues in a GitHub repository. Note: This includes pull requests as PRs are considered issues in GitHub
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
state | string | No | Filter by state: open, closed, or all (default: open) |
assignee | string | No | Filter by assignee username |
creator | string | No | Filter by creator username |
labels | string | No | Comma-separated list of label names to filter by |
sort | string | No | Sort by: created, updated, or comments (default: created) |
direction | string | No | Sort direction: asc or desc (default: desc) |
per_page | number | No | Results per page (max 100, default: 30) |
page | number | No | Page number (default: 1) |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
items | array | Array of issue objects from GitHub API |
↳ id | number | Issue ID |
↳ number | number | Issue number |
↳ title | string | Issue title |
↳ state | string | Issue state (open/closed) |
↳ html_url | string | GitHub web URL |
↳ body | string | Issue body |
↳ user | object | User who created the issue |
↳ labels | array | Array of label objects |
↳ assignees | array | Array of assignee objects |
↳ milestone | object | Milestone object |
↳ created_at | string | Creation timestamp |
↳ updated_at | string | Last update timestamp |
↳ closed_at | string | Close timestamp |
count | number | Number of issues returned |
Get detailed information about a specific issue in a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
issue_number | number | Yes | Issue number |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | Issue ID |
number | number | Issue number |
title | string | Issue title |
state | string | Issue state (open/closed) |
html_url | string | GitHub web URL |
body | string | Issue body/description |
user | json | User who created the issue |
labels | array | Array of label objects |
assignees | array | Array of assignee objects |
milestone | json | Milestone object |
comments | number | Number of comments |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
closed_at | string | Close timestamp |
closed_by | json | User who closed the issue |
Close an issue in a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
issue_number | number | Yes | Issue number |
state_reason | string | No | Reason for closing: completed or not_planned |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | Issue ID |
number | number | Issue number |
title | string | Issue title |
state | string | Issue state (closed) |
state_reason | string | Reason for closing |
html_url | string | GitHub web URL |
body | string | Issue body |
user | json | User who created the issue |
labels | array | Array of label objects |
assignees | array | Array of assignee objects |
closed_at | string | Close timestamp |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
Add labels to an issue in a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
issue_number | number | Yes | Issue number |
labels | string | Yes | Comma-separated list of label names to add to the issue |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
items | array | Array of label objects on the issue |
↳ id | number | Label ID |
↳ name | string | Label name |
↳ color | string | Label color |
↳ description | string | Label description |
count | number | Number of labels |
Remove a label from an issue in a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
issue_number | number | Yes | Issue number |
name | string | Yes | Label name to remove |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
items | array | Remaining labels on the issue |
↳ id | number | Label ID |
↳ name | string | Label name |
↳ color | string | Label color |
↳ description | string | Label description |
count | number | Number of remaining labels |
Add assignees to an issue in a GitHub repository
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner |
repo | string | Yes | Repository name |
issue_number | number | Yes | Issue number |
assignees | string | Yes | Comma-separated list of usernames to assign to the issue |
apiKey | string | Yes | GitHub API token |
| Parameter | Type | Description |
|---|
id | number | Issue ID |
number | number | Issue number |
title | string | Issue title |
state | string | Issue state |
html_url | string | GitHub web URL |
body | string | Issue body |
user | json | Issue creator |
labels | array | Array of label objects |
assignees | array | Array of assignee objects |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
Create a new release for a GitHub repository. Specify tag name, target commit, title, description, and whether it should be a draft or prerelease.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
tag_name | string | Yes | The name of the tag for this release |
target_commitish | string | No | Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Defaults to the repository default branch. |
name | string | No | The name of the release |
body | string | No | Text describing the contents of the release (markdown supported) |
draft | boolean | No | true to create a draft (unpublished) release, false to create a published one |
prerelease | boolean | No | true to identify the release as a prerelease, false to identify as a full release |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
id | number | Release ID |
tag_name | string | Git tag name |
name | string | Release name |
body | string | Release description |
html_url | string | GitHub web URL |
tarball_url | string | Tarball download URL |
zipball_url | string | Zipball download URL |
draft | boolean | Whether this is a draft |
prerelease | boolean | Whether this is a prerelease |
author | json | Release author |
assets | array | Release assets |
created_at | string | Creation timestamp |
published_at | string | Publication timestamp |
Update an existing GitHub release. Modify tag name, target commit, title, description, draft status, or prerelease status.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
release_id | number | Yes | The unique identifier of the release |
tag_name | string | No | The name of the tag |
target_commitish | string | No | Specifies the commitish value for where the tag is created from |
name | string | No | The name of the release |
body | string | No | Text describing the contents of the release (markdown supported) |
draft | boolean | No | true to set as draft, false to publish |
prerelease | boolean | No | true to identify as a prerelease, false for a full release |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
id | number | Release ID |
tag_name | string | Git tag name |
name | string | Release name |
body | string | Release description |
html_url | string | GitHub web URL |
tarball_url | string | Tarball download URL |
zipball_url | string | Zipball download URL |
draft | boolean | Whether this is a draft |
prerelease | boolean | Whether this is a prerelease |
created_at | string | Creation timestamp |
published_at | string | Publication timestamp |
List all releases for a GitHub repository. Returns release information including tags, names, and download URLs.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
per_page | number | No | Number of results per page (max 100) |
page | number | No | Page number of the results to fetch |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
items | array | Array of release objects |
↳ id | number | Release ID |
↳ tag_name | string | Git tag name |
↳ name | string | Release name |
↳ body | string | Release description |
↳ html_url | string | GitHub web URL |
↳ tarball_url | string | Tarball download URL |
↳ zipball_url | string | Zipball download URL |
↳ draft | boolean | Whether this is a draft |
↳ prerelease | boolean | Whether this is a prerelease |
↳ author | object | Release author |
↳ assets | array | Release assets |
↳ created_at | string | Creation timestamp |
↳ published_at | string | Publication timestamp |
count | number | Number of releases returned |
Get detailed information about a specific GitHub release by ID. Returns release metadata including assets and download URLs.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
release_id | number | Yes | The unique identifier of the release |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
id | number | Release ID |
tag_name | string | Git tag name |
name | string | Release name |
body | string | Release description |
html_url | string | GitHub web URL |
tarball_url | string | Tarball download URL |
zipball_url | string | Zipball download URL |
draft | boolean | Whether this is a draft |
prerelease | boolean | Whether this is a prerelease |
author | json | Release author object |
assets | array | Array of release asset objects |
created_at | string | Creation timestamp |
published_at | string | Publication timestamp |
target_commitish | string | Target commit/branch |
Delete a GitHub release by ID. This permanently removes the release but does not delete the associated Git tag.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
release_id | number | Yes | The unique identifier of the release to delete |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
deleted | boolean | Whether the release was deleted |
release_id | number | ID of the deleted release |
List all workflows in a GitHub repository. Returns workflow details including ID, name, path, state, and badge URL.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
per_page | number | No | Number of results per page (default: 30, max: 100) |
page | number | No | Page number of results to fetch (default: 1) |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
total_count | number | Total number of workflows |
items | array | Array of workflow objects |
↳ id | number | Workflow ID |
↳ node_id | string | Workflow node ID |
↳ name | string | Workflow name |
↳ path | string | Path to workflow file |
↳ state | string | Workflow state |
↳ html_url | string | GitHub web URL |
↳ badge_url | string | Badge URL |
↳ created_at | string | Creation timestamp |
↳ updated_at | string | Last update timestamp |
↳ deleted_at | string | Deletion timestamp |
Get details of a specific GitHub Actions workflow by ID or filename. Returns workflow information including name, path, state, and badge URL.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
workflow_id | string | Yes | Workflow ID (number) or workflow filename (e.g., "main.yaml") |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
id | number | Workflow ID |
node_id | string | Workflow node ID |
name | string | Workflow name |
path | string | Path to workflow file |
state | string | Workflow state (active/disabled) |
html_url | string | GitHub web URL |
badge_url | string | Badge URL |
url | string | API URL |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
deleted_at | string | Deletion timestamp |
Trigger a workflow dispatch event for a GitHub Actions workflow. The workflow must have a workflow_dispatch trigger configured. Returns 204 No Content on success.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
workflow_id | string | Yes | Workflow ID (number) or workflow filename (e.g., "main.yaml") |
ref | string | Yes | Git reference (branch or tag name) to run the workflow on |
inputs | object | No | Input keys and values configured in the workflow file |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
triggered | boolean | Whether workflow was triggered |
workflow_id | string | Workflow ID or filename |
ref | string | Git reference used |
List workflow runs for a repository. Supports filtering by actor, branch, event, and status. Returns run details including status, conclusion, and links.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
actor | string | No | Filter by user who triggered the workflow |
branch | string | No | Filter by branch name |
event | string | No | Filter by event type (e.g., push, pull_request, workflow_dispatch) |
status | string | No | Filter by status (queued, in_progress, completed, waiting, requested, pending) |
per_page | number | No | Number of results per page (default: 30, max: 100) |
page | number | No | Page number of results to fetch (default: 1) |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
total_count | number | Total number of workflow runs |
items | array | Array of workflow run objects |
↳ id | number | Workflow run ID |
↳ name | string | Workflow name |
↳ head_branch | string | Branch name |
↳ head_sha | string | Commit SHA |
↳ run_number | number | Run number |
↳ event | string | Trigger event |
↳ status | string | Run status |
↳ conclusion | string | Run conclusion |
↳ html_url | string | GitHub web URL |
↳ created_at | string | Creation timestamp |
↳ updated_at | string | Last update timestamp |
↳ triggering_actor | json | User who triggered the run |
↳ pull_requests | array | Associated pull requests |
↳ referenced_workflows | array | Referenced workflows |
↳ head_commit | json | Head commit information |
↳ run_started_at | string | Run start timestamp |
Get detailed information about a specific workflow run by ID. Returns status, conclusion, timing, and links to the run.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
run_id | number | Yes | Workflow run ID |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
id | number | Workflow run ID |
name | string | Workflow name |
head_branch | string | Branch name |
head_sha | string | Commit SHA |
run_number | number | Run number |
run_attempt | number | Run attempt number |
event | string | Trigger event type |
status | string | Run status |
conclusion | string | Run conclusion |
workflow_id | number | Workflow ID |
html_url | string | GitHub web URL |
logs_url | string | Logs download URL |
jobs_url | string | Jobs API URL |
artifacts_url | string | Artifacts API URL |
triggering_actor | json | User who triggered the run |
pull_requests | array | Associated pull requests |
referenced_workflows | array | Referenced workflows |
head_commit | json | Head commit information |
run_started_at | string | Run start timestamp |
created_at | string | Creation timestamp |
updated_at | string | Last update timestamp |
Cancel a workflow run. Returns 202 Accepted if cancellation is initiated, or 409 Conflict if the run cannot be cancelled (already completed).
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
run_id | number | Yes | Workflow run ID to cancel |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
cancelled | boolean | Whether cancellation was initiated |
run_id | number | Workflow run ID |
Rerun a workflow run. Optionally enable debug logging for the rerun. Returns 201 Created on success.
| Parameter | Type | Required | Description |
|---|
owner | string | Yes | Repository owner (user or organization) |
repo | string | Yes | Repository name |
run_id | number | Yes | Workflow run ID to rerun |
enable_debug_logging | boolean | No | Enable debug logging for the rerun (default: false) |
apiKey | string | Yes | GitHub Personal Access Token |
| Parameter | Type | Description |
|---|
rerun_requested | boolean | Whether rerun was requested |
run_id | number | Workflow run ID |
List GitHub Projects V2 for an organization or user. Returns up to 20 projects with their details including ID, title, number, URL, and status.
| Parameter | Type | Required | Description |
|---|
owner_type | string | Yes | Owner type: "org" for organization or "user" for user |
owner_login | string | Yes | Organization or user login name |
apiKey | string | Yes | GitHub Personal Access Token with project read permissions |
| Parameter | Type | Description |
|---|
items | array | Array of project objects |
↳ id | string | Project node ID |
↳ title | string | Project title |
↳ number | number | Project number |
↳ url | string | Project URL |
↳ closed | boolean | Whether project is closed |
↳ public | boolean | Whether project is public |
↳ shortDescription | string | Short description |
totalCount | number | Total number of projects |
Get detailed information about a specific GitHub Project V2 by its number. Returns project details including ID, title, description, URL, and status.
| Parameter | Type | Required | Description |
|---|
owner_type | string | Yes | Owner type: "org" for organization or "user" for user |
owner_login | string | Yes | Organization or user login name |
project_number | number | Yes | Project number |
apiKey | string | Yes | GitHub Personal Access Token with project read permissions |
| Parameter | Type | Description |
|---|
id | string | Project node ID |
title | string | Project title |
number | number | Project number |
url | string | Project URL |
closed | boolean | Whether project is closed |
public | boolean | Whether project is public |
shortDescription | string | Short description |
readme | string | Project readme |
createdAt | string | Creation timestamp |
updatedAt | string | Last update timestamp |
Create a new GitHub Project V2. Requires the owner Node ID (not login name). Returns the created project with ID, title, and URL.
| Parameter | Type | Required | Description |
|---|
owner_id | string | Yes | Owner Node ID (format: PVT_... or MDQ6...). Use GitHub GraphQL API to get this ID from organization or user login. |
title | string | Yes | Project title |
apiKey | string | Yes | GitHub Personal Access Token with project write permissions |
| Parameter | Type | Description |
|---|
id | string | Project node ID |
title | string | Project title |
number | number | Project number |
url | string | Project URL |
closed | boolean | Whether project is closed |
public | boolean | Whether project is public |
shortDescription | string | Short description |
Update an existing GitHub Project V2. Can update title, description, visibility (public), or status (closed). Requires the project Node ID.
| Parameter | Type | Required | Description |
|---|
project_id | string | Yes | Project Node ID (format: PVT_...) |
title | string | No | New project title |
shortDescription | string | No | New project short description |
project_public | boolean | No | Set project visibility (true = public, false = private) |
closed | boolean | No | Set project status (true = closed, false = open) |
apiKey | string | Yes | GitHub Personal Access Token with project write permissions |
| Parameter | Type | Description |
|---|
id | string | Project node ID |
title | string | Project title |
number | number | Project number |
url | string | Project URL |
closed | boolean | Whether project is closed |
public | boolean | Whether project is public |
shortDescription | string | Short description |
Delete a GitHub Project V2. This action is permanent and cannot be undone. Requires the project Node ID.
| Parameter | Type | Required | Description |
|---|
project_id | string | Yes | Project Node ID (format: PVT_...) |
apiKey | string | Yes | GitHub Personal Access Token with project admin permissions |
| Parameter | Type | Description |
|---|
id | string | Deleted project node ID |
title | string | Deleted project title |
number | number | Deleted project number |
url | string | Deleted project URL |