naftiko: 1.0.0-alpha2 info: label: Red Hat 3scale API Management description: Unified capability for managing APIs, developer accounts, applications, and monitoring usage through the Red Hat 3scale API Management platform. Combines the Service Management API for gateway authorization with the Account Management API for developer lifecycle operations. tags: - API Management - Developer Portal - Red Hat - Traffic Management created: '2026-05-02' modified: '2026-05-06' binds: - namespace: env keys: THREESCALE_PROVIDER_KEY: THREESCALE_PROVIDER_KEY THREESCALE_ACCESS_TOKEN: THREESCALE_ACCESS_TOKEN THREESCALE_ADMIN_DOMAIN: THREESCALE_ADMIN_DOMAIN capability: consumes: - type: http namespace: threescale-service-mgmt baseUri: https://su1.3scale.net description: 3scale Service Management API for API call authorization and reporting authentication: type: apikey key: provider_key value: '{{THREESCALE_PROVIDER_KEY}}' placement: query resources: - name: authorization path: /transactions description: API call authorization and usage reporting operations: - name: authorize-transaction method: GET description: Authorize an API call by checking usage limits inputParameters: - name: user_key in: query type: string required: true description: The API key of the application - name: service_id in: query type: string required: false description: The service ID outputRawFormat: xml outputParameters: - name: result type: object value: $. - name: authorize-and-report method: GET description: Authorize and report usage in a single call inputParameters: - name: user_key in: query type: string required: true description: The API key of the application - name: service_id in: query type: string required: false description: The service ID - name: usage_hits in: query type: integer required: false description: Number of hits to report outputRawFormat: xml outputParameters: - name: result type: object value: $. - name: report-transactions method: POST description: Report multiple API usage transactions in batch outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: form data: provider_key: '{{THREESCALE_PROVIDER_KEY}}' - type: http namespace: threescale-account-mgmt baseUri: https://{{THREESCALE_ADMIN_DOMAIN}}-admin.3scale.net/admin/api description: 3scale Account Management API for developer lifecycle operations authentication: type: apikey key: access_token value: '{{THREESCALE_ACCESS_TOKEN}}' placement: query resources: - name: accounts path: /accounts.json description: Developer account management operations: - name: list-accounts method: GET description: List all developer accounts inputParameters: - name: state in: query type: string required: false description: Filter by account state (approved, pending, rejected) - name: page in: query type: integer required: false description: Page number - name: per_page in: query type: integer required: false description: Results per page outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-account method: POST description: Create a new developer account outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: form data: org_name: '{{tools.org_name}}' username: '{{tools.username}}' email: '{{tools.email}}' password: '{{tools.password}}' - name: account-detail path: /accounts/{id}.json description: Individual account management operations: - name: get-account method: GET description: Get developer account details inputParameters: - name: id in: path type: integer required: true description: Account ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: delete-account method: DELETE description: Delete a developer account inputParameters: - name: id in: path type: integer required: true description: Account ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: applications path: /accounts/{account_id}/applications.json description: Application management for a developer account operations: - name: list-applications method: GET description: List applications for an account inputParameters: - name: account_id in: path type: integer required: true description: Developer account ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-application method: POST description: Create a new application subscription inputParameters: - name: account_id in: path type: integer required: true description: Developer account ID outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: form data: plan_id: '{{tools.plan_id}}' name: '{{tools.app_name}}' exposes: - type: rest port: 8080 namespace: threescale-api-mgmt-rest description: Unified REST API for 3scale API management operations. resources: - path: /v1/authorize name: authorization description: API call authorization operations: - method: GET name: authorize-api-call description: Authorize an API call against 3scale usage limits call: threescale-service-mgmt.authorize-transaction with: user_key: rest.user_key outputParameters: - type: object mapping: $. - path: /v1/authrep name: authrep description: Authorize and report API usage operations: - method: GET name: authorize-and-report description: Authorize and report API usage in one call call: threescale-service-mgmt.authorize-and-report with: user_key: rest.user_key outputParameters: - type: object mapping: $. - path: /v1/accounts name: accounts description: Developer account management operations: - method: GET name: list-accounts description: List developer accounts call: threescale-account-mgmt.list-accounts outputParameters: - type: object mapping: $. - method: POST name: create-account description: Create a new developer account call: threescale-account-mgmt.create-account outputParameters: - type: object mapping: $. - path: /v1/accounts/{id} name: account description: Individual developer account operations: - method: GET name: get-account description: Get developer account details call: threescale-account-mgmt.get-account with: id: rest.id outputParameters: - type: object mapping: $. - method: DELETE name: delete-account description: Delete a developer account call: threescale-account-mgmt.delete-account with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/accounts/{id}/applications name: applications description: Developer account applications operations: - method: GET name: list-applications description: List applications for a developer account call: threescale-account-mgmt.list-applications with: account_id: rest.id outputParameters: - type: object mapping: $. - method: POST name: create-application description: Subscribe account to an application plan call: threescale-account-mgmt.create-application with: account_id: rest.id outputParameters: - type: object mapping: $. - type: mcp port: 9080 namespace: threescale-api-mgmt-mcp transport: http description: MCP server for AI-assisted 3scale API management. tools: - name: authorize-api-call description: Authorize an API call by checking application usage limits in 3scale hints: readOnly: true openWorld: false call: threescale-service-mgmt.authorize-transaction with: user_key: tools.user_key outputParameters: - type: object mapping: $. - name: authorize-and-report description: Authorize an API call and simultaneously report usage to 3scale hints: readOnly: false openWorld: false call: threescale-service-mgmt.authorize-and-report with: user_key: tools.user_key outputParameters: - type: object mapping: $. - name: list-developer-accounts description: List all developer accounts registered in the 3scale developer portal hints: readOnly: true openWorld: true call: threescale-account-mgmt.list-accounts outputParameters: - type: object mapping: $. - name: create-developer-account description: Create a new developer account for API access hints: readOnly: false openWorld: false call: threescale-account-mgmt.create-account with: org_name: tools.org_name username: tools.username email: tools.email password: tools.password outputParameters: - type: object mapping: $. - name: get-developer-account description: Get details of a specific developer account including subscriptions hints: readOnly: true openWorld: true call: threescale-account-mgmt.get-account with: id: tools.account_id outputParameters: - type: object mapping: $. - name: list-account-applications description: List API applications and credentials for a developer account hints: readOnly: true openWorld: true call: threescale-account-mgmt.list-applications with: account_id: tools.account_id outputParameters: - type: object mapping: $. - name: create-application description: Subscribe a developer account to an API application plan hints: readOnly: false openWorld: false call: threescale-account-mgmt.create-application with: account_id: tools.account_id plan_id: tools.plan_id app_name: tools.app_name outputParameters: - type: object mapping: $. - name: delete-developer-account description: Delete a developer account and all associated applications hints: readOnly: false destructive: true idempotent: true call: threescale-account-mgmt.delete-account with: id: tools.account_id outputParameters: - type: object mapping: $.