[
{
"function": {
"description": "Tool to fetch raw file content from a GitHub repository. Returns raw bytes in whatever format the file uses (JSON, CSV, binary, etc.) — parsing and validation are the caller's responsibility. Ensure owner, repo, ref, and path are consistent when combining with other GitHub tools to avoid mismatched-ref errors.",
"name": "GITHUB_GET_RAW_REPOSITORY_CONTENT",
"parameters": {
"description": "Request model for fetching raw repository file content.",
"properties": {
"owner": {
"description": "The GitHub username or organization name that owns the repository. This is the account name shown in the repository URL (e.g., for github.com/torvalds/linux, the owner is 'torvalds'). Case-insensitive.",
"examples": [
"octocat",
"torvalds",
"facebook"
],
"title": "Owner",
"type": "string"
},
"path": {
"description": "The file path within the repository, relative to the repository root. Use forward slashes for directory separators (e.g., 'src/utils/helper.js'). Do not include leading slash. Do NOT pass a full GitHub URL - only the relative path within the repo. Must exactly match the file path as it exists in the repository — use GITHUB_GET_A_TREE to discover valid paths rather than guessing directory structure.",
"examples": [
"README.md",
"docs/index.html",
"src/main.py"
],
"title": "Path",
"type": "string"
},
"ref": {
"description": "The branch name, tag name, or commit SHA to fetch the file from. Defaults to the repository's default branch (usually 'main' or 'master'). Recommended to pass explicitly — omitting it fetches from the default branch, which may not match the ref used in other tool calls and can yield unexpected or missing content.",
"examples": [
"main",
"master",
"v1.0.0",
"develop"
],
"title": "Ref",
"type": "string"
},
"repo": {
"description": "The repository name (not the full URL). This is the repository name shown in the repository URL (e.g., for github.com/torvalds/linux, the repo is 'linux'). Do not include '.git' suffix. Case-insensitive.",
"examples": [
"Hello-World",
"linux",
"react"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"path"
],
"title": "GetRawRepositoryContentRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Gets the settings for allowed actions and reusable workflows in a repository. Requires the repository's `allowed_actions` policy to be set to `selected` (returns 409 if set to `all` or `local_only`).",
"name": "GITHUB_GET_REPO_ALLOWED_ACTIONS",
"parameters": {
"description": "Request schema for `GetAllowedActionsAndReusableWorkflowsForARepository`",
"properties": {
"owner": {
"description": "The username or organization name that owns the repository. This field is not case-sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"Spoon-Knife"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "GetAllowedActionsAndReusableWorkflowsForARepositoryRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Gets metadata (name, creation/update timestamps) for a specific, existing development environment secret (Codespaces secret) in a repository, without exposing its value.",
"name": "GITHUB_GET_REPO_DEV_ENV_SECRET",
"parameters": {
"description": "Request schema for retrieving a specific development environment secret for a repository.",
"properties": {
"owner": {
"description": "The username or organization name that owns the repository. This field is case-insensitive.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is case-insensitive. ",
"examples": [
"hello-world",
"docs"
],
"title": "Repo",
"type": "string"
},
"secret_name": {
"description": "The name of the development environment secret to retrieve.",
"examples": [
"MY_API_KEY",
"DATABASE_URL"
],
"title": "Secret Name",
"type": "string"
}
},
"required": [
"owner",
"repo",
"secret_name"
],
"title": "GetRepoDevEnvSecretRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Tool to retrieve attestations by subject digest from a GitHub repository. Use when you need to verify or check attestations for a specific artifact identified by its SHA256 digest.",
"name": "GITHUB_GET_REPOS_ATTESTATIONS",
"parameters": {
"description": "Request schema for retrieving attestations by subject digest.",
"properties": {
"after": {
"description": "A cursor, as given in the Link header. If specified, the query only searches for results after this cursor. For more information, see \"Using pagination in the REST API\".",
"title": "After",
"type": "string"
},
"before": {
"description": "A cursor, as given in the Link header. If specified, the query only searches for results before this cursor. For more information, see \"Using pagination in the REST API\".",
"title": "Before",
"type": "string"
},
"owner": {
"description": "The account owner of the repository. The name is not case sensitive.",
"examples": [
"cli"
],
"title": "Owner",
"type": "string"
},
"per_page": {
"default": 30,
"description": "The number of results per page (max 100). For more information, see \"Using pagination in the REST API\".",
"maximum": 100,
"minimum": 1,
"title": "Per Page",
"type": "integer"
},
"predicate_type": {
"description": "Optional filter for fetching attestations with a given predicate type. This option accepts `provenance`, `sbom`, `release`, or freeform text for custom predicate types.",
"examples": [
"provenance",
"sbom",
"release"
],
"title": "Predicate Type",
"type": "string"
},
"repo": {
"description": "The name of the repository without the `.git` extension. The name is not case sensitive.",
"examples": [
"cli"
],
"title": "Repo",
"type": "string"
},
"subject_digest": {
"description": "The parameter should be set to the attestation's subject's SHA256 digest, in the form `sha256:HEX_DIGEST`.",
"examples": [
"sha256:fdb77f31b8a6dd23c3fd858758d692a45f7fc76383e37d475bdcae038df92afc"
],
"title": "Subject Digest",
"type": "string"
}
},
"required": [
"owner",
"repo",
"subject_digest"
],
"title": "GetReposAttestationsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves the total number of clones and a breakdown of clone activity (daily or weekly) for a specified repository over the preceding 14 days.",
"name": "GITHUB_GET_REPOSITORY_CLONES",
"parameters": {
"description": "Request schema for retrieving repository clone statistics.",
"properties": {
"owner": {
"description": "The username of the account that owns the repository. This field is not case-sensitive.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"per": {
"default": "day",
"description": "Specifies the time frame for aggregating clone data: `day` for daily clone counts, or `week` for weekly clone counts (a week starts on Monday).",
"enum": [
"day",
"week"
],
"examples": [
"day",
"week"
],
"title": "Per",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the '.git' extension. This field is not case-sensitive.",
"examples": [
"Hello-World",
"mercury"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "GetRepositoryClonesRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves a file's Base64 encoded content or lists a directory's contents from a GitHub repository.",
"name": "GITHUB_GET_REPOSITORY_CONTENT",
"parameters": {
"description": "Request schema for retrieving content from a GitHub repository.",
"properties": {
"owner": {
"description": "Required. The account owner of the repository. This name is not case sensitive. Can also accept full repository path in format 'owner/repo' - the repo part will be extracted automatically.",
"examples": [
"octocat",
"octocat/Hello-World"
],
"title": "Owner",
"type": "string"
},
"path": {
"description": "Required. The path to the content in the repository. This can be a file or a directory path. Use an empty string to retrieve the contents of the repository's root directory. Leading slashes are automatically stripped (e.g., '/src/main.js' becomes 'src/main.js'). CRITICAL: Do NOT pass branch names here (e.g., 'feat/godlocal-dev', 'main', 'develop'). Branch names belong in the `ref` parameter, not the `path` parameter. The path should be the file or directory path within the repository (e.g., 'src/main.js', 'README.md'). Do NOT include the branch or ref name as a prefix in the path. For example, use 'src/main.js' not 'main/src/main.js' - the branch is specified separately via the ref parameter. File paths must include the file extension (e.g., 'README.md', not 'README'). For common files like README, LICENSE, or CHANGELOG without extensions, the action will automatically try common extensions (.md, .txt, .rst). Paths are case-sensitive and must match the exact casing in the repository (e.g., 'Docker' is different from 'docker'). If you receive a 404 'Not Found' error, verify the exact path by first listing the parent directory contents.",
"examples": [
"README.md",
"src/main.js",
"docs",
""
],
"title": "Path",
"type": "string"
},
"ref": {
"description": "The name of the commit, branch, or tag to read from. Use this parameter to specify which branch (e.g., 'feat/godlocal-dev', 'main', 'develop'), tag (e.g., 'v1.2.0'), or commit SHA you want to access. If not provided, the repository's default branch will be used. Note: Branch names should be passed here, NOT in the path parameter.",
"examples": [
"main",
"feat/godlocal-dev",
"develop",
"v1.2.0",
"c8bca7c6a66f490c70b29cf3ac3d64070049ea73"
],
"title": "Ref",
"type": "string"
},
"repo": {
"description": "Required. The name of the repository, without the `.git` extension. This name is not case sensitive.",
"examples": [
"Spoon-Knife"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"path"
],
"title": "GetRepositoryContentRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Tool to lookup a repository by owner and name using GitHub's GraphQL API. Use when you need comprehensive repository information.",
"name": "GITHUB_GET_REPOSITORY_GRAPH_QL",
"parameters": {
"description": "Request parameters for looking up a repository via GraphQL.",
"properties": {
"followRenames": {
"description": "Follow repository renames. If true, the query will follow repository renames to find the current repository.",
"title": "Follow Renames",
"type": "boolean"
},
"name": {
"description": "The name of the repository.",
"examples": [
"Hello-World",
"react",
"vscode"
],
"title": "Name",
"type": "string"
},
"owner": {
"description": "The login field of a user or organization that owns the repository.",
"examples": [
"octocat",
"facebook",
"microsoft"
],
"title": "Owner",
"type": "string"
}
},
"required": [
"owner",
"name"
],
"title": "GetRepositoryGraphQLRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Tool to lookup a repository owner (User or Organization) by login using GitHub's GraphQL API. Use when you need to determine whether a login is a user or organization and retrieve basic profile information.",
"name": "GITHUB_GET_REPOSITORY_OWNER",
"parameters": {
"description": "Request parameters for looking up a repository owner (User or Organization) by login.",
"properties": {
"login": {
"description": "The username or organization name to lookup. This is case-sensitive and must match the exact GitHub login.",
"examples": [
"github",
"octocat",
"microsoft",
"torvalds"
],
"title": "Login",
"type": "string"
}
},
"required": [
"login"
],
"title": "GetRepositoryOwnerRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves a specific user's permission level ('admin', 'write', 'read', or 'none') for a given repository, where 'maintain' role is reported as 'write' and 'triage' as 'read'.",
"name": "GITHUB_GET_REPOSITORY_PERMISSIONS_FOR_A_USER",
"parameters": {
"description": "Request schema for `GetRepositoryPermissionsForAUser`",
"properties": {
"owner": {
"description": "Account owner of the repository (case-insensitive).",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "Name of the repository, without the `.git` extension (case-insensitive).",
"examples": [
"Spoon-Knife",
"my-repo-name"
],
"title": "Repo",
"type": "string"
},
"username": {
"description": "GitHub user's handle (case-insensitive).",
"examples": [
"octocat",
"monalisa"
],
"title": "Username",
"type": "string"
}
},
"required": [
"owner",
"repo",
"username"
],
"title": "GetRepositoryPermissionsForAUserRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Gets a repository's public key, used to encrypt secrets for Dependabot.",
"name": "GITHUB_GET_REPOSITORY_PUBLIC_KEY_FOR_ENCRYPTION",
"parameters": {
"description": "Request schema for `GetRepositoryPublicKeyForEncryption`",
"properties": {
"owner": {
"description": "The account owner of the repository. The name is not case sensitive.",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository without the `.git` extension. The name is not case sensitive.",
"examples": [
"hello-world",
"my-repo"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "GetRepositoryPublicKeyForEncryptionRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves metadata for an existing Dependabot secret in a repository, without exposing its encrypted value.",
"name": "GITHUB_GET_REPOSITORY_SECRET_SECURELY",
"parameters": {
"description": "Request schema for retrieving a specific Dependabot secret from a repository.\nThis action fetches metadata about the secret, not its encrypted value.",
"properties": {
"owner": {
"description": "The username or organization name that owns the repository. This field is not case-sensitive.",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"hello-world",
"my-private-repo"
],
"title": "Repo",
"type": "string"
},
"secret_name": {
"description": "The name of the Dependabot secret to retrieve.",
"examples": [
"NPM_TOKEN",
"DOCKER_HUB_PASSWORD"
],
"title": "Secret Name",
"type": "string"
}
},
"required": [
"owner",
"repo",
"secret_name"
],
"title": "GetRepositorySecretSecurelyRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Tool to retrieve a repository security advisory using its GHSA identifier. Use when you need detailed information about a specific security vulnerability.",
"name": "GITHUB_GET_REPOSITORY_SECURITY_ADVISORY",
"parameters": {
"description": "Request schema for GetRepositorySecurityAdvisory.",
"properties": {
"ghsa_id": {
"description": "The GHSA (GitHub Security Advisory) identifier of the advisory.",
"examples": [
"GHSA-428q-q3vv-3fq3"
],
"title": "Ghsa Id",
"type": "string"
},
"owner": {
"description": "The account owner of the repository. The name is not case sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository without the `.git` extension. The name is not case sensitive.",
"examples": [
"Hello-World"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"ghsa_id"
],
"title": "GetRepositorySecurityAdvisoryRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves a specific delivery for a repository webhook, identified by its `hook_id` and `delivery_id`.",
"name": "GITHUB_GET_REPOSITORY_WEBHOOK_DELIVERY",
"parameters": {
"description": "Request schema for `GetRepositoryWebhookDelivery`",
"properties": {
"delivery_id": {
"description": "The unique identifier of a specific delivery for the webhook. This ID corresponds to a single delivery attempt. You can find this by listing webhook deliveries.",
"examples": [
193416293975,
189876589405
],
"title": "Delivery Id",
"type": "integer"
},
"hook_id": {
"description": "The unique identifier of the webhook. You can find this value in the `X-GitHub-Hook-ID` header of a webhook delivery, or by listing repository webhooks.",
"examples": [
123456789,
481552437
],
"title": "Hook Id",
"type": "integer"
},
"owner": {
"description": "The account owner of the repository. The name is not case sensitive.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository without the `.git` extension. The name is not case sensitive.",
"examples": [
"Spoon-Knife",
"docs"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"hook_id",
"delivery_id"
],
"title": "GetRepositoryWebhookDeliveryRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves all active rules for a specific branch in a GitHub repository, excluding rules in 'evaluate' or 'disabled' status.",
"name": "GITHUB_GET_RULES_FOR_A_BRANCH",
"parameters": {
"description": "Request schema for `GetRulesForABranch`",
"properties": {
"branch": {
"description": "The name of the branch. Wildcard characters are not supported for this parameter; to use wildcards, refer to the GitHub GraphQL API.",
"examples": [
"main",
"develop",
"feature/new-login"
],
"title": "Branch",
"type": "string"
},
"owner": {
"description": "The GitHub account owner of the repository. This name is not case-sensitive.",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of results to fetch.",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (max 100).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case-sensitive.",
"examples": [
"Spoon-Knife",
"my-repo"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"branch"
],
"title": "GetRulesForABranchRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Gets a single organization Dependabot secret's metadata (name, timestamps, visibility) without revealing its encrypted value. Requires admin:org scope.",
"name": "GITHUB_GET_SINGLE_ORG_SECRET_WITHOUT_DECRYPTION",
"parameters": {
"description": "Request schema for `GetSingleOrgSecretWithoutDecryption`",
"properties": {
"org": {
"description": "The name of the GitHub organization (case-insensitive).",
"examples": [
"octo-org"
],
"title": "Org",
"type": "string"
},
"secret_name": {
"description": "The name of the Dependabot secret to retrieve (case-insensitive).",
"examples": [
"MY_API_TOKEN",
"NPM_TOKEN"
],
"title": "Secret Name",
"type": "string"
}
},
"required": [
"org",
"secret_name"
],
"title": "GetSingleOrgSecretWithoutDecryptionRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves the status check protection settings for a specific branch in a GitHub repository, if status check protection is enabled for it.",
"name": "GITHUB_GET_STATUS_CHECKS_PROTECTION",
"parameters": {
"description": "Request schema for retrieving the status check protection settings of a branch.",
"properties": {
"branch": {
"description": "The name of the branch. Wildcard characters are not supported in branch names for this endpoint; for wildcard support, please refer to the GitHub GraphQL API.",
"examples": [
"main"
],
"title": "Branch",
"type": "string"
},
"owner": {
"description": "The account owner of the repository (e.g., a GitHub username or organization name). This field is not case-sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"Hello-World"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"branch"
],
"title": "GetStatusChecksProtectionRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves a user's role and membership status within a specific team in an organization. Returns membership details including role ('member' or 'maintainer') and state ('active' or 'pending'). If the user is not a member of the team, returns is_member=False with a descriptive message. Requires the authenticated user to be an organization member with visibility into the team.",
"name": "GITHUB_GET_TEAM_MEMBERSHIP_FOR_A_USER",
"parameters": {
"description": "Request schema for `GetTeamMembershipForAUser`",
"properties": {
"org": {
"description": "The name of the GitHub organization. This field is not case-sensitive.",
"examples": [
"octo-org",
"github"
],
"title": "Org",
"type": "string"
},
"team_slug": {
"description": "The URL-friendly version of the team name (slug).",
"examples": [
"justice-league",
"all-developers"
],
"title": "Team Slug",
"type": "string"
},
"username": {
"description": "The GitHub username of the user.",
"examples": [
"octocat",
"monalisa"
],
"title": "Username",
"type": "string"
}
},
"required": [
"org",
"team_slug",
"username"
],
"title": "GetTeamMembershipForAUserRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists teams with explicit push access to a protected branch, provided team restrictions are configured in the branch's protection settings; returns an empty list otherwise.",
"name": "GITHUB_GET_TEAMS_WITH_ACCESS_TO_THE_PROTECTED_BRANCH",
"parameters": {
"description": "Request to list teams with access to a protected branch.",
"properties": {
"branch": {
"description": "Name of the branch; does not support wildcard characters (for wildcard support, use the GraphQL API).",
"examples": [
"main",
"develop"
],
"title": "Branch",
"type": "string"
},
"owner": {
"description": "Username of the repository owner; not case-sensitive.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "Repository name, without the `.git` extension; not case-sensitive.",
"examples": [
"Hello-World",
"linguist"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"branch"
],
"title": "GetTeamsWithAccessToTheProtectedBranchRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Gets the profile information for the currently authenticated GitHub user, including potentially private details based on user settings.",
"name": "GITHUB_GET_THE_AUTHENTICATED_USER",
"parameters": {
"description": "Request schema for `GetTheAuthenticatedUser`.",
"properties": {},
"title": "GetTheAuthenticatedUserRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves the aggregated commit status (e.g., success, failure, pending) from all checks for a specific reference (SHA, branch, or tag) in a GitHub repository.",
"name": "GITHUB_GET_THE_COMBINED_STATUS_FOR_A_SPECIFIC_REFERENCE",
"parameters": {
"description": "Request schema for retrieving the combined status of a commit reference in a GitHub repository.",
"properties": {
"owner": {
"description": "The username or organization name that owns the repository. This field is not case-sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "The page number for the results to retrieve. See \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)\" for more information.",
"examples": [
"1",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "The number of results to display per page, with a maximum of 100. Details on pagination can be found in \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"",
"examples": [
"30",
"100"
],
"title": "Per Page",
"type": "integer"
},
"ref": {
"description": "The specific commit reference to query. This can be a commit SHA, a branch name (e.g., `heads/main`), or a tag name (e.g., `tags/v1.0.0`). See \"[Git References](https://git-scm.com/book/en/v2/Git-Internals-Git-References)\" for more details.",
"examples": [
"main",
"heads/feature-branch",
"tags/v1.0.0",
"069c5735a24b09215071404c2a536657079d3aca"
],
"title": "Ref",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"Spoon-Knife"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"ref"
],
"title": "GetTheCombinedStatusForASpecificReferenceRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves the 'punch card' data, showing hourly commit counts for each day of the week for an existing and accessible repository.",
"name": "GITHUB_GET_THE_HOURLY_COMMIT_COUNT_FOR_EACH_DAY",
"parameters": {
"description": "Request schema for retrieving the hourly commit count for each day of the week for a repository.",
"properties": {
"owner": {
"description": "The account owner of the repository. This is typically the username or organization name. The name is not case sensitive.",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. The name is not case sensitive.",
"examples": [
"Spoon-Knife",
"my-awesome-project"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "GetTheHourlyCommitCountForEachDayRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Fetches weekly commit totals and daily commit counts for the last 52 weeks for a specified GitHub repository.",
"name": "GITHUB_GET_THE_LAST_YEAR_OF_COMMIT_ACTIVITY",
"parameters": {
"description": "Request schema for retrieving the last year of commit activity for a repository.",
"properties": {
"owner": {
"description": "The username or organization name that owns the repository. This field is not case-sensitive.",
"examples": [
"octocat",
"kubernetes"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"Spoon-Knife",
"kubernetes"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "GetTheLastYearOfCommitActivityRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Fetches the latest official (non-prerelease, non-draft) release for a GitHub repository; requires at least one such published release.",
"name": "GITHUB_GET_THE_LATEST_RELEASE",
"parameters": {
"description": "Request schema for retrieving the latest release of a GitHub repository.",
"properties": {
"owner": {
"description": "The account owner of the repository (e.g., a GitHub username or organization name). This field is not case-sensitive.",
"examples": [
"octocat",
"kubernetes"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"Hello-World",
"community"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "GetTheLatestReleaseRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves the license file and its details for a repository, optionally from a specific Git reference (branch, tag, or commit SHA).",
"name": "GITHUB_GET_THE_LICENSE_FOR_A_REPOSITORY",
"parameters": {
"description": "Request schema for `GetTheLicenseForARepository`",
"properties": {
"owner": {
"description": "The account owner of the repository (username or organization name). This field is not case-sensitive.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"ref": {
"description": "The specific Git reference (branch name, tag name, or commit SHA) to retrieve the license from. For a branch, it can be formatted as `refs/heads/<branch_name>` or simply `<branch_name>`. To reference a pull request's merge commit, use `refs/pull/<pull_number>/merge`. If omitted, the license from the repository's default branch is used.",
"examples": [
"main",
"refs/heads/develop",
"v1.2.3",
"0c476bfc7EC7330390FCIF9761F27890123ABCD"
],
"title": "Ref",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"Spoon-Knife",
"linguist"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "GetTheLicenseForARepositoryRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves the detailed approval history for a specific workflow run in a GitHub repository, detailing each review's environment, state, reviewer, and comments, to track the approval process for workflows, particularly automated deployments.",
"name": "GITHUB_GET_THE_REVIEW_HISTORY_FOR_A_WORKFLOW_RUN",
"parameters": {
"description": "Request schema for `GetTheReviewHistoryForAWorkflowRun`",
"properties": {
"owner": {
"description": "The username of the account or the name of the organization that owns the repository. This name is not case-sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case-sensitive.",
"examples": [
"Spoon-Knife"
],
"title": "Repo",
"type": "string"
},
"run_id": {
"description": "The unique identifier of the workflow run for which to retrieve the review history.",
"examples": [
123456789
],
"title": "Run Id",
"type": "integer"
}
},
"required": [
"owner",
"repo",
"run_id"
],
"title": "GetTheReviewHistoryForAWorkflowRunRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves the status of a specific GitHub Pages deployment for a repository, which must have GitHub Pages enabled.",
"name": "GITHUB_GET_THE_STATUS_OF_A_GITHUB_PAGES_DEPLOYMENT",
"parameters": {
"description": "Request schema for `GetTheStatusOfAGithubPagesDeployment`",
"properties": {
"owner": {
"description": "The account owner of the repository (username or organization name). This field is not case-sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"pages_deployment_id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"description": "The unique identifier of the GitHub Pages deployment. This can be the numeric ID of the deployment or the commit SHA that triggered the deployment.",
"examples": [
42,
"123abc456def789ghi012jkl345mno678pqr90st"
],
"title": "Pages Deployment Id"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"Spoon-Knife"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"pages_deployment_id"
],
"title": "GetTheStatusOfAGithubPagesDeploymentRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Fetches the weekly commit activity (additions and deletions per week) for a repository over the past year; best for repositories with under 10,000 commits.",
"name": "GITHUB_GET_THE_WEEKLY_COMMIT_ACTIVITY",
"parameters": {
"description": "Defines the request parameters for fetching weekly commit activity for a repository.",
"properties": {
"owner": {
"description": "The account owner of the repository (e.g., a user or organization). This name is not case-sensitive.",
"examples": [
"octocat",
"kubernetes"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case-sensitive.",
"examples": [
"Spoon-Knife",
"sig-release"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "GetTheWeeklyCommitActivityRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves the weekly commit count for a repository, detailing commits by the owner and all contributors over the last 52 weeks; GitHub may return a 202 status or an empty response if statistics are being computed.",
"name": "GITHUB_GET_THE_WEEKLY_COMMIT_COUNT",
"parameters": {
"description": "Request schema for `GetTheWeeklyCommitCount`",
"properties": {
"owner": {
"description": "The account owner of the repository. This name is not case-sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case-sensitive.",
"examples": [
"Spoon-Knife"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "GetTheWeeklyCommitCountRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves a random quote from GitHub's 'Zen of GitHub' collection, reflecting GitHub's design philosophies and offering humorous insights, useful for displaying GitHub wisdom or a lighthearted message.",
"name": "GITHUB_GET_THE_ZEN_OF_GITHUB",
"parameters": {
"description": "Request model for retrieving a Zen of GitHub quote.",
"properties": {},
"title": "GetTheZenOfGithubRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Fetches the top 10 most viewed content paths for a repository from the last 14 days.",
"name": "GITHUB_GET_TOP_REFERRAL_PATHS",
"parameters": {
"description": "Request to fetch the top referral paths for a repository.",
"properties": {
"owner": {
"description": "Username of the account or organization owning the repository (not case-sensitive).",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "Repository name, without the `.git` extension (not case-sensitive).",
"examples": [
"Spoon-Knife",
"my-awesome-project"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "GetTopReferralPathsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Fetches the top 10 websites that referred traffic to a repository within the last 14 days.",
"name": "GITHUB_GET_TOP_REFERRAL_SOURCES",
"parameters": {
"description": "Parameters to fetch top referral sources for a repository.",
"properties": {
"owner": {
"description": "The username or organization name that owns the repository. This field is case-insensitive.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is case-insensitive.",
"examples": [
"Spoon-Knife",
"docs"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "GetTopReferralSourcesRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves a GitHub user's profile information by their unique numeric account ID. Use when you know the user's numeric ID rather than their username.",
"name": "GITHUB_GET_USER_BY_ID",
"parameters": {
"description": "Request to retrieve a GitHub user's information using their numeric account ID.",
"properties": {
"account_id": {
"description": "The unique numeric identifier of the GitHub user account to retrieve.",
"examples": [
1,
583231,
12345678
],
"title": "Account Id",
"type": "integer"
}
},
"required": [
"account_id"
],
"title": "GetUserByIdRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Tool to get an item from a user-owned project in GitHub Projects V2. Use when you need to retrieve details about a specific item (issue, pull request, or draft issue) in a user's project board.",
"name": "GITHUB_GET_USER_PROJECT_ITEM",
"parameters": {
"description": "Request parameters for getting a user project item.",
"properties": {
"fields": {
"description": "Limit results to specific fields, by their IDs. If not specified, the title field will be returned. Example: fields[]=123&fields[]=456&fields[]=789 or fields=123,456,789",
"examples": [
"123,456,789",
"123"
],
"title": "Fields",
"type": "string"
},
"item_id": {
"description": "The unique identifier of the project item.",
"examples": [
157096956
],
"title": "Item Id",
"type": "integer"
},
"project_number": {
"description": "The project's number.",
"examples": [
1,
22
],
"title": "Project Number",
"type": "integer"
},
"username": {
"description": "The handle for the GitHub user account.",
"examples": [
"octocat",
"composio-dev"
],
"title": "Username",
"type": "string"
}
},
"required": [
"username",
"project_number",
"item_id"
],
"title": "GetUserProjectItemRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Tool to get attestations by subject digest for a GitHub user. Use when you need to retrieve attestation data for a specific artifact or resource identified by its subject digest.",
"name": "GITHUB_GET_USERS_ATTESTATIONS",
"parameters": {
"description": "Request parameters for getting attestations by subject digest.",
"properties": {
"after": {
"description": "A cursor, as given in the Link header. If specified, the query only searches for results after this cursor.",
"examples": [
"Y3Vyc29yOnYyOpK5MjAyNC0wMS0wMVQwMDowMDowMCswMDowMM4AAAAA"
],
"title": "After",
"type": "string"
},
"before": {
"description": "A cursor, as given in the Link header. If specified, the query only searches for results before this cursor.",
"examples": [
"Y3Vyc29yOnYyOpK5MjAyNC0wMS0wMVQwMDowMDowMCswMDowMM4AAAAA"
],
"title": "Before",
"type": "string"
},
"per_page": {
"default": 30,
"description": "The number of results per page (max 100). For more information, see 'Using pagination in the REST API'.",
"examples": [
30,
50,
100
],
"maximum": 100,
"minimum": 1,
"title": "Per Page",
"type": "integer"
},
"predicate_type": {
"description": "Optional filter for fetching attestations with a given predicate type. This option accepts 'provenance', 'sbom', 'release', or freeform text for custom predicate types.",
"examples": [
"provenance",
"sbom",
"release"
],
"title": "Predicate Type",
"type": "string"
},
"subject_digest": {
"description": "Subject digest for the attestation. Must include the algorithm prefix (e.g., 'sha256:' or 'sha512:').",
"examples": [
"sha256:360587aa9781d76b825f65f56f40738ceaf79b5ef5996b4b121c7544c9f7d662"
],
"title": "Subject Digest",
"type": "string"
},
"username": {
"description": "The handle for the GitHub user account.",
"examples": [
"grafana",
"octocat"
],
"title": "Username",
"type": "string"
}
},
"required": [
"username",
"subject_digest"
],
"title": "GetUsersAttestationsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Tool to list GitHub Projects v2 for a specified user. Use when you need to retrieve all projects owned by a user with pagination support.",
"name": "GITHUB_GET_USERS_PROJECTS_V2",
"parameters": {
"description": "Request schema for listing projects for a user.",
"properties": {
"after": {
"description": "A cursor, as given in the Link header. If specified, the query only searches for results after this cursor. For more information, see 'Using pagination in the REST API'.",
"examples": [
"Y3Vyc29yOnYyOpK5MjAyMS0wMS0wMVQwMDowMDowMC0wNzowMM4AAA=="
],
"title": "After",
"type": "string"
},
"before": {
"description": "A cursor, as given in the Link header. If specified, the query only searches for results before this cursor. For more information, see 'Using pagination in the REST API'.",
"examples": [
"Y3Vyc29yOnYyOpK5MjAyMS0wMS0wMVQwMDowMDowMC0wNzowMM4AAA=="
],
"title": "Before",
"type": "string"
},
"per_page": {
"description": "The number of results per page (max 100). For more information, see 'Using pagination in the REST API'.",
"examples": [
30,
50,
100
],
"maximum": 100,
"minimum": 1,
"title": "Per Page",
"type": "integer"
},
"q": {
"description": "Limit results to projects of the specified type.",
"examples": [
"github"
],
"title": "Q",
"type": "string"
},
"username": {
"description": "The handle for the GitHub user account.",
"examples": [
"octocat",
"torvalds"
],
"title": "Username",
"type": "string"
}
},
"required": [
"username"
],
"title": "GetUsersProjectsV2Request",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists users with explicit push access to a protected branch, provided its protection rule restricts pushes to specific users.",
"name": "GITHUB_GET_USERS_WITH_ACCESS_TO_THE_PROTECTED_BRANCH",
"parameters": {
"description": "Request schema to list users with access to a protected branch.",
"properties": {
"branch": {
"description": "The name of the protected branch. Wildcard characters are not supported. To use wildcard characters in branch names, refer to the GitHub GraphQL API.",
"examples": [
"main",
"develop",
"feature/integration"
],
"title": "Branch",
"type": "string"
},
"owner": {
"description": "The account owner of the repository (e.g., user or organization). This name is not case-sensitive.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case-sensitive.",
"examples": [
"Spoon-Knife",
"docs"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"branch"
],
"title": "GetUsersWithAccessToTheProtectedBranchRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Tool to retrieve the authenticated user's profile information via GitHub GraphQL. Use when working with GraphQL queries or need viewer details in GraphQL format.",
"name": "GITHUB_GET_VIEWER_GRAPHQL",
"parameters": {
"description": "Request parameters for retrieving the authenticated viewer's information via GraphQL.",
"properties": {},
"title": "GetViewerGraphqlRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Gets the access level settings for a private repository, determining how workflows outside this repository can use its actions and reusable workflows.",
"name": "GITHUB_GET_WORKFLOW_EXTERNAL_ACCESS",
"parameters": {
"description": "Request schema for `GetWorkflowExternalAccess` action, specifying the repository owner and name.",
"properties": {
"owner": {
"description": "The account owner of the repository. This name is not case-sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case-sensitive.",
"examples": [
"hello-world"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "GetWorkflowExternalAccessRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves detailed information for a specific job within a GitHub Actions workflow run, given its `job_id` which must be valid for the specified repository's workflow.",
"name": "GITHUB_GET_WORKFLOW_RUN_JOB",
"parameters": {
"description": "Request schema for retrieving detailed information about a specific job within a GitHub Actions workflow run.",
"properties": {
"job_id": {
"description": "The unique numerical identifier of the job to retrieve.",
"examples": [
123456789
],
"title": "Job Id",
"type": "integer"
},
"owner": {
"description": "The username or organization name that owns the repository. This field is not case-sensitive.",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"hello-world",
"my-awesome-project"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"job_id"
],
"title": "GetWorkflowRunJobRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Gets the billable time, in milliseconds, for a specific workflow run, detailing time spent on various operating systems.",
"name": "GITHUB_GET_WORKFLOW_RUN_USAGE",
"parameters": {
"description": "Request schema for `GetWorkflowRunUsage`",
"properties": {
"owner": {
"description": "Account owner of the repository (username or organization name); not case sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository without the `.git` extension. The name is not case sensitive. ",
"examples": [
"Hello-World"
],
"title": "Repo",
"type": "string"
},
"run_id": {
"description": "Unique identifier of the workflow run.",
"examples": [
123456789
],
"title": "Run Id",
"type": "integer"
}
},
"required": [
"owner",
"repo",
"run_id"
],
"title": "GetWorkflowRunUsageRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Gets the billable time (in milliseconds, broken down by runner OS) for a specific workflow within a repository for the current billing cycle.",
"name": "GITHUB_GET_WORKFLOW_USAGE",
"parameters": {
"description": "Request schema for `GetWorkflowUsage`, providing details to identify the specific workflow.",
"properties": {
"owner": {
"description": "The username or organization name that owns the repository. This field is not case-sensitive.",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"hello-world",
"my-project"
],
"title": "Repo",
"type": "string"
},
"workflow_id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"description": "The unique identifier (ID) of the workflow or the workflow's file name (e.g., 'main.yml').",
"examples": [
12345,
"ci-workflow.yml"
],
"title": "Workflow Id"
}
},
"required": [
"owner",
"repo",
"workflow_id"
],
"title": "GetWorkflowUsageRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Use to determine if the authenticated user has starred a specific GitHub repository, which is confirmed by an HTTP 204 status (resulting in an empty dictionary in the response data); the action fails (e.g., HTTP 404) if the repository is not starred or does not exist.",
"name": "GITHUB_IS_REPOSITORY_STARRED_BY_THE_USER",
"parameters": {
"description": "Request model for specifying the repository to check for a star by the authenticated user.",
"properties": {
"owner": {
"description": "The account owner of the repository (e.g., a user or organization). This name is not case sensitive.",
"examples": [
"octocat",
"example-org"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case sensitive.",
"examples": [
"Spoon-Knife",
"my-project"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "CheckIfRepoStarredByAuthUserRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists accepted assignments (student repositories created after acceptance) for an existing GitHub Classroom assignment, identified by its unique `assignment_id`.",
"name": "GITHUB_LIST_ACCEPTED_ASSIGNMENTS_FOR_AN_ASSIGNMENT",
"parameters": {
"description": "Request schema for `ListAcceptedAssignmentsForAnAssignment`",
"properties": {
"assignment_id": {
"description": "The unique identifier of the classroom assignment for which to list accepted assignments.",
"examples": [
"12345"
],
"title": "Assignment Id",
"type": "integer"
},
"page": {
"default": 1,
"description": "Page number of the results to retrieve.",
"examples": [
"1",
"2"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results to return per page (maximum 100).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
}
},
"required": [
"assignment_id"
],
"title": "ListAcceptedAssignmentsForAnAssignmentRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists repositories that the authenticated user can access through a specific GitHub App installation. Returns repositories where the user has explicit :read, :write, or :admin permission through the installation. The response includes permission details for each repository. Prerequisites: - Requires a GitHub App user access token (not a standard OAuth token) - Use GITHUB_LIST_APP_INSTALLATIONS first to get valid installation IDs",
"name": "GITHUB_LIST_ACCESSIBLE_REPOSITORIES",
"parameters": {
"description": "Request for listing repositories accessible via a GitHub App installation.\n\nNOTE: This endpoint requires a GitHub App user access token (not a standard OAuth token).\nFirst use GITHUB_LIST_APP_INSTALLATIONS to get valid installation IDs.",
"properties": {
"installation_id": {
"description": "The unique identifier of the GitHub App installation. Get this from GITHUB_LIST_APP_INSTALLATIONS.",
"examples": [
1234567,
8765432
],
"title": "Installation Id",
"type": "integer"
},
"page": {
"default": 1,
"description": "Page number of the results to fetch, starting from 1.",
"examples": [
1,
2,
5
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of repositories to return per page. Maximum is 100.",
"examples": [
30,
50,
100
],
"title": "Per Page",
"type": "integer"
}
},
"required": [
"installation_id"
],
"title": "ListRepositoriesAccessibleToTheUserAccessTokenRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists GitHub App installations accessible to the authenticated user via their access token, including installation details, permissions, and repository access.",
"name": "GITHUB_LIST_APP_INSTALLATIONS",
"parameters": {
"description": "Request schema for `ListAppInstallationsUser`",
"properties": {
"page": {
"default": 1,
"description": "Page number of results to retrieve.",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (max 100).",
"title": "Per Page",
"type": "integer"
}
},
"title": "ListAppInstallationsUserRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists GitHub Apps with push access to a repository's protected branch.",
"name": "GITHUB_LIST_APPS_WITH_ACCESS_TO_THE_PROTECTED_BRANCH",
"parameters": {
"description": "Request schema for retrieving GitHub Apps with access to a protected branch.",
"properties": {
"branch": {
"description": "The name of the protected branch. This name cannot contain wildcard characters. To work with branch names containing wildcard characters, please use the GitHub GraphQL API.",
"examples": [
"main",
"develop",
"release/v1.0"
],
"title": "Branch",
"type": "string"
},
"owner": {
"description": "The username of the account that owns the repository. This field is not case-sensitive.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the '.git' extension. This field is not case-sensitive.",
"examples": [
"Spoon-Knife",
"linguist"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"branch"
],
"title": "ListAppsWithAccessToTheProtectedBranchRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists GitHub Actions workflow artifacts for a specified repository, which must exist.",
"name": "GITHUB_LIST_ARTIFACTS_FOR_A_REPOSITORY",
"parameters": {
"description": "Request schema for the `ListArtifactsForARepository` action, detailing parameters to list workflow artifacts from a GitHub repository.",
"properties": {
"name": {
"description": "The name of an artifact. If specified, only artifacts with this exact name will be returned. If omitted or null, all artifacts in the repository are listed (subject to pagination).",
"examples": [
"my-build-artifact",
"coverage-report-linux"
],
"title": "Name",
"type": "string"
},
"owner": {
"description": "The account owner of the repository (username or organization name). This field is not case-sensitive.",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "The page number of the results to fetch, starting from 1.",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "The number of artifacts to return per page; maximum is 100.",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"Hello-World",
"my-awesome-project"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListArtifactsForARepositoryRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists users who can be assigned to issues in a repository, typically those with push access.",
"name": "GITHUB_LIST_ASSIGNEES",
"parameters": {
"description": "Request schema to list assignees for a repository, including pagination.",
"properties": {
"owner": {
"description": "The username of the account that owns the repository. This is not case-sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of results (1-indexed).",
"examples": [
1,
2
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page. Max 100.",
"examples": [
30,
100
],
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This is not case-sensitive.",
"examples": [
"Spoon-Knife"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListAssigneesRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists all assignments for a given GitHub Classroom `classroom_id`; the classroom must exist and be accessible.",
"name": "GITHUB_LIST_ASSIGNMENTS_FOR_A_CLASSROOM",
"parameters": {
"description": "Request schema for `ListAssignmentsForAClassroom`",
"properties": {
"classroom_id": {
"description": "The unique identifier of the classroom for which assignments are to be listed.",
"examples": [
"12345",
"67890"
],
"title": "Classroom Id",
"type": "integer"
},
"page": {
"default": 1,
"description": "Specifies the page number of the results to retrieve. For more information, refer to GitHub's documentation on [Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).",
"examples": [
"1",
"2",
"10"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Specifies the number of results to return per page (maximum is 100). For more information, refer to GitHub's documentation on [Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
}
},
"required": [
"classroom_id"
],
"title": "ListAssignmentsForAClassroomRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Tool to list attestation repositories for an organization. Use when you need to discover which repositories in an organization have attestations. Attestations provide verifiable metadata about software artifacts.",
"name": "GITHUB_LIST_ATTESTATION_REPOSITORIES",
"parameters": {
"description": "Request schema for listing attestation repositories for an organization.",
"properties": {
"after": {
"description": "A cursor, as given in the Link header. If specified, the query only searches for results after this cursor. For more information, see 'Using pagination in the REST API'.",
"examples": [
"Y3Vyc29yOnYyOpK5MjAyMS0wMS0wMVQwMDowMDowMC0wNzowMAo="
],
"title": "After",
"type": "string"
},
"before": {
"description": "A cursor, as given in the Link header. If specified, the query only searches for results before this cursor. For more information, see 'Using pagination in the REST API'.",
"examples": [
"Y3Vyc29yOnYyOpK5MjAyMS0wMS0wMVQwMDowMDowMC0wNzowMAo="
],
"title": "Before",
"type": "string"
},
"org": {
"description": "The organization name. The name is not case sensitive.",
"examples": [
"github",
"octocat-org"
],
"title": "Org",
"type": "string"
},
"per_page": {
"description": "The number of results per page (max 100). For more information, see 'Using pagination in the REST API'.",
"examples": [
30,
50,
100
],
"maximum": 100,
"minimum": 1,
"title": "Per Page",
"type": "integer"
}
},
"required": [
"org"
],
"title": "ListAttestationRepositoriesRequest",
"type": "object"
}
},
"type": "function"
}
]