naftiko: 1.0.0-alpha2 info: label: Amazon SNS Amazon Simple Notification Service (SNS) API description: 'Amazon SNS Amazon Simple Notification Service (SNS) API. 3 operations. Lead operation: Amazon Sns List Tags for an Sns Topic. Self-contained Naftiko capability covering one Amazon Sns business surface.' tags: - Amazon Sns 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-general baseUri: https://sns.{region}.amazonaws.com description: Amazon SNS Amazon Simple Notification Service (SNS) API business capability. Self-contained, no shared references. resources: - name: ?Action=ListTagsForResource path: /?Action=ListTagsForResource operations: - name: listtagsforresource method: GET description: Amazon Sns List Tags for an Sns Topic outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ResourceArn in: query type: string description: The ARN of the topic to list tags for required: true - name: ?Action=TagResource path: /?Action=TagResource operations: - name: tagresource method: POST description: Amazon Sns Add Tags to 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=UntagResource path: /?Action=UntagResource operations: - name: untagresource method: POST description: Amazon Sns Remove Tags From 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-general-rest port: 8080 description: REST adapter for Amazon SNS Amazon Simple Notification Service (SNS) API. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/action-listtagsforresource name: action-listtagsforresource description: REST surface for ?Action=ListTagsForResource. operations: - method: GET name: listtagsforresource description: Amazon Sns List Tags for an Sns Topic call: amazon-sns-general.listtagsforresource with: ResourceArn: rest.ResourceArn outputParameters: - type: object mapping: $. - path: /v1/action-tagresource name: action-tagresource description: REST surface for ?Action=TagResource. operations: - method: POST name: tagresource description: Amazon Sns Add Tags to an Sns Topic call: amazon-sns-general.tagresource with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/action-untagresource name: action-untagresource description: REST surface for ?Action=UntagResource. operations: - method: POST name: untagresource description: Amazon Sns Remove Tags From an Sns Topic call: amazon-sns-general.untagresource with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: amazon-sns-general-mcp port: 9090 transport: http description: MCP adapter for Amazon SNS Amazon Simple Notification Service (SNS) API. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: amazon-sns-list-tags-sns description: Amazon Sns List Tags for an Sns Topic hints: readOnly: true destructive: false idempotent: true call: amazon-sns-general.listtagsforresource with: ResourceArn: tools.ResourceArn outputParameters: - type: object mapping: $. - name: amazon-sns-add-tags-sns description: Amazon Sns Add Tags to an Sns Topic hints: readOnly: false destructive: false idempotent: false call: amazon-sns-general.tagresource with: body: tools.body outputParameters: - type: object mapping: $. - name: amazon-sns-remove-tags-sns description: Amazon Sns Remove Tags From an Sns Topic hints: readOnly: false destructive: false idempotent: false call: amazon-sns-general.untagresource with: body: tools.body outputParameters: - type: object mapping: $.