naftiko: 1.0.0-alpha2 info: label: Wrike API — Comments description: 'Wrike API — Comments. 5 operations. Lead operation: List Comments. Self-contained Naftiko capability covering one Wrike business surface.' tags: - Wrike - Comments created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: WRIKE_API_KEY: WRIKE_API_KEY capability: consumes: - type: http namespace: wrike-comments baseUri: https://www.wrike.com/api/v4 description: Wrike API — Comments business capability. Self-contained, no shared references. resources: - name: comments path: /comments operations: - name: listcomments method: GET description: List Comments outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: createdDate in: query type: string - name: plainText in: query type: boolean - name: comments-commentId path: /comments/{commentId} operations: - name: updatecomment method: PUT description: Update Comment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: commentId in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: deletecomment method: DELETE description: Delete Comment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: commentId in: path type: string required: true - name: tasks-taskId-comments path: /tasks/{taskId}/comments operations: - name: listtaskcomments method: GET description: List Task Comments outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: taskId in: path type: string required: true - name: plainText in: query type: boolean - name: createtaskcomment method: POST description: Create Task Comment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: taskId in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.WRIKE_API_KEY}}' exposes: - type: rest namespace: wrike-comments-rest port: 8080 description: REST adapter for Wrike API — Comments. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/comments name: comments description: REST surface for comments. operations: - method: GET name: listcomments description: List Comments call: wrike-comments.listcomments with: createdDate: rest.createdDate plainText: rest.plainText outputParameters: - type: object mapping: $. - path: /v1/comments/{commentid} name: comments-commentid description: REST surface for comments-commentId. operations: - method: PUT name: updatecomment description: Update Comment call: wrike-comments.updatecomment with: commentId: rest.commentId body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletecomment description: Delete Comment call: wrike-comments.deletecomment with: commentId: rest.commentId outputParameters: - type: object mapping: $. - path: /v1/tasks/{taskid}/comments name: tasks-taskid-comments description: REST surface for tasks-taskId-comments. operations: - method: GET name: listtaskcomments description: List Task Comments call: wrike-comments.listtaskcomments with: taskId: rest.taskId plainText: rest.plainText outputParameters: - type: object mapping: $. - method: POST name: createtaskcomment description: Create Task Comment call: wrike-comments.createtaskcomment with: taskId: rest.taskId body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: wrike-comments-mcp port: 9090 transport: http description: MCP adapter for Wrike API — Comments. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-comments description: List Comments hints: readOnly: true destructive: false idempotent: true call: wrike-comments.listcomments with: createdDate: tools.createdDate plainText: tools.plainText outputParameters: - type: object mapping: $. - name: update-comment description: Update Comment hints: readOnly: false destructive: false idempotent: true call: wrike-comments.updatecomment with: commentId: tools.commentId body: tools.body outputParameters: - type: object mapping: $. - name: delete-comment description: Delete Comment hints: readOnly: false destructive: true idempotent: true call: wrike-comments.deletecomment with: commentId: tools.commentId outputParameters: - type: object mapping: $. - name: list-task-comments description: List Task Comments hints: readOnly: true destructive: false idempotent: true call: wrike-comments.listtaskcomments with: taskId: tools.taskId plainText: tools.plainText outputParameters: - type: object mapping: $. - name: create-task-comment description: Create Task Comment hints: readOnly: false destructive: false idempotent: false call: wrike-comments.createtaskcomment with: taskId: tools.taskId body: tools.body outputParameters: - type: object mapping: $.