naftiko: 1.0.0-alpha2 info: label: Core API — Comments description: 'Core API — Comments. 6 operations. Lead operation: Get comment. Self-contained Naftiko capability covering one Front business surface.' tags: - Front - Comments created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: FRONT_API_KEY: FRONT_API_KEY capability: consumes: - type: http namespace: core-comments baseUri: https://api2.frontapp.com description: Core API — Comments business capability. Self-contained, no shared references. resources: - name: comments-comment_id path: /comments/{comment_id} operations: - name: getcomment method: GET description: Get comment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: comment_id in: path type: string description: The Comment ID required: true - name: comments-comment_id path: /comments/{comment_id}/ operations: - name: updatecomment method: PATCH description: Update comment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: comment_id in: path type: string description: The Comment ID required: true - name: body in: body type: object description: Request body (JSON). required: false - name: comments-comment_id-mentions path: /comments/{comment_id}/mentions operations: - name: listcommentmentions method: GET description: List comment mentions outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: comment_id in: path type: string description: The Comment ID required: true - name: comments-comment_id-replies path: /comments/{comment_id}/replies operations: - name: addcommentreply method: POST description: Add comment reply outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: comment_id in: path type: string description: The comment ID to reply to required: true - name: body in: body type: object description: Request body (JSON). required: false - name: conversations-conversation_id-comments path: /conversations/{conversation_id}/comments operations: - name: listconversationcomments method: GET description: List conversation comments outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: conversation_id in: path type: string description: The conversation ID required: true - name: addcomment method: POST description: Add comment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: conversation_id in: path type: string description: The conversation ID required: true - name: body in: body type: object description: Request body (JSON). required: false authentication: type: bearer token: '{{env.FRONT_API_KEY}}' exposes: - type: rest namespace: core-comments-rest port: 8080 description: REST adapter for Core API — Comments. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/comments/{comment-id} name: comments-comment-id description: REST surface for comments-comment_id. operations: - method: GET name: getcomment description: Get comment call: core-comments.getcomment with: comment_id: rest.comment_id outputParameters: - type: object mapping: $. - path: /v1/comments/{comment-id} name: comments-comment-id description: REST surface for comments-comment_id. operations: - method: PATCH name: updatecomment description: Update comment call: core-comments.updatecomment with: comment_id: rest.comment_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/comments/{comment-id}/mentions name: comments-comment-id-mentions description: REST surface for comments-comment_id-mentions. operations: - method: GET name: listcommentmentions description: List comment mentions call: core-comments.listcommentmentions with: comment_id: rest.comment_id outputParameters: - type: object mapping: $. - path: /v1/comments/{comment-id}/replies name: comments-comment-id-replies description: REST surface for comments-comment_id-replies. operations: - method: POST name: addcommentreply description: Add comment reply call: core-comments.addcommentreply with: comment_id: rest.comment_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/conversations/{conversation-id}/comments name: conversations-conversation-id-comments description: REST surface for conversations-conversation_id-comments. operations: - method: GET name: listconversationcomments description: List conversation comments call: core-comments.listconversationcomments with: conversation_id: rest.conversation_id outputParameters: - type: object mapping: $. - method: POST name: addcomment description: Add comment call: core-comments.addcomment with: conversation_id: rest.conversation_id body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: core-comments-mcp port: 9090 transport: http description: MCP adapter for Core API — Comments. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-comment description: Get comment hints: readOnly: true destructive: false idempotent: true call: core-comments.getcomment with: comment_id: tools.comment_id outputParameters: - type: object mapping: $. - name: update-comment description: Update comment hints: readOnly: false destructive: false idempotent: true call: core-comments.updatecomment with: comment_id: tools.comment_id body: tools.body outputParameters: - type: object mapping: $. - name: list-comment-mentions description: List comment mentions hints: readOnly: true destructive: false idempotent: true call: core-comments.listcommentmentions with: comment_id: tools.comment_id outputParameters: - type: object mapping: $. - name: add-comment-reply description: Add comment reply hints: readOnly: false destructive: false idempotent: false call: core-comments.addcommentreply with: comment_id: tools.comment_id body: tools.body outputParameters: - type: object mapping: $. - name: list-conversation-comments description: List conversation comments hints: readOnly: true destructive: false idempotent: true call: core-comments.listconversationcomments with: conversation_id: tools.conversation_id outputParameters: - type: object mapping: $. - name: add-comment description: Add comment hints: readOnly: false destructive: false idempotent: false call: core-comments.addcomment with: conversation_id: tools.conversation_id body: tools.body outputParameters: - type: object mapping: $.