naftiko: 1.0.0-alpha2 info: label: Telnyx API — IP Ranges description: 'Telnyx API — IP Ranges. 3 operations. Lead operation: List all Access IP Ranges. Self-contained Naftiko capability covering one Telnyx business surface.' tags: - Telnyx - IP Ranges created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TELNYX_API_KEY: TELNYX_API_KEY capability: consumes: - type: http namespace: telnyx-ip-ranges baseUri: https://api.telnyx.com/v2 description: Telnyx API — IP Ranges business capability. Self-contained, no shared references. resources: - name: access_ip_ranges path: /access_ip_ranges operations: - name: listaccessipranges method: GET description: List all Access IP Ranges outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: filter in: query type: object description: 'Consolidated filter parameter (deepObject style). Originally: filter[cidr_block], filter[cidr_block][startswith], filter[cidr_block][endswith], filter[cidr_bloc' - name: page in: query type: object description: 'Consolidated page parameter (deepObject style). Originally: page[number], page[size]' - name: createaccessiprange method: POST description: Create new Access IP Range outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: access_ip_ranges-access_ip_range_id path: /access_ip_ranges/{access_ip_range_id} operations: - name: deleteaccessiprange method: DELETE description: Delete access IP ranges outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: access_ip_range_id in: path type: string required: true authentication: type: bearer token: '{{env.TELNYX_API_KEY}}' exposes: - type: rest namespace: telnyx-ip-ranges-rest port: 8080 description: REST adapter for Telnyx API — IP Ranges. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/access-ip-ranges name: access-ip-ranges description: REST surface for access_ip_ranges. operations: - method: GET name: listaccessipranges description: List all Access IP Ranges call: telnyx-ip-ranges.listaccessipranges with: filter: rest.filter page: rest.page outputParameters: - type: object mapping: $. - method: POST name: createaccessiprange description: Create new Access IP Range call: telnyx-ip-ranges.createaccessiprange with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/access-ip-ranges/{access-ip-range-id} name: access-ip-ranges-access-ip-range-id description: REST surface for access_ip_ranges-access_ip_range_id. operations: - method: DELETE name: deleteaccessiprange description: Delete access IP ranges call: telnyx-ip-ranges.deleteaccessiprange with: access_ip_range_id: rest.access_ip_range_id outputParameters: - type: object mapping: $. - type: mcp namespace: telnyx-ip-ranges-mcp port: 9090 transport: http description: MCP adapter for Telnyx API — IP Ranges. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-all-access-ip-ranges description: List all Access IP Ranges hints: readOnly: true destructive: false idempotent: true call: telnyx-ip-ranges.listaccessipranges with: filter: tools.filter page: tools.page outputParameters: - type: object mapping: $. - name: create-new-access-ip-range description: Create new Access IP Range hints: readOnly: false destructive: false idempotent: false call: telnyx-ip-ranges.createaccessiprange with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-access-ip-ranges description: Delete access IP ranges hints: readOnly: false destructive: true idempotent: true call: telnyx-ip-ranges.deleteaccessiprange with: access_ip_range_id: tools.access_ip_range_id outputParameters: - type: object mapping: $.