GitHub · Capability

GitHub v3 REST API — Gists

GitHub v3 REST API — Gists. 20 operations. Lead operation: GitHub List Gists for the Authenticated User. Self-contained Naftiko capability covering one Github business surface.

Run with Naftiko GithubGists

What You Can Do

GET
Gistslist — GitHub List Gists for the Authenticated User
/v1/gists
POST
Gistscreate — GitHub Create a Gist
/v1/gists
GET
Gistslistpublic — GitHub List Public Gists
/v1/gists/public
GET
Gistsliststarred — GitHub List Starred Gists
/v1/gists/starred
GET
Gistsget — GitHub Get a Gist
/v1/gists/{gist-id}
PATCH
Gistsupdate — GitHub Update a Gist
/v1/gists/{gist-id}
DELETE
Gistsdelete — GitHub Delete a Gist
/v1/gists/{gist-id}
GET
Gistslistcomments — GitHub List Gist Comments
/v1/gists/{gist-id}/comments
POST
Gistscreatecomment — GitHub Create a Gist Comment
/v1/gists/{gist-id}/comments
GET
Gistsgetcomment — GitHub Get a Gist Comment
/v1/gists/{gist-id}/comments/{comment-id}
PATCH
Gistsupdatecomment — GitHub Update a Gist Comment
/v1/gists/{gist-id}/comments/{comment-id}
DELETE
Gistsdeletecomment — GitHub Delete a Gist Comment
/v1/gists/{gist-id}/comments/{comment-id}
GET
Gistslistcommits — GitHub List Gist Commits
/v1/gists/{gist-id}/commits
GET
Gistslistforks — GitHub List Gist Forks
/v1/gists/{gist-id}/forks
POST
Gistsfork — GitHub Fork a Gist
/v1/gists/{gist-id}/forks
GET
Gistscheckisstarred — GitHub Check if a Gist is Starred
/v1/gists/{gist-id}/star
PUT
Gistsstar — GitHub Star a Gist
/v1/gists/{gist-id}/star
DELETE
Gistsunstar — GitHub Unstar a Gist
/v1/gists/{gist-id}/star
GET
Gistsgetrevision — GitHub Get a Gist Revision
/v1/gists/{gist-id}/{sha}
GET
Gistslistforuser — GitHub List Gists for a User
/v1/users/{username}/gists

MCP Tools

github-list-gists-authenticated-user

GitHub List Gists for the Authenticated User

read-only idempotent
github-create-gist

GitHub Create a Gist

github-list-public-gists

GitHub List Public Gists

read-only idempotent
github-list-starred-gists

GitHub List Starred Gists

read-only idempotent
github-get-gist

GitHub Get a Gist

read-only idempotent
github-update-gist

GitHub Update a Gist

idempotent
github-delete-gist

GitHub Delete a Gist

idempotent
github-list-gist-comments

GitHub List Gist Comments

read-only idempotent
github-create-gist-comment

GitHub Create a Gist Comment

github-get-gist-comment

GitHub Get a Gist Comment

read-only idempotent
github-update-gist-comment

GitHub Update a Gist Comment

idempotent
github-delete-gist-comment

GitHub Delete a Gist Comment

idempotent
github-list-gist-commits

GitHub List Gist Commits

read-only idempotent
github-list-gist-forks

GitHub List Gist Forks

read-only idempotent
github-fork-gist

GitHub Fork a Gist

github-check-if-gist-is

GitHub Check if a Gist is Starred

read-only idempotent
github-star-gist

GitHub Star a Gist

idempotent
github-unstar-gist

GitHub Unstar a Gist

idempotent
github-get-gist-revision

GitHub Get a Gist Revision

read-only idempotent
github-list-gists-user

GitHub List Gists for a User

read-only idempotent

Capability Spec

github-gists.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: GitHub v3 REST API — Gists
  description: 'GitHub v3 REST API — Gists. 20 operations. Lead operation: GitHub List Gists for the Authenticated User. Self-contained
    Naftiko capability covering one Github business surface.'
  tags:
  - Github
  - Gists
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GITHUB_API_KEY: GITHUB_API_KEY
capability:
  consumes:
  - type: http
    namespace: github-gists
    baseUri: ''
    description: GitHub v3 REST API — Gists business capability. Self-contained, no shared references.
    resources:
    - name: gists
      path: /gists
      operations:
      - name: gistslist
        method: GET
        description: GitHub List Gists for the Authenticated User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: gistscreate
        method: POST
        description: GitHub Create a Gist
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: gists-public
      path: /gists/public
      operations:
      - name: gistslistpublic
        method: GET
        description: GitHub List Public Gists
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: gists-starred
      path: /gists/starred
      operations:
      - name: gistsliststarred
        method: GET
        description: GitHub List Starred Gists
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: gists-gist_id
      path: /gists/{gist_id}
      operations:
      - name: gistsget
        method: GET
        description: GitHub Get a Gist
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: gistsupdate
        method: PATCH
        description: GitHub Update a Gist
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: gistsdelete
        method: DELETE
        description: GitHub Delete a Gist
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: gists-gist_id-comments
      path: /gists/{gist_id}/comments
      operations:
      - name: gistslistcomments
        method: GET
        description: GitHub List Gist Comments
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: gistscreatecomment
        method: POST
        description: GitHub Create a Gist Comment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: gists-gist_id-comments-comment_id
      path: /gists/{gist_id}/comments/{comment_id}
      operations:
      - name: gistsgetcomment
        method: GET
        description: GitHub Get a Gist Comment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: gistsupdatecomment
        method: PATCH
        description: GitHub Update a Gist Comment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: gistsdeletecomment
        method: DELETE
        description: GitHub Delete a Gist Comment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: gists-gist_id-commits
      path: /gists/{gist_id}/commits
      operations:
      - name: gistslistcommits
        method: GET
        description: GitHub List Gist Commits
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: gists-gist_id-forks
      path: /gists/{gist_id}/forks
      operations:
      - name: gistslistforks
        method: GET
        description: GitHub List Gist Forks
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: gistsfork
        method: POST
        description: GitHub Fork a Gist
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: gists-gist_id-star
      path: /gists/{gist_id}/star
      operations:
      - name: gistscheckisstarred
        method: GET
        description: GitHub Check if a Gist is Starred
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: gistsstar
        method: PUT
        description: GitHub Star a Gist
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: gistsunstar
        method: DELETE
        description: GitHub Unstar a Gist
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: gists-gist_id-sha
      path: /gists/{gist_id}/{sha}
      operations:
      - name: gistsgetrevision
        method: GET
        description: GitHub Get a Gist Revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: sha
          in: path
          type: string
          required: true
    - name: users-username-gists
      path: /users/{username}/gists
      operations:
      - name: gistslistforuser
        method: GET
        description: GitHub List Gists for a User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    namespace: github-gists-rest
    port: 8080
    description: REST adapter for GitHub v3 REST API — Gists. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/gists
      name: gists
      description: REST surface for gists.
      operations:
      - method: GET
        name: gistslist
        description: GitHub List Gists for the Authenticated User
        call: github-gists.gistslist
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: gistscreate
        description: GitHub Create a Gist
        call: github-gists.gistscreate
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/gists/public
      name: gists-public
      description: REST surface for gists-public.
      operations:
      - method: GET
        name: gistslistpublic
        description: GitHub List Public Gists
        call: github-gists.gistslistpublic
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/gists/starred
      name: gists-starred
      description: REST surface for gists-starred.
      operations:
      - method: GET
        name: gistsliststarred
        description: GitHub List Starred Gists
        call: github-gists.gistsliststarred
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/gists/{gist-id}
      name: gists-gist-id
      description: REST surface for gists-gist_id.
      operations:
      - method: GET
        name: gistsget
        description: GitHub Get a Gist
        call: github-gists.gistsget
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: gistsupdate
        description: GitHub Update a Gist
        call: github-gists.gistsupdate
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: gistsdelete
        description: GitHub Delete a Gist
        call: github-gists.gistsdelete
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/gists/{gist-id}/comments
      name: gists-gist-id-comments
      description: REST surface for gists-gist_id-comments.
      operations:
      - method: GET
        name: gistslistcomments
        description: GitHub List Gist Comments
        call: github-gists.gistslistcomments
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: gistscreatecomment
        description: GitHub Create a Gist Comment
        call: github-gists.gistscreatecomment
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/gists/{gist-id}/comments/{comment-id}
      name: gists-gist-id-comments-comment-id
      description: REST surface for gists-gist_id-comments-comment_id.
      operations:
      - method: GET
        name: gistsgetcomment
        description: GitHub Get a Gist Comment
        call: github-gists.gistsgetcomment
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: gistsupdatecomment
        description: GitHub Update a Gist Comment
        call: github-gists.gistsupdatecomment
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: gistsdeletecomment
        description: GitHub Delete a Gist Comment
        call: github-gists.gistsdeletecomment
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/gists/{gist-id}/commits
      name: gists-gist-id-commits
      description: REST surface for gists-gist_id-commits.
      operations:
      - method: GET
        name: gistslistcommits
        description: GitHub List Gist Commits
        call: github-gists.gistslistcommits
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/gists/{gist-id}/forks
      name: gists-gist-id-forks
      description: REST surface for gists-gist_id-forks.
      operations:
      - method: GET
        name: gistslistforks
        description: GitHub List Gist Forks
        call: github-gists.gistslistforks
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: gistsfork
        description: GitHub Fork a Gist
        call: github-gists.gistsfork
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/gists/{gist-id}/star
      name: gists-gist-id-star
      description: REST surface for gists-gist_id-star.
      operations:
      - method: GET
        name: gistscheckisstarred
        description: GitHub Check if a Gist is Starred
        call: github-gists.gistscheckisstarred
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: gistsstar
        description: GitHub Star a Gist
        call: github-gists.gistsstar
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: gistsunstar
        description: GitHub Unstar a Gist
        call: github-gists.gistsunstar
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/gists/{gist-id}/{sha}
      name: gists-gist-id-sha
      description: REST surface for gists-gist_id-sha.
      operations:
      - method: GET
        name: gistsgetrevision
        description: GitHub Get a Gist Revision
        call: github-gists.gistsgetrevision
        with:
          sha: rest.sha
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{username}/gists
      name: users-username-gists
      description: REST surface for users-username-gists.
      operations:
      - method: GET
        name: gistslistforuser
        description: GitHub List Gists for a User
        call: github-gists.gistslistforuser
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: github-gists-mcp
    port: 9090
    transport: http
    description: MCP adapter for GitHub v3 REST API — Gists. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: github-list-gists-authenticated-user
      description: GitHub List Gists for the Authenticated User
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: github-gists.gistslist
      outputParameters:
      - type: object
        mapping: $.
    - name: github-create-gist
      description: GitHub Create a Gist
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: github-gists.gistscreate
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: github-list-public-gists
      description: GitHub List Public Gists
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: github-gists.gistslistpublic
      outputParameters:
      - type: object
        mapping: $.
    - name: github-list-starred-gists
      description: GitHub List Starred Gists
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: github-gists.gistsliststarred
      outputParameters:
      - type: object
        mapping: $.
    - name: github-get-gist
      description: GitHub Get a Gist
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: github-gists.gistsget
      outputParameters:
      - type: object
        mapping: $.
    - name: github-update-gist
      description: GitHub Update a Gist
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: github-gists.gistsupdate
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: github-delete-gist
      description: GitHub Delete a Gist
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: github-gists.gistsdelete
      outputParameters:
      - type: object
        mapping: $.
    - name: github-list-gist-comments
      description: GitHub List Gist Comments
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: github-gists.gistslistcomments
      outputParameters:
      - type: object
        mapping: $.
    - name: github-create-gist-comment
      description: GitHub Create a Gist Comment
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: github-gists.gistscreatecomment
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: github-get-gist-comment
      description: GitHub Get a Gist Comment
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: github-gists.gistsgetcomment
      outputParameters:
      - type: object
        mapping: $.
    - name: github-update-gist-comment
      description: GitHub Update a Gist Comment
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: github-gists.gistsupdatecomment
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: github-delete-gist-comment
      description: GitHub Delete a Gist Comment
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: github-gists.gistsdeletecomment
      outputParameters:
      - type: object
        mapping: $.
    - name: github-list-gist-commits
      description: GitHub List Gist Commits
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: github-gists.gistslistcommits
      outputParameters:
      - type: object
        mapping: $.
    - name: github-list-gist-forks
      description: GitHub List Gist Forks
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: github-gists.gistslistforks
      outputParameters:
      - type: object
        mapping: $.
    - name: github-fork-gist
      description: GitHub Fork a Gist
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: github-gists.gistsfork
      outputParameters:
      - type: object
        mapping: $.
    - name: github-check-if-gist-is
      description: GitHub Check if a Gist is Starred
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: github-gists.gistscheckisstarred
      outputParameters:
      - type: object
        mapping: $.
    - name: github-star-gist
      description: GitHub Star a Gist
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: github-gists.gistsstar
      outputParameters:
      - type: object
        mapping: $.
    - name: github-unstar-gist
      description: GitHub Unstar a Gist
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: github-gists.gistsunstar
      outputParameters:
      - type: object
        mapping: $.
    - name: github-get-gist-revision
      description: GitHub Get a Gist Revision
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: github-gists.gistsgetrevision
      with:
        sha: tools.sha
      outputParameters:
      - type: object
        mapping: $.
    - name: github-list-gists-user
      description: GitHub List Gists for a User
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: github-gists.gistslistforuser
      outputParameters:
      - type: object
        mapping: $.