GitHub · Capability

github-repos-api — Create

github-repos-api — Create. 5 operations. Lead operation: GitHub Create Pull Request. Self-contained Naftiko capability covering one Github business surface.

Run with Naftiko GithubCreate

What You Can Do

POST
Createpullrequest — GitHub Create Pull Request
/v1/repos/{owner}/{repo}/pulls
POST
Createreactionforpullrequestreviewcomment — GitHub Create Reaction for Pull Request Review Comment
/v1/repos/{owner}/{repo}/pulls/comments/{comment-id}/reactions
POST
Createreviewcommentforpullrequest — GitHub Create Review Comment for Pull Request
/v1/repos/{owner}/{repo}/pulls/{pull-number}/comments
POST
Createreplyforreviewcomment — GitHub Create Reply for Review Comment
/v1/repos/{owner}/{repo}/pulls/{pull-number}/comments/{comment-id}/replies
POST
Createreviewforpullrequest — GitHub Create Review for Pull Request
/v1/repos/{owner}/{repo}/pulls/{pull-number}/reviews

MCP Tools

github-create-pull-request

GitHub Create Pull Request

github-create-reaction-pull-request

GitHub Create Reaction for Pull Request Review Comment

github-create-review-comment-pull

GitHub Create Review Comment for Pull Request

github-create-reply-review-comment

GitHub Create Reply for Review Comment

github-create-review-pull-request

GitHub Create Review for Pull Request

Capability Spec

repo-pulls-create.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: github-repos-api — Create
  description: 'github-repos-api — Create. 5 operations. Lead operation: GitHub Create Pull Request. Self-contained Naftiko
    capability covering one Github business surface.'
  tags:
  - Github
  - Create
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GITHUB_API_KEY: GITHUB_API_KEY
capability:
  consumes:
  - type: http
    namespace: repo-pulls-create
    baseUri: ''
    description: github-repos-api — Create business capability. Self-contained, no shared references.
    resources:
    - name: repos-owner-repo-pulls
      path: /repos/{owner}/{repo}/pulls
      operations:
      - name: createpullrequest
        method: POST
        description: GitHub Create Pull Request
        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-pulls-comments-comment_id-reactions
      path: /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions
      operations:
      - name: createreactionforpullrequestreviewcomment
        method: POST
        description: GitHub Create Reaction for Pull Request Review Comment
        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-pulls-pull_number-comments
      path: /repos/{owner}/{repo}/pulls/{pull_number}/comments
      operations:
      - name: createreviewcommentforpullrequest
        method: POST
        description: GitHub Create Review Comment for Pull Request
        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-pulls-pull_number-comments-comment_id-replies
      path: /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies
      operations:
      - name: createreplyforreviewcomment
        method: POST
        description: GitHub Create Reply for Review Comment
        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-pulls-pull_number-reviews
      path: /repos/{owner}/{repo}/pulls/{pull_number}/reviews
      operations:
      - name: createreviewforpullrequest
        method: POST
        description: GitHub Create Review for Pull Request
        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: repo-pulls-create-rest
    port: 8080
    description: REST adapter for github-repos-api — Create. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/repos/{owner}/{repo}/pulls
      name: repos-owner-repo-pulls
      description: REST surface for repos-owner-repo-pulls.
      operations:
      - method: POST
        name: createpullrequest
        description: GitHub Create Pull Request
        call: repo-pulls-create.createpullrequest
        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}/pulls/comments/{comment-id}/reactions
      name: repos-owner-repo-pulls-comments-comment-id-reactions
      description: REST surface for repos-owner-repo-pulls-comments-comment_id-reactions.
      operations:
      - method: POST
        name: createreactionforpullrequestreviewcomment
        description: GitHub Create Reaction for Pull Request Review Comment
        call: repo-pulls-create.createreactionforpullrequestreviewcomment
        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}/pulls/{pull-number}/comments
      name: repos-owner-repo-pulls-pull-number-comments
      description: REST surface for repos-owner-repo-pulls-pull_number-comments.
      operations:
      - method: POST
        name: createreviewcommentforpullrequest
        description: GitHub Create Review Comment for Pull Request
        call: repo-pulls-create.createreviewcommentforpullrequest
        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}/pulls/{pull-number}/comments/{comment-id}/replies
      name: repos-owner-repo-pulls-pull-number-comments-comment-id-replies
      description: REST surface for repos-owner-repo-pulls-pull_number-comments-comment_id-replies.
      operations:
      - method: POST
        name: createreplyforreviewcomment
        description: GitHub Create Reply for Review Comment
        call: repo-pulls-create.createreplyforreviewcomment
        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}/pulls/{pull-number}/reviews
      name: repos-owner-repo-pulls-pull-number-reviews
      description: REST surface for repos-owner-repo-pulls-pull_number-reviews.
      operations:
      - method: POST
        name: createreviewforpullrequest
        description: GitHub Create Review for Pull Request
        call: repo-pulls-create.createreviewforpullrequest
        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: repo-pulls-create-mcp
    port: 9090
    transport: http
    description: MCP adapter for github-repos-api — Create. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: github-create-pull-request
      description: GitHub Create Pull Request
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: repo-pulls-create.createpullrequest
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: github-create-reaction-pull-request
      description: GitHub Create Reaction for Pull Request Review Comment
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: repo-pulls-create.createreactionforpullrequestreviewcomment
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: github-create-review-comment-pull
      description: GitHub Create Review Comment for Pull Request
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: repo-pulls-create.createreviewcommentforpullrequest
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: github-create-reply-review-comment
      description: GitHub Create Reply for Review Comment
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: repo-pulls-create.createreplyforreviewcomment
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: github-create-review-pull-request
      description: GitHub Create Review for Pull Request
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: repo-pulls-create.createreviewforpullrequest
      with:
        Authorization: tools.Authorization
        X-GitHub-Api-Version: tools.X-GitHub-Api-Version
        Accept: tools.Accept
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.