GitHub · Capability

GitHub Repos API — Sets

GitHub Repos API — Sets. 19 operations. Lead operation: Set Selected Repositories Enabled For Github Actions In An Organization. Self-contained Naftiko capability covering one Github business surface.

Run with Naftiko GithubSets

What You Can Do

PUT
Setselectedrepositoriesenabledforgithubactionsinanorganization — Set Selected Repositories Enabled For Github Actions In An Organization
/v1/orgs/{org}/actions/permissions/repositories
PUT
Setrepositoryaccessforselfhostedrunnergroupinanorganization — Set Repository Access For Self-hosted Runner Group In An Organization
/v1/orgs/{org}/actions/runner-groups/{runner-group-id}/repositories
PUT
Setselectedrepositoriesforanorganizationsecret — Set Selected Repositories For An Organization Secret
/v1/orgs/{org}/actions/secrets/{secret-name}/repositories
PUT
Setselectedrepositoriesforanorganizationvariable — Set Selected Repositories For An Organization Variable
/v1/orgs/{org}/actions/variables/{name}/repositories
PUT
Setselectedrepositoriesforanorganizationsecret — Set Selected Repositories For An Organization Secret
/v1/orgs/{org}/dependabot/secrets/{secret-name}/repositories
PATCH
Setgithubactionscacheusagepolicyforrepository — Set Github Actions Cache Usage Policy For Repository
/v1/repos/{owner}/{repo}/actions/cache/usage-policy
PUT
Setthecustomizationtemplateforanoidcsubjectclaimforrepository — Set The Customization Template For An Oidc Subject Claim For Repository
/v1/repos/{owner}/{repo}/actions/oidc/customization/sub
PUT
Setgithubactionspermissionsforrepository — Set Github Actions Permissions For Repository
/v1/repos/{owner}/{repo}/actions/permissions
PUT
Setthelevelofaccessforworkflowsoutsideoftherepository — Set The Level Of Access For Workflows Outside Of The Repository
/v1/repos/{owner}/{repo}/actions/permissions/access
PUT
Setallowedactionsforrepository — Set Allowed Actions For Repository
/v1/repos/{owner}/{repo}/actions/permissions/selected-actions
PUT
Setdefaultworkflowpermissionsforrepository — Set Default Workflow Permissions For Repository
/v1/repos/{owner}/{repo}/actions/permissions/workflow
PUT
Setcustomlabelsforselfhostedrunnerforrepository — Set Custom Labels For Self-hosted Runner For Repository
/v1/repos/{owner}/{repo}/actions/runners/{runner-id}/labels
POST
Setadminbranchprotection — Set Admin Branch Protection
/v1/repos/{owner}/{repo}/branches/{branch}/protection/enforce-admins
PUT
Setstatuscheckcontexts — Set Status Check Contexts
/v1/repos/{owner}/{repo}/branches/{branch}/protection/required-status-checks/contexts
PUT
Setappaccessrestrictions — Set App Access Restrictions
/v1/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps
PUT
Setteamaccessrestrictions — Set Team Access Restrictions
/v1/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams
PUT
Setuseraccessrestrictions — Set User Access Restrictions
/v1/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users
PUT
Setlabelsforanissue — Set Labels For An Issue
/v1/repos/{owner}/{repo}/issues/{issue-number}/labels
PUT
Setrepositorysubscription — Set Repository Subscription
/v1/repos/{owner}/{repo}/subscription

MCP Tools

set-selected-repositories-enabled-github

Set Selected Repositories Enabled For Github Actions In An Organization

idempotent
set-repository-access-self-hosted

Set Repository Access For Self-hosted Runner Group In An Organization

idempotent
set-selected-repositories-organization-secret

Set Selected Repositories For An Organization Secret

idempotent
set-selected-repositories-organization-variable

Set Selected Repositories For An Organization Variable

idempotent
set-selected-repositories-organization-secret-2

Set Selected Repositories For An Organization Secret

idempotent
set-github-actions-cache-usage

Set Github Actions Cache Usage Policy For Repository

idempotent
set-customization-template-oidc-subject

Set The Customization Template For An Oidc Subject Claim For Repository

idempotent
set-github-actions-permissions-repository

Set Github Actions Permissions For Repository

idempotent
set-level-access-workflows-outside

Set The Level Of Access For Workflows Outside Of The Repository

idempotent
set-allowed-actions-repository

Set Allowed Actions For Repository

idempotent
set-default-workflow-permissions-repository

Set Default Workflow Permissions For Repository

idempotent
set-custom-labels-self-hosted

Set Custom Labels For Self-hosted Runner For Repository

idempotent
set-admin-branch-protection

Set Admin Branch Protection

set-status-check-contexts

Set Status Check Contexts

idempotent
set-app-access-restrictions

Set App Access Restrictions

idempotent
set-team-access-restrictions

Set Team Access Restrictions

idempotent
set-user-access-restrictions

Set User Access Restrictions

idempotent
set-labels-issue

Set Labels For An Issue

idempotent
set-repository-subscription

Set Repository Subscription

idempotent

Capability Spec

temp-sets.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: GitHub Repos API — Sets
  description: 'GitHub Repos API — Sets. 19 operations. Lead operation: Set Selected Repositories Enabled For Github Actions
    In An Organization. Self-contained Naftiko capability covering one Github business surface.'
  tags:
  - Github
  - Sets
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GITHUB_API_KEY: GITHUB_API_KEY
capability:
  consumes:
  - type: http
    namespace: temp-sets
    baseUri: ''
    description: GitHub Repos API — Sets business capability. Self-contained, no shared references.
    resources:
    - name: orgs-org-actions-permissions-repositories
      path: /orgs/{org}/actions/permissions/repositories
      operations:
      - name: setselectedrepositoriesenabledforgithubactionsinanorganization
        method: PUT
        description: Set Selected Repositories Enabled For Github Actions In An Organization
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: orgs-org-actions-runner-groups-runner_group_id-repositories
      path: /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories
      operations:
      - name: setrepositoryaccessforselfhostedrunnergroupinanorganization
        method: PUT
        description: Set Repository Access For Self-hosted Runner Group In An Organization
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: orgs-org-actions-secrets-secret_name-repositories
      path: /orgs/{org}/actions/secrets/{secret_name}/repositories
      operations:
      - name: setselectedrepositoriesforanorganizationsecret
        method: PUT
        description: Set Selected Repositories For An Organization Secret
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: orgs-org-actions-variables-name-repositories
      path: /orgs/{org}/actions/variables/{name}/repositories
      operations:
      - name: setselectedrepositoriesforanorganizationvariable
        method: PUT
        description: Set Selected Repositories For An Organization Variable
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: orgs-org-dependabot-secrets-secret_name-repositories
      path: /orgs/{org}/dependabot/secrets/{secret_name}/repositories
      operations:
      - name: setselectedrepositoriesforanorganizationsecret
        method: PUT
        description: Set Selected Repositories For An Organization Secret
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-actions-cache-usage-policy
      path: /repos/{owner}/{repo}/actions/cache/usage-policy
      operations:
      - name: setgithubactionscacheusagepolicyforrepository
        method: PATCH
        description: Set Github Actions Cache Usage Policy For Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-actions-oidc-customization-sub
      path: /repos/{owner}/{repo}/actions/oidc/customization/sub
      operations:
      - name: setthecustomizationtemplateforanoidcsubjectclaimforrepository
        method: PUT
        description: Set The Customization Template For An Oidc Subject Claim For Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-actions-permissions
      path: /repos/{owner}/{repo}/actions/permissions
      operations:
      - name: setgithubactionspermissionsforrepository
        method: PUT
        description: Set Github Actions Permissions For Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-actions-permissions-access
      path: /repos/{owner}/{repo}/actions/permissions/access
      operations:
      - name: setthelevelofaccessforworkflowsoutsideoftherepository
        method: PUT
        description: Set The Level Of Access For Workflows Outside Of The Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-actions-permissions-selected-actions
      path: /repos/{owner}/{repo}/actions/permissions/selected-actions
      operations:
      - name: setallowedactionsforrepository
        method: PUT
        description: Set Allowed Actions For Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: repos-owner-repo-actions-permissions-workflow
      path: /repos/{owner}/{repo}/actions/permissions/workflow
      operations:
      - name: setdefaultworkflowpermissionsforrepository
        method: PUT
        description: Set Default Workflow Permissions For Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-actions-runners-runner_id-labels
      path: /repos/{owner}/{repo}/actions/runners/{runner_id}/labels
      operations:
      - name: setcustomlabelsforselfhostedrunnerforrepository
        method: PUT
        description: Set Custom Labels For Self-hosted Runner For Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-branches-branch-protection-enforce_admins
      path: /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins
      operations:
      - name: setadminbranchprotection
        method: POST
        description: Set Admin Branch Protection
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-branches-branch-protection-required_status_checks-contexts
      path: /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts
      operations:
      - name: setstatuscheckcontexts
        method: PUT
        description: Set Status Check Contexts
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: repos-owner-repo-branches-branch-protection-restrictions-apps
      path: /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps
      operations:
      - name: setappaccessrestrictions
        method: PUT
        description: Set App Access Restrictions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: repos-owner-repo-branches-branch-protection-restrictions-teams
      path: /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams
      operations:
      - name: setteamaccessrestrictions
        method: PUT
        description: Set Team Access Restrictions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: repos-owner-repo-branches-branch-protection-restrictions-users
      path: /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users
      operations:
      - name: setuseraccessrestrictions
        method: PUT
        description: Set User Access Restrictions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: repos-owner-repo-issues-issue_number-labels
      path: /repos/{owner}/{repo}/issues/{issue_number}/labels
      operations:
      - name: setlabelsforanissue
        method: PUT
        description: Set Labels For An Issue
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: repos-owner-repo-subscription
      path: /repos/{owner}/{repo}/subscription
      operations:
      - name: setrepositorysubscription
        method: PUT
        description: Set Repository Subscription
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    authentication:
      type: bearer
      token: '{{env.GITHUB_API_KEY}}'
  exposes:
  - type: rest
    namespace: temp-sets-rest
    port: 8080
    description: REST adapter for GitHub Repos API — Sets. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/orgs/{org}/actions/permissions/repositories
      name: orgs-org-actions-permissions-repositories
      description: REST surface for orgs-org-actions-permissions-repositories.
      operations:
      - method: PUT
        name: setselectedrepositoriesenabledforgithubactionsinanorganization
        description: Set Selected Repositories Enabled For Github Actions In An Organization
        call: temp-sets.setselectedrepositoriesenabledforgithubactionsinanorganization
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/actions/runner-groups/{runner-group-id}/repositories
      name: orgs-org-actions-runner-groups-runner-group-id-repositories
      description: REST surface for orgs-org-actions-runner-groups-runner_group_id-repositories.
      operations:
      - method: PUT
        name: setrepositoryaccessforselfhostedrunnergroupinanorganization
        description: Set Repository Access For Self-hosted Runner Group In An Organization
        call: temp-sets.setrepositoryaccessforselfhostedrunnergroupinanorganization
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/actions/secrets/{secret-name}/repositories
      name: orgs-org-actions-secrets-secret-name-repositories
      description: REST surface for orgs-org-actions-secrets-secret_name-repositories.
      operations:
      - method: PUT
        name: setselectedrepositoriesforanorganizationsecret
        description: Set Selected Repositories For An Organization Secret
        call: temp-sets.setselectedrepositoriesforanorganizationsecret
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/actions/variables/{name}/repositories
      name: orgs-org-actions-variables-name-repositories
      description: REST surface for orgs-org-actions-variables-name-repositories.
      operations:
      - method: PUT
        name: setselectedrepositoriesforanorganizationvariable
        description: Set Selected Repositories For An Organization Variable
        call: temp-sets.setselectedrepositoriesforanorganizationvariable
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/dependabot/secrets/{secret-name}/repositories
      name: orgs-org-dependabot-secrets-secret-name-repositories
      description: REST surface for orgs-org-dependabot-secrets-secret_name-repositories.
      operations:
      - method: PUT
        name: setselectedrepositoriesforanorganizationsecret
        description: Set Selected Repositories For An Organization Secret
        call: temp-sets.setselectedrepositoriesforanorganizationsecret
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/actions/cache/usage-policy
      name: repos-owner-repo-actions-cache-usage-policy
      description: REST surface for repos-owner-repo-actions-cache-usage-policy.
      operations:
      - method: PATCH
        name: setgithubactionscacheusagepolicyforrepository
        description: Set Github Actions Cache Usage Policy For Repository
        call: temp-sets.setgithubactionscacheusagepolicyforrepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/actions/oidc/customization/sub
      name: repos-owner-repo-actions-oidc-customization-sub
      description: REST surface for repos-owner-repo-actions-oidc-customization-sub.
      operations:
      - method: PUT
        name: setthecustomizationtemplateforanoidcsubjectclaimforrepository
        description: Set The Customization Template For An Oidc Subject Claim For Repository
        call: temp-sets.setthecustomizationtemplateforanoidcsubjectclaimforrepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/actions/permissions
      name: repos-owner-repo-actions-permissions
      description: REST surface for repos-owner-repo-actions-permissions.
      operations:
      - method: PUT
        name: setgithubactionspermissionsforrepository
        description: Set Github Actions Permissions For Repository
        call: temp-sets.setgithubactionspermissionsforrepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/actions/permissions/access
      name: repos-owner-repo-actions-permissions-access
      description: REST surface for repos-owner-repo-actions-permissions-access.
      operations:
      - method: PUT
        name: setthelevelofaccessforworkflowsoutsideoftherepository
        description: Set The Level Of Access For Workflows Outside Of The Repository
        call: temp-sets.setthelevelofaccessforworkflowsoutsideoftherepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/actions/permissions/selected-actions
      name: repos-owner-repo-actions-permissions-selected-actions
      description: REST surface for repos-owner-repo-actions-permissions-selected-actions.
      operations:
      - method: PUT
        name: setallowedactionsforrepository
        description: Set Allowed Actions For Repository
        call: temp-sets.setallowedactionsforrepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/actions/permissions/workflow
      name: repos-owner-repo-actions-permissions-workflow
      description: REST surface for repos-owner-repo-actions-permissions-workflow.
      operations:
      - method: PUT
        name: setdefaultworkflowpermissionsforrepository
        description: Set Default Workflow Permissions For Repository
        call: temp-sets.setdefaultworkflowpermissionsforrepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/actions/runners/{runner-id}/labels
      name: repos-owner-repo-actions-runners-runner-id-labels
      description: REST surface for repos-owner-repo-actions-runners-runner_id-labels.
      operations:
      - method: PUT
        name: setcustomlabelsforselfhostedrunnerforrepository
        description: Set Custom Labels For Self-hosted Runner For Repository
        call: temp-sets.setcustomlabelsforselfhostedrunnerforrepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/branches/{branch}/protection/enforce-admins
      name: repos-owner-repo-branches-branch-protection-enforce-admins
      description: REST surface for repos-owner-repo-branches-branch-protection-enforce_admins.
      operations:
      - method: POST
        name: setadminbranchprotection
        description: Set Admin Branch Protection
        call: temp-sets.setadminbranchprotection
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/branches/{branch}/protection/required-status-checks/contexts
      name: repos-owner-repo-branches-branch-protection-required-status-checks-contexts
      description: REST surface for repos-owner-repo-branches-branch-protection-required_status_checks-contexts.
      operations:
      - method: PUT
        name: setstatuscheckcontexts
        description: Set Status Check Contexts
        call: temp-sets.setstatuscheckcontexts
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps
      name: repos-owner-repo-branches-branch-protection-restrictions-apps
      description: REST surface for repos-owner-repo-branches-branch-protection-restrictions-apps.
      operations:
      - method: PUT
        name: setappaccessrestrictions
        description: Set App Access Restrictions
        call: temp-sets.setappaccessrestrictions
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams
      name: repos-owner-repo-branches-branch-protection-restrictions-teams
      description: REST surface for repos-owner-repo-branches-branch-protection-restrictions-teams.
      operations:
      - method: PUT
        name: setteamaccessrestrictions
        description: Set Team Access Restrictions
        call: temp-sets.setteamaccessrestrictions
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users
      name: repos-owner-repo-branches-branch-protection-restrictions-users
      description: REST surface for repos-owner-repo-branches-branch-protection-restrictions-users.
      operations:
      - method: PUT
        name: setuseraccessrestrictions
        description: Set User Access Restrictions
        call: temp-sets.setuseraccessrestrictions
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/issues/{issue-number}/labels
      name: repos-owner-repo-issues-issue-number-labels
      description: REST surface for repos-owner-repo-issues-issue_number-labels.
      operations:
      - method: PUT
        name: setlabelsforanissue
        description: Set Labels For An Issue
        call: temp-sets.setlabelsforanissue
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/subscription
      name: repos-owner-repo-subscription
      description: REST surface for repos-owner-repo-subscription.
      operations:
      - method: PUT
        name: setrepositorysubscription
        description: Set Repository Subscription
        call: temp-sets.setrepositorysubscription
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: temp-sets-mcp
    port: 9090
    transport: http
    description: MCP adapter for GitHub Repos API — Sets. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: set-selected-repositories-enabled-github
      description: Set Selected Repositories Enabled For Github Actions In An Organization
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: temp-sets.setselectedrepositoriesenabledforgithubactionsinanorganization
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-repository-access-self-hosted
      description: Set Repository Access For Self-hosted Runner Group In An Organization
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: temp-sets.setrepositoryaccessforselfhostedrunnergroupinanorganization
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-selected-repositories-organization-secret
      description: Set Selected Repositories For An Organization Secret
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: temp-sets.setselectedrepositoriesforanorganizationsecret
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-selected-repositories-organization-variable
      description: Set Selected Repositories For An Organization Variable
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: temp-sets.setselectedrepositoriesforanorganizationvariable
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-selected-repositories-organization-secret-2
      description: Set Selected Repositories For An Organization Secret
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: temp-sets.setselectedrepositoriesforanorganizationsecret
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-github-actions-cache-usage
      description: Set Github Actions Cache Usage Policy For Repository
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: temp-sets.setgithubactionscacheusagepolicyforrepository
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-customization-template-oidc-subject
      description: Set The Customization Template For An Oidc Subject Claim For Repository
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: temp-sets.setthecustomizationtemplateforanoidcsubjectclaimforrepository
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept

# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/github/refs/heads/main/capabilities/temp-sets.yaml