naftiko: 1.0.0-alpha2 info: label: Gravitee.io APIM Management API — Plugins description: 'Gravitee.io APIM Management API — Plugins. 6 operations. Lead operation: List Endpoint Plugins. Self-contained Naftiko capability covering one Gravitee business surface.' tags: - Gravitee - Plugins created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: GRAVITEE_API_KEY: GRAVITEE_API_KEY capability: consumes: - type: http namespace: apim-plugins baseUri: https://{host}/management/v2 description: Gravitee.io APIM Management API — Plugins business capability. Self-contained, no shared references. resources: - name: plugins-endpoints path: /plugins/endpoints operations: - name: listendpointplugins method: GET description: List Endpoint Plugins outputRawFormat: json outputParameters: - name: result type: object value: $. - name: plugins-endpoints-endpointId path: /plugins/endpoints/{endpointId} operations: - name: getendpointplugin method: GET description: Get an Endpoint Plugin outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: endpointId in: path type: string required: true - name: plugins-entrypoints path: /plugins/entrypoints operations: - name: listentrypointplugins method: GET description: List Entrypoint Plugins outputRawFormat: json outputParameters: - name: result type: object value: $. - name: plugins-policies path: /plugins/policies operations: - name: listpolicyplugins method: GET description: List Policy Plugins outputRawFormat: json outputParameters: - name: result type: object value: $. - name: plugins-policies-policyId path: /plugins/policies/{policyId} operations: - name: getpolicyplugin method: GET description: Get a Policy Plugin outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: policyId in: path type: string required: true - name: plugins-resources path: /plugins/resources operations: - name: listresourceplugins method: GET description: List Resource Plugins outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.GRAVITEE_API_KEY}}' exposes: - type: rest namespace: apim-plugins-rest port: 8080 description: REST adapter for Gravitee.io APIM Management API — Plugins. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/plugins/endpoints name: plugins-endpoints description: REST surface for plugins-endpoints. operations: - method: GET name: listendpointplugins description: List Endpoint Plugins call: apim-plugins.listendpointplugins outputParameters: - type: object mapping: $. - path: /v1/plugins/endpoints/{endpointid} name: plugins-endpoints-endpointid description: REST surface for plugins-endpoints-endpointId. operations: - method: GET name: getendpointplugin description: Get an Endpoint Plugin call: apim-plugins.getendpointplugin with: endpointId: rest.endpointId outputParameters: - type: object mapping: $. - path: /v1/plugins/entrypoints name: plugins-entrypoints description: REST surface for plugins-entrypoints. operations: - method: GET name: listentrypointplugins description: List Entrypoint Plugins call: apim-plugins.listentrypointplugins outputParameters: - type: object mapping: $. - path: /v1/plugins/policies name: plugins-policies description: REST surface for plugins-policies. operations: - method: GET name: listpolicyplugins description: List Policy Plugins call: apim-plugins.listpolicyplugins outputParameters: - type: object mapping: $. - path: /v1/plugins/policies/{policyid} name: plugins-policies-policyid description: REST surface for plugins-policies-policyId. operations: - method: GET name: getpolicyplugin description: Get a Policy Plugin call: apim-plugins.getpolicyplugin with: policyId: rest.policyId outputParameters: - type: object mapping: $. - path: /v1/plugins/resources name: plugins-resources description: REST surface for plugins-resources. operations: - method: GET name: listresourceplugins description: List Resource Plugins call: apim-plugins.listresourceplugins outputParameters: - type: object mapping: $. - type: mcp namespace: apim-plugins-mcp port: 9090 transport: http description: MCP adapter for Gravitee.io APIM Management API — Plugins. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-endpoint-plugins description: List Endpoint Plugins hints: readOnly: true destructive: false idempotent: true call: apim-plugins.listendpointplugins outputParameters: - type: object mapping: $. - name: get-endpoint-plugin description: Get an Endpoint Plugin hints: readOnly: true destructive: false idempotent: true call: apim-plugins.getendpointplugin with: endpointId: tools.endpointId outputParameters: - type: object mapping: $. - name: list-entrypoint-plugins description: List Entrypoint Plugins hints: readOnly: true destructive: false idempotent: true call: apim-plugins.listentrypointplugins outputParameters: - type: object mapping: $. - name: list-policy-plugins description: List Policy Plugins hints: readOnly: true destructive: false idempotent: true call: apim-plugins.listpolicyplugins outputParameters: - type: object mapping: $. - name: get-policy-plugin description: Get a Policy Plugin hints: readOnly: true destructive: false idempotent: true call: apim-plugins.getpolicyplugin with: policyId: tools.policyId outputParameters: - type: object mapping: $. - name: list-resource-plugins description: List Resource Plugins hints: readOnly: true destructive: false idempotent: true call: apim-plugins.listresourceplugins outputParameters: - type: object mapping: $.