naftiko: 1.0.0-alpha2 info: label: Twilio Voice API — Conferences description: 'Twilio Voice API — Conferences. 5 operations. Lead operation: Twilio List Conferences. Self-contained Naftiko capability covering one Twilio business surface.' tags: - Twilio - Conferences created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TWILIO_API_KEY: TWILIO_API_KEY capability: consumes: - type: http namespace: voice-conferences baseUri: https://api.twilio.com/2010-04-01 description: Twilio Voice API — Conferences business capability. Self-contained, no shared references. resources: - name: Accounts-AccountSid-Conferences.json path: /Accounts/{AccountSid}/Conferences.json operations: - name: listconferences method: GET description: Twilio List Conferences outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Status in: query type: string - name: FriendlyName in: query type: string - name: DateCreated in: query type: string - name: PageSize in: query type: integer - name: Accounts-AccountSid-Conferences-ConferenceSid}.json path: /Accounts/{AccountSid}/Conferences/{ConferenceSid}.json operations: - name: fetchconference method: GET description: Twilio Fetch a Conference outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ConferenceSid in: path type: string required: true - name: updateconference method: POST description: Twilio Update a Conference outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ConferenceSid in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: false - name: Accounts-AccountSid-Conferences-ConferenceSid-Participants.json path: /Accounts/{AccountSid}/Conferences/{ConferenceSid}/Participants.json operations: - name: listparticipants method: GET description: Twilio List Conference Participants outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ConferenceSid in: path type: string required: true - name: createparticipant method: POST description: Twilio Add a Participant to a Conference outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ConferenceSid in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true authentication: type: basic username: '{{env.TWILIO_USER}}' password: '{{env.TWILIO_PASS}}' exposes: - type: rest namespace: voice-conferences-rest port: 8080 description: REST adapter for Twilio Voice API — Conferences. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/accounts/{accountsid}/conferences-json name: accounts-accountsid-conferences-json description: REST surface for Accounts-AccountSid-Conferences.json. operations: - method: GET name: listconferences description: Twilio List Conferences call: voice-conferences.listconferences with: Status: rest.Status FriendlyName: rest.FriendlyName DateCreated: rest.DateCreated PageSize: rest.PageSize outputParameters: - type: object mapping: $. - path: /v1/accounts/{accountsid}/conferences/conferencesid-json name: accounts-accountsid-conferences-conferencesid-json description: REST surface for Accounts-AccountSid-Conferences-ConferenceSid}.json. operations: - method: GET name: fetchconference description: Twilio Fetch a Conference call: voice-conferences.fetchconference with: ConferenceSid: rest.ConferenceSid outputParameters: - type: object mapping: $. - method: POST name: updateconference description: Twilio Update a Conference call: voice-conferences.updateconference with: ConferenceSid: rest.ConferenceSid body: rest.body outputParameters: - type: object mapping: $. - path: /v1/accounts/{accountsid}/conferences/{conferencesid}/participants-json name: accounts-accountsid-conferences-conferencesid-participants-json description: REST surface for Accounts-AccountSid-Conferences-ConferenceSid-Participants.json. operations: - method: GET name: listparticipants description: Twilio List Conference Participants call: voice-conferences.listparticipants with: ConferenceSid: rest.ConferenceSid outputParameters: - type: object mapping: $. - method: POST name: createparticipant description: Twilio Add a Participant to a Conference call: voice-conferences.createparticipant with: ConferenceSid: rest.ConferenceSid body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: voice-conferences-mcp port: 9090 transport: http description: MCP adapter for Twilio Voice API — Conferences. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: twilio-list-conferences description: Twilio List Conferences hints: readOnly: true destructive: false idempotent: true call: voice-conferences.listconferences with: Status: tools.Status FriendlyName: tools.FriendlyName DateCreated: tools.DateCreated PageSize: tools.PageSize outputParameters: - type: object mapping: $. - name: twilio-fetch-conference description: Twilio Fetch a Conference hints: readOnly: true destructive: false idempotent: true call: voice-conferences.fetchconference with: ConferenceSid: tools.ConferenceSid outputParameters: - type: object mapping: $. - name: twilio-update-conference description: Twilio Update a Conference hints: readOnly: false destructive: false idempotent: false call: voice-conferences.updateconference with: ConferenceSid: tools.ConferenceSid body: tools.body outputParameters: - type: object mapping: $. - name: twilio-list-conference-participants description: Twilio List Conference Participants hints: readOnly: true destructive: false idempotent: true call: voice-conferences.listparticipants with: ConferenceSid: tools.ConferenceSid outputParameters: - type: object mapping: $. - name: twilio-add-participant-conference description: Twilio Add a Participant to a Conference hints: readOnly: false destructive: false idempotent: false call: voice-conferences.createparticipant with: ConferenceSid: tools.ConferenceSid body: tools.body outputParameters: - type: object mapping: $.