naftiko: 1.0.0-alpha2 info: label: Zulip REST API — scheduled_messages description: 'Zulip REST API — scheduled_messages. 4 operations. Lead operation: Get scheduled messages. Self-contained Naftiko capability covering one Zulip business surface.' tags: - Zulip - scheduled_messages created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: ZULIP_API_KEY: ZULIP_API_KEY capability: consumes: - type: http namespace: zulip-scheduled-messages baseUri: https://{subdomain}.zulipchat.com/api/v1 description: Zulip REST API — scheduled_messages business capability. Self-contained, no shared references. resources: - name: scheduled_messages path: /scheduled_messages operations: - name: getscheduledmessages method: GET description: Get scheduled messages outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createscheduledmessage method: POST description: Create a scheduled message outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: scheduled_messages-scheduled_message_id path: /scheduled_messages/{scheduled_message_id} operations: - name: updatescheduledmessage method: PATCH description: Edit a scheduled message outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: scheduled_message_id in: path type: integer description: The ID of the scheduled message to update. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: deletescheduledmessage method: DELETE description: Delete a scheduled message outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: scheduled_message_id in: path type: integer description: The ID of the scheduled message to delete. required: true authentication: type: basic username: '{{env.ZULIP_USER}}' password: '{{env.ZULIP_PASS}}' exposes: - type: rest namespace: zulip-scheduled-messages-rest port: 8080 description: REST adapter for Zulip REST API — scheduled_messages. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/scheduled-messages name: scheduled-messages description: REST surface for scheduled_messages. operations: - method: GET name: getscheduledmessages description: Get scheduled messages call: zulip-scheduled-messages.getscheduledmessages outputParameters: - type: object mapping: $. - method: POST name: createscheduledmessage description: Create a scheduled message call: zulip-scheduled-messages.createscheduledmessage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/scheduled-messages/{scheduled-message-id} name: scheduled-messages-scheduled-message-id description: REST surface for scheduled_messages-scheduled_message_id. operations: - method: PATCH name: updatescheduledmessage description: Edit a scheduled message call: zulip-scheduled-messages.updatescheduledmessage with: scheduled_message_id: rest.scheduled_message_id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletescheduledmessage description: Delete a scheduled message call: zulip-scheduled-messages.deletescheduledmessage with: scheduled_message_id: rest.scheduled_message_id outputParameters: - type: object mapping: $. - type: mcp namespace: zulip-scheduled-messages-mcp port: 9090 transport: http description: MCP adapter for Zulip REST API — scheduled_messages. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-scheduled-messages description: Get scheduled messages hints: readOnly: true destructive: false idempotent: true call: zulip-scheduled-messages.getscheduledmessages outputParameters: - type: object mapping: $. - name: create-scheduled-message description: Create a scheduled message hints: readOnly: false destructive: false idempotent: false call: zulip-scheduled-messages.createscheduledmessage with: body: tools.body outputParameters: - type: object mapping: $. - name: edit-scheduled-message description: Edit a scheduled message hints: readOnly: false destructive: false idempotent: true call: zulip-scheduled-messages.updatescheduledmessage with: scheduled_message_id: tools.scheduled_message_id body: tools.body outputParameters: - type: object mapping: $. - name: delete-scheduled-message description: Delete a scheduled message hints: readOnly: false destructive: true idempotent: true call: zulip-scheduled-messages.deletescheduledmessage with: scheduled_message_id: tools.scheduled_message_id outputParameters: - type: object mapping: $.