naftiko: 1.0.0-alpha2 info: label: GitHub Actions API — Secrets description: 'GitHub Actions API — Secrets. 13 operations. Lead operation: Github Actions List Organization Secrets. Self-contained Naftiko capability covering one Github Actions business surface.' tags: - Github Actions - Secrets created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: GITHUB_ACTIONS_API_KEY: GITHUB_ACTIONS_API_KEY capability: consumes: - type: http namespace: github-actions-secrets baseUri: https://api.github.com description: GitHub Actions API — Secrets business capability. Self-contained, no shared references. resources: - name: orgs-org-actions-secrets path: /orgs/{org}/actions/secrets operations: - name: listorgsecrets method: GET description: Github Actions List Organization Secrets outputRawFormat: json outputParameters: - name: result type: object value: $. - name: orgs-org-actions-secrets-public-key path: /orgs/{org}/actions/secrets/public-key operations: - name: getorgpublickey method: GET description: Github Actions Get an Organization Public Key outputRawFormat: json outputParameters: - name: result type: object value: $. - name: orgs-org-actions-secrets-secret_name path: /orgs/{org}/actions/secrets/{secret_name} operations: - name: getorgsecret method: GET description: Github Actions Get an Organization Secret outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createorupdateorgsecret method: PUT description: Github Actions Create or Update an Organization Secret outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleteorgsecret method: DELETE description: Github Actions Delete an Organization Secret outputRawFormat: json outputParameters: - name: result type: object value: $. - name: orgs-org-actions-secrets-secret_name-repositories path: /orgs/{org}/actions/secrets/{secret_name}/repositories operations: - name: listselectedreposfororgsecret method: GET description: Github Actions List Selected Repositories for an Organization Secret outputRawFormat: json outputParameters: - name: result type: object value: $. - name: setselectedreposfororgsecret method: PUT description: Github Actions Set Selected Repositories for an Organization Secret outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: repos-owner-repo-actions-organization-secrets path: /repos/{owner}/{repo}/actions/organization-secrets operations: - name: listrepoorgsecrets method: GET description: Github Actions List Repository Organization Secrets outputRawFormat: json outputParameters: - name: result type: object value: $. - name: repos-owner-repo-actions-secrets path: /repos/{owner}/{repo}/actions/secrets operations: - name: listreposecrets method: GET description: Github Actions List Repository Secrets outputRawFormat: json outputParameters: - name: result type: object value: $. - name: repos-owner-repo-actions-secrets-public-key path: /repos/{owner}/{repo}/actions/secrets/public-key operations: - name: getrepopublickey method: GET description: Github Actions Get a Repository Public Key outputRawFormat: json outputParameters: - name: result type: object value: $. - name: repos-owner-repo-actions-secrets-secret_name path: /repos/{owner}/{repo}/actions/secrets/{secret_name} operations: - name: getreposecret method: GET description: Github Actions Get a Repository Secret outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createorupdatereposecret method: PUT description: Github Actions Create or Update a Repository Secret outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletereposecret method: DELETE description: Github Actions Delete a Repository Secret outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.GITHUB_ACTIONS_API_KEY}}' exposes: - type: rest namespace: github-actions-secrets-rest port: 8080 description: REST adapter for GitHub Actions API — Secrets. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/orgs/{org}/actions/secrets name: orgs-org-actions-secrets description: REST surface for orgs-org-actions-secrets. operations: - method: GET name: listorgsecrets description: Github Actions List Organization Secrets call: github-actions-secrets.listorgsecrets outputParameters: - type: object mapping: $. - path: /v1/orgs/{org}/actions/secrets/public-key name: orgs-org-actions-secrets-public-key description: REST surface for orgs-org-actions-secrets-public-key. operations: - method: GET name: getorgpublickey description: Github Actions Get an Organization Public Key call: github-actions-secrets.getorgpublickey outputParameters: - type: object mapping: $. - path: /v1/orgs/{org}/actions/secrets/{secret-name} name: orgs-org-actions-secrets-secret-name description: REST surface for orgs-org-actions-secrets-secret_name. operations: - method: GET name: getorgsecret description: Github Actions Get an Organization Secret call: github-actions-secrets.getorgsecret outputParameters: - type: object mapping: $. - method: PUT name: createorupdateorgsecret description: Github Actions Create or Update an Organization Secret call: github-actions-secrets.createorupdateorgsecret with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteorgsecret description: Github Actions Delete an Organization Secret call: github-actions-secrets.deleteorgsecret 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: GET name: listselectedreposfororgsecret description: Github Actions List Selected Repositories for an Organization Secret call: github-actions-secrets.listselectedreposfororgsecret outputParameters: - type: object mapping: $. - method: PUT name: setselectedreposfororgsecret description: Github Actions Set Selected Repositories for an Organization Secret call: github-actions-secrets.setselectedreposfororgsecret with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/repos/{owner}/{repo}/actions/organization-secrets name: repos-owner-repo-actions-organization-secrets description: REST surface for repos-owner-repo-actions-organization-secrets. operations: - method: GET name: listrepoorgsecrets description: Github Actions List Repository Organization Secrets call: github-actions-secrets.listrepoorgsecrets outputParameters: - type: object mapping: $. - path: /v1/repos/{owner}/{repo}/actions/secrets name: repos-owner-repo-actions-secrets description: REST surface for repos-owner-repo-actions-secrets. operations: - method: GET name: listreposecrets description: Github Actions List Repository Secrets call: github-actions-secrets.listreposecrets outputParameters: - type: object mapping: $. - path: /v1/repos/{owner}/{repo}/actions/secrets/public-key name: repos-owner-repo-actions-secrets-public-key description: REST surface for repos-owner-repo-actions-secrets-public-key. operations: - method: GET name: getrepopublickey description: Github Actions Get a Repository Public Key call: github-actions-secrets.getrepopublickey outputParameters: - type: object mapping: $. - path: /v1/repos/{owner}/{repo}/actions/secrets/{secret-name} name: repos-owner-repo-actions-secrets-secret-name description: REST surface for repos-owner-repo-actions-secrets-secret_name. operations: - method: GET name: getreposecret description: Github Actions Get a Repository Secret call: github-actions-secrets.getreposecret outputParameters: - type: object mapping: $. - method: PUT name: createorupdatereposecret description: Github Actions Create or Update a Repository Secret call: github-actions-secrets.createorupdatereposecret with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletereposecret description: Github Actions Delete a Repository Secret call: github-actions-secrets.deletereposecret outputParameters: - type: object mapping: $. - type: mcp namespace: github-actions-secrets-mcp port: 9090 transport: http description: MCP adapter for GitHub Actions API — Secrets. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: github-actions-list-organization-secrets description: Github Actions List Organization Secrets hints: readOnly: true destructive: false idempotent: true call: github-actions-secrets.listorgsecrets outputParameters: - type: object mapping: $. - name: github-actions-get-organization-public description: Github Actions Get an Organization Public Key hints: readOnly: true destructive: false idempotent: true call: github-actions-secrets.getorgpublickey outputParameters: - type: object mapping: $. - name: github-actions-get-organization-secret description: Github Actions Get an Organization Secret hints: readOnly: true destructive: false idempotent: true call: github-actions-secrets.getorgsecret outputParameters: - type: object mapping: $. - name: github-actions-create-update-organization description: Github Actions Create or Update an Organization Secret hints: readOnly: false destructive: false idempotent: true call: github-actions-secrets.createorupdateorgsecret with: body: tools.body outputParameters: - type: object mapping: $. - name: github-actions-delete-organization-secret description: Github Actions Delete an Organization Secret hints: readOnly: false destructive: true idempotent: true call: github-actions-secrets.deleteorgsecret outputParameters: - type: object mapping: $. - name: github-actions-list-selected-repositories description: Github Actions List Selected Repositories for an Organization Secret hints: readOnly: true destructive: false idempotent: true call: github-actions-secrets.listselectedreposfororgsecret outputParameters: - type: object mapping: $. - name: github-actions-set-selected-repositories description: Github Actions Set Selected Repositories for an Organization Secret hints: readOnly: false destructive: false idempotent: true call: github-actions-secrets.setselectedreposfororgsecret with: body: tools.body outputParameters: - type: object mapping: $. - name: github-actions-list-repository-organization description: Github Actions List Repository Organization Secrets hints: readOnly: true destructive: false idempotent: true call: github-actions-secrets.listrepoorgsecrets outputParameters: - type: object mapping: $. - name: github-actions-list-repository-secrets description: Github Actions List Repository Secrets hints: readOnly: true destructive: false idempotent: true call: github-actions-secrets.listreposecrets outputParameters: - type: object mapping: $. - name: github-actions-get-repository-public description: Github Actions Get a Repository Public Key hints: readOnly: true destructive: false idempotent: true call: github-actions-secrets.getrepopublickey outputParameters: - type: object mapping: $. - name: github-actions-get-repository-secret description: Github Actions Get a Repository Secret hints: readOnly: true destructive: false idempotent: true call: github-actions-secrets.getreposecret outputParameters: - type: object mapping: $. - name: github-actions-create-update-repository description: Github Actions Create or Update a Repository Secret hints: readOnly: false destructive: false idempotent: true call: github-actions-secrets.createorupdatereposecret with: body: tools.body outputParameters: - type: object mapping: $. - name: github-actions-delete-repository-secret description: Github Actions Delete a Repository Secret hints: readOnly: false destructive: true idempotent: true call: github-actions-secrets.deletereposecret outputParameters: - type: object mapping: $.