Amazon SNS · Capability

Amazon SNS Amazon Simple Notification Service (SNS) API — Topics

Amazon SNS Amazon Simple Notification Service (SNS) API — Topics. 5 operations. Lead operation: Amazon Sns Create a New Sns Topic. Self-contained Naftiko capability covering one Amazon Sns business surface.

Run with Naftiko Amazon SnsTopics

What You Can Do

POST
Createtopic — Amazon Sns Create a New Sns Topic
/v1/action-createtopic
POST
Deletetopic — Amazon Sns Delete an Sns Topic
/v1/action-deletetopic
GET
Gettopicattributes — Amazon Sns Get Attributes of an Sns Topic
/v1/action-gettopicattributes
GET
Listtopics — Amazon Sns List All Sns Topics
/v1/action-listtopics
POST
Settopicattributes — Amazon Sns Set Attributes on an Sns Topic
/v1/action-settopicattributes

MCP Tools

amazon-sns-create-new-sns

Amazon Sns Create a New Sns Topic

amazon-sns-delete-sns-topic

Amazon Sns Delete an Sns Topic

amazon-sns-get-attributes-sns

Amazon Sns Get Attributes of an Sns Topic

read-only idempotent
amazon-sns-list-all-sns

Amazon Sns List All Sns Topics

read-only idempotent
amazon-sns-set-attributes-sns

Amazon Sns Set Attributes on an Sns Topic

Capability Spec

amazon-sns-topics.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Amazon SNS Amazon Simple Notification Service (SNS) API — Topics
  description: 'Amazon SNS Amazon Simple Notification Service (SNS) API — Topics. 5 operations. Lead operation: Amazon Sns
    Create a New Sns Topic. Self-contained Naftiko capability covering one Amazon Sns business surface.'
  tags:
  - Amazon Sns
  - Topics
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    AMAZON_SNS_API_KEY: AMAZON_SNS_API_KEY
capability:
  consumes:
  - type: http
    namespace: amazon-sns-topics
    baseUri: https://sns.{region}.amazonaws.com
    description: Amazon SNS Amazon Simple Notification Service (SNS) API — Topics business capability. Self-contained, no
      shared references.
    resources:
    - name: ?Action=CreateTopic
      path: /?Action=CreateTopic
      operations:
      - name: createtopic
        method: POST
        description: Amazon Sns Create a New Sns Topic
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: ?Action=DeleteTopic
      path: /?Action=DeleteTopic
      operations:
      - name: deletetopic
        method: POST
        description: Amazon Sns Delete an Sns Topic
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: ?Action=GetTopicAttributes
      path: /?Action=GetTopicAttributes
      operations:
      - name: gettopicattributes
        method: GET
        description: Amazon Sns Get Attributes of an Sns Topic
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: TopicArn
          in: query
          type: string
          description: The ARN of the topic whose properties you want to get
          required: true
    - name: ?Action=ListTopics
      path: /?Action=ListTopics
      operations:
      - name: listtopics
        method: GET
        description: Amazon Sns List All Sns Topics
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: NextToken
          in: query
          type: string
          description: Token returned by the previous ListTopics request for pagination
    - name: ?Action=SetTopicAttributes
      path: /?Action=SetTopicAttributes
      operations:
      - name: settopicattributes
        method: POST
        description: Amazon Sns Set Attributes on an Sns Topic
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: bearer
      token: '{{env.AMAZON_SNS_API_KEY}}'
  exposes:
  - type: rest
    namespace: amazon-sns-topics-rest
    port: 8080
    description: REST adapter for Amazon SNS Amazon Simple Notification Service (SNS) API — Topics. One Spectral-compliant
      resource per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/action-createtopic
      name: action-createtopic
      description: REST surface for ?Action=CreateTopic.
      operations:
      - method: POST
        name: createtopic
        description: Amazon Sns Create a New Sns Topic
        call: amazon-sns-topics.createtopic
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/action-deletetopic
      name: action-deletetopic
      description: REST surface for ?Action=DeleteTopic.
      operations:
      - method: POST
        name: deletetopic
        description: Amazon Sns Delete an Sns Topic
        call: amazon-sns-topics.deletetopic
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/action-gettopicattributes
      name: action-gettopicattributes
      description: REST surface for ?Action=GetTopicAttributes.
      operations:
      - method: GET
        name: gettopicattributes
        description: Amazon Sns Get Attributes of an Sns Topic
        call: amazon-sns-topics.gettopicattributes
        with:
          TopicArn: rest.TopicArn
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/action-listtopics
      name: action-listtopics
      description: REST surface for ?Action=ListTopics.
      operations:
      - method: GET
        name: listtopics
        description: Amazon Sns List All Sns Topics
        call: amazon-sns-topics.listtopics
        with:
          NextToken: rest.NextToken
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/action-settopicattributes
      name: action-settopicattributes
      description: REST surface for ?Action=SetTopicAttributes.
      operations:
      - method: POST
        name: settopicattributes
        description: Amazon Sns Set Attributes on an Sns Topic
        call: amazon-sns-topics.settopicattributes
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: amazon-sns-topics-mcp
    port: 9090
    transport: http
    description: MCP adapter for Amazon SNS Amazon Simple Notification Service (SNS) API — Topics. One tool per consumed operation,
      routed inline through this capability's consumes block.
    tools:
    - name: amazon-sns-create-new-sns
      description: Amazon Sns Create a New Sns Topic
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: amazon-sns-topics.createtopic
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: amazon-sns-delete-sns-topic
      description: Amazon Sns Delete an Sns Topic
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: amazon-sns-topics.deletetopic
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: amazon-sns-get-attributes-sns
      description: Amazon Sns Get Attributes of an Sns Topic
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: amazon-sns-topics.gettopicattributes
      with:
        TopicArn: tools.TopicArn
      outputParameters:
      - type: object
        mapping: $.
    - name: amazon-sns-list-all-sns
      description: Amazon Sns List All Sns Topics
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: amazon-sns-topics.listtopics
      with:
        NextToken: tools.NextToken
      outputParameters:
      - type: object
        mapping: $.
    - name: amazon-sns-set-attributes-sns
      description: Amazon Sns Set Attributes on an Sns Topic
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: amazon-sns-topics.settopicattributes
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.