Shopify · Capability

Shopify API — Comments

Shopify API — Comments. 10 operations. Lead operation: Shopify Retrieves A List Of Comments. Self-contained Naftiko capability covering one Shopify business surface.

Run with Naftiko ShopifyComments

What You Can Do

GET
Deprecated202001getcomments — Shopify Retrieves A List Of Comments
/v1/admin/api/2020-01/comments-json
POST
Deprecated202001createcomments — Shopify Creates A Comment For An Article
/v1/admin/api/2020-01/comments-json
GET
Deprecated202001getcommentscount — Shopify Retrieves A Count Of Comments
/v1/admin/api/2020-01/comments/count-json
GET
Deprecated202001getcommentsparamcommentid — Shopify Retrieves A Single Comment By Its Id
/v1/admin/api/2020-01/comments/comment-id-json
PUT
Deprecated202001updatecommentsparamcommentid — Shopify Updates A Comment Of An Article
/v1/admin/api/2020-01/comments/comment-id-json
POST
Deprecated202001createcommentsparamcommentidapprove — Shopify Approves A Comment
/v1/admin/api/2020-01/comments/{comment-id}/approve-json
POST
Deprecated202001createcommentsparamcommentidnotspam — Shopify Marks A Comment As Not Spam
/v1/admin/api/2020-01/comments/{comment-id}/not-spam-json
POST
Deprecated202001createcommentsparamcommentidremove — Shopify Removes A Comment
/v1/admin/api/2020-01/comments/{comment-id}/remove-json
POST
Deprecated202001createcommentsparamcommentidrestore — Shopify Restores A Previously Removed Comment
/v1/admin/api/2020-01/comments/{comment-id}/restore-json
POST
Deprecated202001createcommentsparamcommentidspam — Shopify Marks A Comment As Spam
/v1/admin/api/2020-01/comments/{comment-id}/spam-json

MCP Tools

shopify-retrieves-list-comments

Shopify Retrieves A List Of Comments

read-only idempotent
shopify-creates-comment-article

Shopify Creates A Comment For An Article

shopify-retrieves-count-comments

Shopify Retrieves A Count Of Comments

read-only idempotent
shopify-retrieves-single-comment-its

Shopify Retrieves A Single Comment By Its Id

read-only idempotent
shopify-updates-comment-article

Shopify Updates A Comment Of An Article

idempotent
shopify-approves-comment

Shopify Approves A Comment

shopify-marks-comment-not-spam

Shopify Marks A Comment As Not Spam

shopify-removes-comment

Shopify Removes A Comment

shopify-restores-previously-removed-comment

Shopify Restores A Previously Removed Comment

shopify-marks-comment-spam

Shopify Marks A Comment As Spam

Capability Spec

shopify-comments.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Shopify  API — Comments
  description: 'Shopify  API — Comments. 10 operations. Lead operation: Shopify Retrieves A List Of Comments. Self-contained
    Naftiko capability covering one Shopify business surface.'
  tags:
  - Shopify
  - Comments
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    SHOPIFY_API_KEY: SHOPIFY_API_KEY
capability:
  consumes:
  - type: http
    namespace: shopify-comments
    baseUri: ''
    description: Shopify  API — Comments business capability. Self-contained, no shared references.
    resources:
    - name: admin-api-2020-01-comments.json
      path: /admin/api/2020-01/comments.json
      operations:
      - name: deprecated202001getcomments
        method: GET
        description: Shopify Retrieves A List Of Comments
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: limit
          in: query
          type: string
          description: The maximum number of results to retrieve.
        - name: since_id
          in: query
          type: string
          description: Restrict results to after the specified ID.
        - name: created_at_min
          in: query
          type: string
          description: 'Show comments created after date (format: 2014-04-25T16:15:47-04:00).'
        - name: created_at_max
          in: query
          type: string
          description: 'Show comments created before date (format: 2014-04-25T16:15:47-04:00).'
        - name: updated_at_min
          in: query
          type: string
          description: 'Show comments last updated after date (format: 2014-04-25T16:15:47-04:00).'
        - name: updated_at_max
          in: query
          type: string
          description: 'Show comments last updated before date (format: 2014-04-25T16:15:47-04:00).'
        - name: published_at_min
          in: query
          type: string
          description: 'Show comments published after date (format: 2014-04-25T16:15:47-04:00).'
        - name: published_at_max
          in: query
          type: string
          description: 'Show comments published before date (format: 2014-04-25T16:15:47-04:00).'
        - name: fields
          in: query
          type: string
          description: Show only certain fields, specified by a comma-separated list of field names.
        - name: published_status
          in: query
          type: string
          description: Filter results by their published status.
        - name: status
          in: query
          type: string
          description: Filter results by their status.
        - name: article_id
          in: query
          type: integer
          description: article_id
        - name: blog_id
          in: query
          type: integer
          description: blog_id
      - name: deprecated202001createcomments
        method: POST
        description: Shopify Creates A Comment For An Article
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: admin-api-2020-01-comments-count.json
      path: /admin/api/2020-01/comments/count.json
      operations:
      - name: deprecated202001getcommentscount
        method: GET
        description: Shopify Retrieves A Count Of Comments
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: created_at_min
          in: query
          type: string
          description: 'Count comments created after date (format: 2014-04-25T16:15:47-04:00).'
        - name: created_at_max
          in: query
          type: string
          description: 'Count comments created before date (format: 2014-04-25T16:15:47-04:00).'
        - name: updated_at_min
          in: query
          type: string
          description: 'Count comments last updated after date (format: 2014-04-25T16:15:47-04:00).'
        - name: updated_at_max
          in: query
          type: string
          description: 'Count comments last updated before date (format: 2014-04-25T16:15:47-04:00).'
        - name: published_at_min
          in: query
          type: string
          description: 'Count comments published after date (format: 2014-04-25T16:15:47-04:00).'
        - name: published_at_max
          in: query
          type: string
          description: 'Count comments published before date (format: 2014-04-25T16:15:47-04:00).'
        - name: published_status
          in: query
          type: string
          description: Retrieve a count of comments with a given published status.
        - name: status
          in: query
          type: string
          description: Retrieve a count of comments with a given status.
        - name: article_id
          in: query
          type: integer
          description: article_id
        - name: blog_id
          in: query
          type: integer
          description: blog_id
    - name: admin-api-2020-01-comments-comment_id}.json
      path: /admin/api/2020-01/comments/{comment_id}.json
      operations:
      - name: deprecated202001getcommentsparamcommentid
        method: GET
        description: Shopify Retrieves A Single Comment By Its Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: comment_id
          in: path
          type: string
          description: comment_id
          required: true
        - name: fields
          in: query
          type: string
          description: Show only certain fields, specified by a comma-separated list of field names.
      - name: deprecated202001updatecommentsparamcommentid
        method: PUT
        description: Shopify Updates A Comment Of An Article
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: comment_id
          in: path
          type: string
          description: comment_id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: admin-api-2020-01-comments-comment_id-approve.json
      path: /admin/api/2020-01/comments/{comment_id}/approve.json
      operations:
      - name: deprecated202001createcommentsparamcommentidapprove
        method: POST
        description: Shopify Approves A Comment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: comment_id
          in: path
          type: string
          description: comment_id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: admin-api-2020-01-comments-comment_id-not_spam.json
      path: /admin/api/2020-01/comments/{comment_id}/not_spam.json
      operations:
      - name: deprecated202001createcommentsparamcommentidnotspam
        method: POST
        description: Shopify Marks A Comment As Not Spam
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: comment_id
          in: path
          type: string
          description: comment_id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: admin-api-2020-01-comments-comment_id-remove.json
      path: /admin/api/2020-01/comments/{comment_id}/remove.json
      operations:
      - name: deprecated202001createcommentsparamcommentidremove
        method: POST
        description: Shopify Removes A Comment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: comment_id
          in: path
          type: string
          description: comment_id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: admin-api-2020-01-comments-comment_id-restore.json
      path: /admin/api/2020-01/comments/{comment_id}/restore.json
      operations:
      - name: deprecated202001createcommentsparamcommentidrestore
        method: POST
        description: Shopify Restores A Previously Removed Comment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: comment_id
          in: path
          type: string
          description: comment_id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: admin-api-2020-01-comments-comment_id-spam.json
      path: /admin/api/2020-01/comments/{comment_id}/spam.json
      operations:
      - name: deprecated202001createcommentsparamcommentidspam
        method: POST
        description: Shopify Marks A Comment As Spam
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: comment_id
          in: path
          type: string
          description: comment_id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
  exposes:
  - type: rest
    namespace: shopify-comments-rest
    port: 8080
    description: REST adapter for Shopify  API — Comments. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/admin/api/2020-01/comments-json
      name: admin-api-2020-01-comments-json
      description: REST surface for admin-api-2020-01-comments.json.
      operations:
      - method: GET
        name: deprecated202001getcomments
        description: Shopify Retrieves A List Of Comments
        call: shopify-comments.deprecated202001getcomments
        with:
          limit: rest.limit
          since_id: rest.since_id
          created_at_min: rest.created_at_min
          created_at_max: rest.created_at_max
          updated_at_min: rest.updated_at_min
          updated_at_max: rest.updated_at_max
          published_at_min: rest.published_at_min
          published_at_max: rest.published_at_max
          fields: rest.fields
          published_status: rest.published_status
          status: rest.status
          article_id: rest.article_id
          blog_id: rest.blog_id
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: deprecated202001createcomments
        description: Shopify Creates A Comment For An Article
        call: shopify-comments.deprecated202001createcomments
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/admin/api/2020-01/comments/count-json
      name: admin-api-2020-01-comments-count-json
      description: REST surface for admin-api-2020-01-comments-count.json.
      operations:
      - method: GET
        name: deprecated202001getcommentscount
        description: Shopify Retrieves A Count Of Comments
        call: shopify-comments.deprecated202001getcommentscount
        with:
          created_at_min: rest.created_at_min
          created_at_max: rest.created_at_max
          updated_at_min: rest.updated_at_min
          updated_at_max: rest.updated_at_max
          published_at_min: rest.published_at_min
          published_at_max: rest.published_at_max
          published_status: rest.published_status
          status: rest.status
          article_id: rest.article_id
          blog_id: rest.blog_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/admin/api/2020-01/comments/comment-id-json
      name: admin-api-2020-01-comments-comment-id-json
      description: REST surface for admin-api-2020-01-comments-comment_id}.json.
      operations:
      - method: GET
        name: deprecated202001getcommentsparamcommentid
        description: Shopify Retrieves A Single Comment By Its Id
        call: shopify-comments.deprecated202001getcommentsparamcommentid
        with:
          comment_id: rest.comment_id
          fields: rest.fields
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: deprecated202001updatecommentsparamcommentid
        description: Shopify Updates A Comment Of An Article
        call: shopify-comments.deprecated202001updatecommentsparamcommentid
        with:
          comment_id: rest.comment_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/admin/api/2020-01/comments/{comment-id}/approve-json
      name: admin-api-2020-01-comments-comment-id-approve-json
      description: REST surface for admin-api-2020-01-comments-comment_id-approve.json.
      operations:
      - method: POST
        name: deprecated202001createcommentsparamcommentidapprove
        description: Shopify Approves A Comment
        call: shopify-comments.deprecated202001createcommentsparamcommentidapprove
        with:
          comment_id: rest.comment_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/admin/api/2020-01/comments/{comment-id}/not-spam-json
      name: admin-api-2020-01-comments-comment-id-not-spam-json
      description: REST surface for admin-api-2020-01-comments-comment_id-not_spam.json.
      operations:
      - method: POST
        name: deprecated202001createcommentsparamcommentidnotspam
        description: Shopify Marks A Comment As Not Spam
        call: shopify-comments.deprecated202001createcommentsparamcommentidnotspam
        with:
          comment_id: rest.comment_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/admin/api/2020-01/comments/{comment-id}/remove-json
      name: admin-api-2020-01-comments-comment-id-remove-json
      description: REST surface for admin-api-2020-01-comments-comment_id-remove.json.
      operations:
      - method: POST
        name: deprecated202001createcommentsparamcommentidremove
        description: Shopify Removes A Comment
        call: shopify-comments.deprecated202001createcommentsparamcommentidremove
        with:
          comment_id: rest.comment_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/admin/api/2020-01/comments/{comment-id}/restore-json
      name: admin-api-2020-01-comments-comment-id-restore-json
      description: REST surface for admin-api-2020-01-comments-comment_id-restore.json.
      operations:
      - method: POST
        name: deprecated202001createcommentsparamcommentidrestore
        description: Shopify Restores A Previously Removed Comment
        call: shopify-comments.deprecated202001createcommentsparamcommentidrestore
        with:
          comment_id: rest.comment_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/admin/api/2020-01/comments/{comment-id}/spam-json
      name: admin-api-2020-01-comments-comment-id-spam-json
      description: REST surface for admin-api-2020-01-comments-comment_id-spam.json.
      operations:
      - method: POST
        name: deprecated202001createcommentsparamcommentidspam
        description: Shopify Marks A Comment As Spam
        call: shopify-comments.deprecated202001createcommentsparamcommentidspam
        with:
          comment_id: rest.comment_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: shopify-comments-mcp
    port: 9090
    transport: http
    description: MCP adapter for Shopify  API — Comments. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: shopify-retrieves-list-comments
      description: Shopify Retrieves A List Of Comments
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: shopify-comments.deprecated202001getcomments
      with:
        limit: tools.limit
        since_id: tools.since_id
        created_at_min: tools.created_at_min
        created_at_max: tools.created_at_max
        updated_at_min: tools.updated_at_min
        updated_at_max: tools.updated_at_max
        published_at_min: tools.published_at_min
        published_at_max: tools.published_at_max
        fields: tools.fields
        published_status: tools.published_status
        status: tools.status
        article_id: tools.article_id
        blog_id: tools.blog_id
      outputParameters:
      - type: object
        mapping: $.
    - name: shopify-creates-comment-article
      description: Shopify Creates A Comment For An Article
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: shopify-comments.deprecated202001createcomments
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: shopify-retrieves-count-comments
      description: Shopify Retrieves A Count Of Comments
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: shopify-comments.deprecated202001getcommentscount
      with:
        created_at_min: tools.created_at_min
        created_at_max: tools.created_at_max
        updated_at_min: tools.updated_at_min
        updated_at_max: tools.updated_at_max
        published_at_min: tools.published_at_min
        published_at_max: tools.published_at_max
        published_status: tools.published_status
        status: tools.status
        article_id: tools.article_id
        blog_id: tools.blog_id
      outputParameters:
      - type: object
        mapping: $.
    - name: shopify-retrieves-single-comment-its
      description: Shopify Retrieves A Single Comment By Its Id
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: shopify-comments.deprecated202001getcommentsparamcommentid
      with:
        comment_id: tools.comment_id
        fields: tools.fields
      outputParameters:
      - type: object
        mapping: $.
    - name: shopify-updates-comment-article
      description: Shopify Updates A Comment Of An Article
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: shopify-comments.deprecated202001updatecommentsparamcommentid
      with:
        comment_id: tools.comment_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: shopify-approves-comment
      description: Shopify Approves A Comment
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: shopify-comments.deprecated202001createcommentsparamcommentidapprove
      with:
        comment_id: tools.comment_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: shopify-marks-comment-not-spam
      description: Shopify Marks A Comment As Not Spam
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: shopify-comments.deprecated202001createcommentsparamcommentidnotspam
      with:
        comment_id: tools.comment_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: shopify-removes-comment
      description: Shopify Removes A Comment
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: shopify-comments.deprecated202001createcommentsparamcommentidremove
      with:
        comment_id: tools.comment_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: shopify-restores-previously-removed-comment
      description: Shopify Restores A Previously Removed Comment
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: shopify-comments.deprecated202001createcommentsparamcommentidrestore
      with:
        comment_id: tools.comment_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: shopify-marks-comment-spam
      description: Shopify Marks A Comment As Spam
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: shopify-comments.deprecated202001createcommentsparamcommentidspam
      with:
        comment_id: tools.comment_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.