naftiko: 1.0.0-alpha2 info: label: Telnyx API — Messages description: 'Telnyx API — Messages. 10 operations. Lead operation: Send a message. Self-contained Naftiko capability covering one Telnyx business surface.' tags: - Telnyx - Messages created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TELNYX_API_KEY: TELNYX_API_KEY capability: consumes: - type: http namespace: telnyx-messages baseUri: https://api.telnyx.com/v2 description: Telnyx API — Messages business capability. Self-contained, no shared references. resources: - name: messages path: /messages operations: - name: sendmessage method: POST description: Send a message outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: messages-alphanumeric_sender_id path: /messages/alphanumeric_sender_id operations: - name: sendalphanumericsenderidmessage method: POST description: Send a message using an alphanumeric sender ID outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: messages-group-message_id path: /messages/group/{message_id} operations: - name: getgroupmmsmessages method: GET description: Retrieve group MMS messages outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: message_id in: path type: string description: The group message ID. required: true - name: messages-group_mms path: /messages/group_mms operations: - name: creategroupmmsmessage method: POST description: Send a group MMS message outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: messages-long_code path: /messages/long_code operations: - name: createlongcodemessage method: POST description: Send a long code message outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: messages-number_pool path: /messages/number_pool operations: - name: createnumberpoolmessage method: POST description: Send a message using number pool outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: messages-schedule path: /messages/schedule operations: - name: schedulemessage method: POST description: Schedule a message outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: messages-short_code path: /messages/short_code operations: - name: createshortcodemessage method: POST description: Send a short code message outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: messages-id path: /messages/{id} operations: - name: cancelmessage method: DELETE description: Cancel a scheduled message outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The id of the message to cancel required: true - name: getmessage method: GET description: Retrieve a message outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The id of the message required: true authentication: type: bearer token: '{{env.TELNYX_API_KEY}}' exposes: - type: rest namespace: telnyx-messages-rest port: 8080 description: REST adapter for Telnyx API — Messages. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/messages name: messages description: REST surface for messages. operations: - method: POST name: sendmessage description: Send a message call: telnyx-messages.sendmessage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/messages/alphanumeric-sender-id name: messages-alphanumeric-sender-id description: REST surface for messages-alphanumeric_sender_id. operations: - method: POST name: sendalphanumericsenderidmessage description: Send a message using an alphanumeric sender ID call: telnyx-messages.sendalphanumericsenderidmessage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/messages/group/{message-id} name: messages-group-message-id description: REST surface for messages-group-message_id. operations: - method: GET name: getgroupmmsmessages description: Retrieve group MMS messages call: telnyx-messages.getgroupmmsmessages with: message_id: rest.message_id outputParameters: - type: object mapping: $. - path: /v1/messages/group-mms name: messages-group-mms description: REST surface for messages-group_mms. operations: - method: POST name: creategroupmmsmessage description: Send a group MMS message call: telnyx-messages.creategroupmmsmessage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/messages/long-code name: messages-long-code description: REST surface for messages-long_code. operations: - method: POST name: createlongcodemessage description: Send a long code message call: telnyx-messages.createlongcodemessage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/messages/number-pool name: messages-number-pool description: REST surface for messages-number_pool. operations: - method: POST name: createnumberpoolmessage description: Send a message using number pool call: telnyx-messages.createnumberpoolmessage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/messages/schedule name: messages-schedule description: REST surface for messages-schedule. operations: - method: POST name: schedulemessage description: Schedule a message call: telnyx-messages.schedulemessage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/messages/short-code name: messages-short-code description: REST surface for messages-short_code. operations: - method: POST name: createshortcodemessage description: Send a short code message call: telnyx-messages.createshortcodemessage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/messages/{id} name: messages-id description: REST surface for messages-id. operations: - method: DELETE name: cancelmessage description: Cancel a scheduled message call: telnyx-messages.cancelmessage with: id: rest.id outputParameters: - type: object mapping: $. - method: GET name: getmessage description: Retrieve a message call: telnyx-messages.getmessage with: id: rest.id outputParameters: - type: object mapping: $. - type: mcp namespace: telnyx-messages-mcp port: 9090 transport: http description: MCP adapter for Telnyx API — Messages. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: send-message description: Send a message hints: readOnly: false destructive: false idempotent: false call: telnyx-messages.sendmessage with: body: tools.body outputParameters: - type: object mapping: $. - name: send-message-using-alphanumeric-sender description: Send a message using an alphanumeric sender ID hints: readOnly: false destructive: false idempotent: false call: telnyx-messages.sendalphanumericsenderidmessage with: body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-group-mms-messages description: Retrieve group MMS messages hints: readOnly: true destructive: false idempotent: true call: telnyx-messages.getgroupmmsmessages with: message_id: tools.message_id outputParameters: - type: object mapping: $. - name: send-group-mms-message description: Send a group MMS message hints: readOnly: false destructive: false idempotent: false call: telnyx-messages.creategroupmmsmessage with: body: tools.body outputParameters: - type: object mapping: $. - name: send-long-code-message description: Send a long code message hints: readOnly: false destructive: false idempotent: false call: telnyx-messages.createlongcodemessage with: body: tools.body outputParameters: - type: object mapping: $. - name: send-message-using-number-pool description: Send a message using number pool hints: readOnly: false destructive: false idempotent: false call: telnyx-messages.createnumberpoolmessage with: body: tools.body outputParameters: - type: object mapping: $. - name: schedule-message description: Schedule a message hints: readOnly: false destructive: false idempotent: false call: telnyx-messages.schedulemessage with: body: tools.body outputParameters: - type: object mapping: $. - name: send-short-code-message description: Send a short code message hints: readOnly: false destructive: false idempotent: false call: telnyx-messages.createshortcodemessage with: body: tools.body outputParameters: - type: object mapping: $. - name: cancel-scheduled-message description: Cancel a scheduled message hints: readOnly: false destructive: true idempotent: true call: telnyx-messages.cancelmessage with: id: tools.id outputParameters: - type: object mapping: $. - name: retrieve-message description: Retrieve a message hints: readOnly: true destructive: false idempotent: true call: telnyx-messages.getmessage with: id: tools.id outputParameters: - type: object mapping: $.