naftiko: 1.0.0-alpha2 info: label: Discord HTTP API (Preview) — Channels description: 'Discord HTTP API (Preview) — Channels. 40 operations. Lead operation: Channels. Self-contained Naftiko capability covering one Discord business surface.' tags: - Discord - Channels created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: DISCORD_API_KEY: DISCORD_API_KEY capability: consumes: - type: http namespace: discord-channels baseUri: https://discord.com/api/v10 description: Discord HTTP API (Preview) — Channels business capability. Self-contained, no shared references. resources: - name: channels-channel_id path: /channels/{channel_id} operations: - name: getchannel method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletechannel method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatechannel method: PATCH description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: channels-channel_id-followers path: /channels/{channel_id}/followers operations: - name: followchannel method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: channels-channel_id-invites path: /channels/{channel_id}/invites operations: - name: listchannelinvites method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createchannelinvite method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: channels-channel_id-messages path: /channels/{channel_id}/messages operations: - name: listmessages method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: around in: query type: string - name: before in: query type: string - name: after in: query type: string - name: limit in: query type: integer - name: createmessage method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: channels-channel_id-messages-bulk-delete path: /channels/{channel_id}/messages/bulk-delete operations: - name: bulkdeletemessages method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: channels-channel_id-messages-message_id path: /channels/{channel_id}/messages/{message_id} operations: - name: getmessage method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletemessage method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatemessage method: PATCH description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: channels-channel_id-messages-message_id-crosspost path: /channels/{channel_id}/messages/{message_id}/crosspost operations: - name: crosspostmessage method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: channels-channel_id-messages-message_id-reactions path: /channels/{channel_id}/messages/{message_id}/reactions operations: - name: deleteallmessagereactions method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: channels-channel_id-messages-message_id-reactions-emoji_name path: /channels/{channel_id}/messages/{message_id}/reactions/{emoji_name} operations: - name: listmessagereactionsbyemoji method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: after in: query type: string - name: limit in: query type: integer - name: deleteallmessagereactionsbyemoji method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: channels-channel_id-messages-message_id-reactions-emoji_name-@me path: /channels/{channel_id}/messages/{message_id}/reactions/{emoji_name}/@me operations: - name: addmymessagereaction method: PUT description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletemymessagereaction method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: channels-channel_id-messages-message_id-reactions-emoji_name-user_id path: /channels/{channel_id}/messages/{message_id}/reactions/{emoji_name}/{user_id} operations: - name: deleteusermessagereaction method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: channels-channel_id-messages-message_id-threads path: /channels/{channel_id}/messages/{message_id}/threads operations: - name: createthreadfrommessage method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: channels-channel_id-permissions-overwrite_id path: /channels/{channel_id}/permissions/{overwrite_id} operations: - name: setchannelpermissionoverwrite method: PUT description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletechannelpermissionoverwrite method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: channels-channel_id-pins path: /channels/{channel_id}/pins operations: - name: listpinnedmessages method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: channels-channel_id-pins-message_id path: /channels/{channel_id}/pins/{message_id} operations: - name: pinmessage method: PUT description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: unpinmessage method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: channels-channel_id-recipients-user_id path: /channels/{channel_id}/recipients/{user_id} operations: - name: addgroupdmuser method: PUT description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletegroupdmuser method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: channels-channel_id-thread-members path: /channels/{channel_id}/thread-members operations: - name: listthreadmembers method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: with_member in: query type: boolean - name: limit in: query type: integer - name: after in: query type: string - name: channels-channel_id-thread-members-@me path: /channels/{channel_id}/thread-members/@me operations: - name: jointhread method: PUT description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: leavethread method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: channels-channel_id-thread-members-user_id path: /channels/{channel_id}/thread-members/{user_id} operations: - name: getthreadmember method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: with_member in: query type: boolean - name: addthreadmember method: PUT description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletethreadmember method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: channels-channel_id-threads path: /channels/{channel_id}/threads operations: - name: createthread method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: channels-channel_id-threads-archived-private path: /channels/{channel_id}/threads/archived/private operations: - name: listprivatearchivedthreads method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: before in: query type: string - name: limit in: query type: integer - name: channels-channel_id-threads-archived-public path: /channels/{channel_id}/threads/archived/public operations: - name: listpublicarchivedthreads method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: before in: query type: string - name: limit in: query type: integer - name: channels-channel_id-typing path: /channels/{channel_id}/typing operations: - name: triggertypingindicator method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: channels-channel_id-users-@me-threads-archived-private path: /channels/{channel_id}/users/@me/threads/archived/private operations: - name: listmyprivatearchivedthreads method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: before in: query type: string - name: limit in: query type: integer - name: channels-channel_id-webhooks path: /channels/{channel_id}/webhooks operations: - name: listchannelwebhooks method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createwebhook method: POST description: '' 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.DISCORD_API_KEY}}' exposes: - type: rest namespace: discord-channels-rest port: 8080 description: REST adapter for Discord HTTP API (Preview) — Channels. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/channels/{channel-id} name: channels-channel-id description: REST surface for channels-channel_id. operations: - method: GET name: getchannel description: getchannel call: discord-channels.getchannel outputParameters: - type: object mapping: $. - method: DELETE name: deletechannel description: deletechannel call: discord-channels.deletechannel outputParameters: - type: object mapping: $. - method: PATCH name: updatechannel description: updatechannel call: discord-channels.updatechannel with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/followers name: channels-channel-id-followers description: REST surface for channels-channel_id-followers. operations: - method: POST name: followchannel description: followchannel call: discord-channels.followchannel with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/invites name: channels-channel-id-invites description: REST surface for channels-channel_id-invites. operations: - method: GET name: listchannelinvites description: listchannelinvites call: discord-channels.listchannelinvites outputParameters: - type: object mapping: $. - method: POST name: createchannelinvite description: createchannelinvite call: discord-channels.createchannelinvite with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/messages name: channels-channel-id-messages description: REST surface for channels-channel_id-messages. operations: - method: GET name: listmessages description: listmessages call: discord-channels.listmessages with: around: rest.around before: rest.before after: rest.after limit: rest.limit outputParameters: - type: object mapping: $. - method: POST name: createmessage description: createmessage call: discord-channels.createmessage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/messages/bulk-delete name: channels-channel-id-messages-bulk-delete description: REST surface for channels-channel_id-messages-bulk-delete. operations: - method: POST name: bulkdeletemessages description: bulkdeletemessages call: discord-channels.bulkdeletemessages with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/messages/{message-id} name: channels-channel-id-messages-message-id description: REST surface for channels-channel_id-messages-message_id. operations: - method: GET name: getmessage description: getmessage call: discord-channels.getmessage outputParameters: - type: object mapping: $. - method: DELETE name: deletemessage description: deletemessage call: discord-channels.deletemessage outputParameters: - type: object mapping: $. - method: PATCH name: updatemessage description: updatemessage call: discord-channels.updatemessage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/messages/{message-id}/crosspost name: channels-channel-id-messages-message-id-crosspost description: REST surface for channels-channel_id-messages-message_id-crosspost. operations: - method: POST name: crosspostmessage description: crosspostmessage call: discord-channels.crosspostmessage outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/messages/{message-id}/reactions name: channels-channel-id-messages-message-id-reactions description: REST surface for channels-channel_id-messages-message_id-reactions. operations: - method: DELETE name: deleteallmessagereactions description: deleteallmessagereactions call: discord-channels.deleteallmessagereactions outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/messages/{message-id}/reactions/{emoji-name} name: channels-channel-id-messages-message-id-reactions-emoji-name description: REST surface for channels-channel_id-messages-message_id-reactions-emoji_name. operations: - method: GET name: listmessagereactionsbyemoji description: listmessagereactionsbyemoji call: discord-channels.listmessagereactionsbyemoji with: after: rest.after limit: rest.limit outputParameters: - type: object mapping: $. - method: DELETE name: deleteallmessagereactionsbyemoji description: deleteallmessagereactionsbyemoji call: discord-channels.deleteallmessagereactionsbyemoji outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/messages/{message-id}/reactions/{emoji-name}/me name: channels-channel-id-messages-message-id-reactions-emoji-name-me description: REST surface for channels-channel_id-messages-message_id-reactions-emoji_name-@me. operations: - method: PUT name: addmymessagereaction description: addmymessagereaction call: discord-channels.addmymessagereaction outputParameters: - type: object mapping: $. - method: DELETE name: deletemymessagereaction description: deletemymessagereaction call: discord-channels.deletemymessagereaction outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/messages/{message-id}/reactions/{emoji-name}/{user-id} name: channels-channel-id-messages-message-id-reactions-emoji-name-user-id description: REST surface for channels-channel_id-messages-message_id-reactions-emoji_name-user_id. operations: - method: DELETE name: deleteusermessagereaction description: deleteusermessagereaction call: discord-channels.deleteusermessagereaction outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/messages/{message-id}/threads name: channels-channel-id-messages-message-id-threads description: REST surface for channels-channel_id-messages-message_id-threads. operations: - method: POST name: createthreadfrommessage description: createthreadfrommessage call: discord-channels.createthreadfrommessage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/permissions/{overwrite-id} name: channels-channel-id-permissions-overwrite-id description: REST surface for channels-channel_id-permissions-overwrite_id. operations: - method: PUT name: setchannelpermissionoverwrite description: setchannelpermissionoverwrite call: discord-channels.setchannelpermissionoverwrite with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletechannelpermissionoverwrite description: deletechannelpermissionoverwrite call: discord-channels.deletechannelpermissionoverwrite outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/pins name: channels-channel-id-pins description: REST surface for channels-channel_id-pins. operations: - method: GET name: listpinnedmessages description: listpinnedmessages call: discord-channels.listpinnedmessages outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/pins/{message-id} name: channels-channel-id-pins-message-id description: REST surface for channels-channel_id-pins-message_id. operations: - method: PUT name: pinmessage description: pinmessage call: discord-channels.pinmessage outputParameters: - type: object mapping: $. - method: DELETE name: unpinmessage description: unpinmessage call: discord-channels.unpinmessage outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/recipients/{user-id} name: channels-channel-id-recipients-user-id description: REST surface for channels-channel_id-recipients-user_id. operations: - method: PUT name: addgroupdmuser description: addgroupdmuser call: discord-channels.addgroupdmuser with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletegroupdmuser description: deletegroupdmuser call: discord-channels.deletegroupdmuser outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/thread-members name: channels-channel-id-thread-members description: REST surface for channels-channel_id-thread-members. operations: - method: GET name: listthreadmembers description: listthreadmembers call: discord-channels.listthreadmembers with: with_member: rest.with_member limit: rest.limit after: rest.after outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/thread-members/me name: channels-channel-id-thread-members-me description: REST surface for channels-channel_id-thread-members-@me. operations: - method: PUT name: jointhread description: jointhread call: discord-channels.jointhread outputParameters: - type: object mapping: $. - method: DELETE name: leavethread description: leavethread call: discord-channels.leavethread outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/thread-members/{user-id} name: channels-channel-id-thread-members-user-id description: REST surface for channels-channel_id-thread-members-user_id. operations: - method: GET name: getthreadmember description: getthreadmember call: discord-channels.getthreadmember with: with_member: rest.with_member outputParameters: - type: object mapping: $. - method: PUT name: addthreadmember description: addthreadmember call: discord-channels.addthreadmember outputParameters: - type: object mapping: $. - method: DELETE name: deletethreadmember description: deletethreadmember call: discord-channels.deletethreadmember outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/threads name: channels-channel-id-threads description: REST surface for channels-channel_id-threads. operations: - method: POST name: createthread description: createthread call: discord-channels.createthread with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/threads/archived/private name: channels-channel-id-threads-archived-private description: REST surface for channels-channel_id-threads-archived-private. operations: - method: GET name: listprivatearchivedthreads description: listprivatearchivedthreads call: discord-channels.listprivatearchivedthreads with: before: rest.before limit: rest.limit outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/threads/archived/public name: channels-channel-id-threads-archived-public description: REST surface for channels-channel_id-threads-archived-public. operations: - method: GET name: listpublicarchivedthreads description: listpublicarchivedthreads call: discord-channels.listpublicarchivedthreads with: before: rest.before limit: rest.limit outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/typing name: channels-channel-id-typing description: REST surface for channels-channel_id-typing. operations: - method: POST name: triggertypingindicator description: triggertypingindicator call: discord-channels.triggertypingindicator outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/users/me/threads/archived/private name: channels-channel-id-users-me-threads-archived-private description: REST surface for channels-channel_id-users-@me-threads-archived-private. operations: - method: GET name: listmyprivatearchivedthreads description: listmyprivatearchivedthreads call: discord-channels.listmyprivatearchivedthreads with: before: rest.before limit: rest.limit outputParameters: - type: object mapping: $. - path: /v1/channels/{channel-id}/webhooks name: channels-channel-id-webhooks description: REST surface for channels-channel_id-webhooks. operations: - method: GET name: listchannelwebhooks description: listchannelwebhooks call: discord-channels.listchannelwebhooks outputParameters: - type: object mapping: $. - method: POST name: createwebhook description: createwebhook call: discord-channels.createwebhook with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: discord-channels-mcp port: 9090 transport: http description: MCP adapter for Discord HTTP API (Preview) — Channels. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: getchannel description: getchannel hints: readOnly: true destructive: false idempotent: true call: discord-channels.getchannel outputParameters: - type: object mapping: $. - name: deletechannel description: deletechannel hints: readOnly: false destructive: true idempotent: true call: discord-channels.deletechannel outputParameters: - type: object mapping: $. - name: updatechannel description: updatechannel hints: readOnly: false destructive: false idempotent: true call: discord-channels.updatechannel with: body: tools.body outputParameters: - type: object mapping: $. - name: followchannel description: followchannel hints: readOnly: false destructive: false idempotent: false call: discord-channels.followchannel with: body: tools.body outputParameters: - type: object mapping: $. - name: listchannelinvites description: listchannelinvites hints: readOnly: true destructive: false idempotent: true call: discord-channels.listchannelinvites outputParameters: - type: object mapping: $. - name: createchannelinvite description: createchannelinvite hints: readOnly: false destructive: false idempotent: false call: discord-channels.createchannelinvite with: body: tools.body outputParameters: - type: object mapping: $. - name: listmessages description: listmessages hints: readOnly: true destructive: false idempotent: true call: discord-channels.listmessages with: around: tools.around before: tools.before after: tools.after limit: tools.limit outputParameters: - type: object mapping: $. - name: createmessage description: createmessage hints: readOnly: false destructive: false idempotent: false call: discord-channels.createmessage with: body: tools.body outputParameters: - type: object mapping: $. - name: bulkdeletemessages description: bulkdeletemessages hints: readOnly: false destructive: false idempotent: false call: discord-channels.bulkdeletemessages with: body: tools.body outputParameters: - type: object mapping: $. - name: getmessage description: getmessage hints: readOnly: true destructive: false idempotent: true call: discord-channels.getmessage outputParameters: - type: object mapping: $. - name: deletemessage description: deletemessage hints: readOnly: false destructive: true idempotent: true call: discord-channels.deletemessage outputParameters: - type: object mapping: $. - name: updatemessage description: updatemessage hints: readOnly: false destructive: false idempotent: true call: discord-channels.updatemessage with: body: tools.body outputParameters: - type: object mapping: $. - name: crosspostmessage description: crosspostmessage hints: readOnly: false destructive: false idempotent: false call: discord-channels.crosspostmessage outputParameters: - type: object mapping: $. - name: deleteallmessagereactions description: deleteallmessagereactions hints: readOnly: false destructive: true idempotent: true call: discord-channels.deleteallmessagereactions outputParameters: - type: object mapping: $. - name: listmessagereactionsbyemoji description: listmessagereactionsbyemoji hints: readOnly: true destructive: false idempotent: true call: discord-channels.listmessagereactionsbyemoji with: after: tools.after limit: tools.limit outputParameters: - type: object mapping: $. - name: deleteallmessagereactionsbyemoji description: deleteallmessagereactionsbyemoji hints: readOnly: false destructive: true idempotent: true call: discord-channels.deleteallmessagereactionsbyemoji outputParameters: - type: object mapping: $. - name: addmymessagereaction description: addmymessagereaction hints: readOnly: false destructive: false idempotent: true call: discord-channels.addmymessagereaction outputParameters: - type: object mapping: $. - name: deletemymessagereaction description: deletemymessagereaction hints: readOnly: false destructive: true idempotent: true call: discord-channels.deletemymessagereaction outputParameters: - type: object mapping: $. - name: deleteusermessagereaction description: deleteusermessagereaction hints: readOnly: false destructive: true idempotent: true call: discord-channels.deleteusermessagereaction outputParameters: - type: object mapping: $. - name: createthreadfrommessage description: createthreadfrommessage hints: readOnly: false destructive: false idempotent: false call: discord-channels.createthreadfrommessage with: body: tools.body outputParameters: - type: object mapping: $. - name: setchannelpermissionoverwrite description: setchannelpermissionoverwrite hints: readOnly: false destructive: false idempotent: true call: discord-channels.setchannelpermissionoverwrite with: body: tools.body outputParameters: - type: object mapping: $. - name: deletechannelpermissionoverwrite description: deletechannelpermissionoverwrite hints: readOnly: false destructive: true idempotent: true call: discord-channels.deletechannelpermissionoverwrite outputParameters: - type: object mapping: $. - name: listpinnedmessages description: listpinnedmessages hints: readOnly: true destructive: false idempotent: true call: discord-channels.listpinnedmessages outputParameters: - type: object mapping: $. - name: pinmessage description: pinmessage hints: readOnly: false destructive: false idempotent: true call: discord-channels.pinmessage outputParameters: - type: object mapping: $. - name: unpinmessage description: unpinmessage hints: readOnly: false destructive: true idempotent: true call: discord-channels.unpinmessage outputParameters: - type: object mapping: $. - name: addgroupdmuser description: addgroupdmuser hints: readOnly: false destructive: false idempotent: true call: discord-channels.addgroupdmuser with: body: tools.body outputParameters: - type: object mapping: $. - name: deletegroupdmuser description: deletegroupdmuser hints: readOnly: false destructive: true idempotent: true call: discord-channels.deletegroupdmuser outputParameters: - type: object mapping: $. - name: listthreadmembers description: listthreadmembers hints: readOnly: true destructive: false idempotent: true call: discord-channels.listthreadmembers with: with_member: tools.with_member limit: tools.limit after: tools.after outputParameters: - type: object mapping: $. - name: jointhread description: jointhread hints: readOnly: false destructive: false idempotent: true call: discord-channels.jointhread outputParameters: - type: object mapping: $. - name: leavethread description: leavethread hints: readOnly: false destructive: true idempotent: true call: discord-channels.leavethread outputParameters: - type: object mapping: $. - name: getthreadmember description: getthreadmember hints: readOnly: true destructive: false idempotent: true call: discord-channels.getthreadmember with: with_member: tools.with_member outputParameters: - type: object mapping: $. - name: addthreadmember description: addthreadmember hints: readOnly: false destructive: false idempotent: true call: discord-channels.addthreadmember outputParameters: - type: object mapping: $. - name: deletethreadmember description: deletethreadmember hints: readOnly: false destructive: true idempotent: true call: discord-channels.deletethreadmember outputParameters: - type: object mapping: $. - name: createthread description: createthread hints: readOnly: false destructive: false idempotent: false call: discord-channels.createthread with: body: tools.body outputParameters: - type: object mapping: $. - name: listprivatearchivedthreads description: listprivatearchivedthreads hints: readOnly: true destructive: false idempotent: true call: discord-channels.listprivatearchivedthreads with: before: tools.before limit: tools.limit outputParameters: - type: object mapping: $. - name: listpublicarchivedthreads description: listpublicarchivedthreads hints: readOnly: true destructive: false idempotent: true call: discord-channels.listpublicarchivedthreads with: before: tools.before limit: tools.limit outputParameters: - type: object mapping: $. - name: triggertypingindicator description: triggertypingindicator hints: readOnly: false destructive: false idempotent: false call: discord-channels.triggertypingindicator outputParameters: - type: object mapping: $. - name: listmyprivatearchivedthreads description: listmyprivatearchivedthreads hints: readOnly: true destructive: false idempotent: true call: discord-channels.listmyprivatearchivedthreads with: before: tools.before limit: tools.limit outputParameters: - type: object mapping: $. - name: listchannelwebhooks description: listchannelwebhooks hints: readOnly: true destructive: false idempotent: true call: discord-channels.listchannelwebhooks outputParameters: - type: object mapping: $. - name: createwebhook description: createwebhook hints: readOnly: false destructive: false idempotent: false call: discord-channels.createwebhook with: body: tools.body outputParameters: - type: object mapping: $.