naftiko: 1.0.0-alpha2 info: label: Gravitee API Management description: API management workflow for platform engineers and API producers to manage Gravitee APIs, plans, subscriptions, applications, and platform configuration through the Management API. tags: - Gravitee - API Management - Administration created: '2026-05-04' modified: '2026-05-06' binds: - namespace: env keys: GRAVITEE_MANAGEMENT_URL: GRAVITEE_MANAGEMENT_URL GRAVITEE_MANAGEMENT_TOKEN: GRAVITEE_MANAGEMENT_TOKEN capability: consumes: - type: http namespace: gravitee-management baseUri: '{GRAVITEE_MANAGEMENT_URL}' description: Gravitee Management API for platform administration. authentication: type: bearer value: '{{GRAVITEE_MANAGEMENT_TOKEN}}' placement: header resources: - name: apis path: /apis description: API definition management. operations: - name: list-apis method: GET description: List all APIs on the platform. inputParameters: - name: page in: query type: integer required: false description: Page number. - name: size in: query type: integer required: false description: Items per page. - name: q in: query type: string required: false description: Search query. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-api method: POST description: Create a new API definition. inputParameters: [] outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' description: '{{tools.description}}' version: '{{tools.version}}' definitionVersion: '{{tools.definitionVersion}}' type: '{{tools.type}}' - name: get-api method: GET description: Get an API definition by ID. inputParameters: - name: apiId in: path type: string required: true description: API identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: update-api method: PUT description: Update an API definition. inputParameters: - name: apiId in: path type: string required: true description: API identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' description: '{{tools.description}}' version: '{{tools.version}}' visibility: '{{tools.visibility}}' lifecycleState: '{{tools.lifecycleState}}' - name: delete-api method: DELETE description: Delete an API definition. inputParameters: - name: apiId in: path type: string required: true description: API identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deploy-api method: POST description: Deploy the current API definition to the gateway. inputParameters: - name: apiId in: path type: string required: true description: API identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: start-api method: POST description: Start an API on the gateway. inputParameters: - name: apiId in: path type: string required: true description: API identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: stop-api method: POST description: Stop an API on the gateway. inputParameters: - name: apiId in: path type: string required: true description: API identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-plans path: /apis/{apiId}/plans description: Plans defined for a specific API. operations: - name: list-api-plans method: GET description: List all plans defined for an API. inputParameters: - name: apiId in: path type: string required: true description: API identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-plan method: POST description: Create a new plan for an API. inputParameters: - name: apiId in: path type: string required: true description: API identifier. outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' description: '{{tools.description}}' security: '{{tools.security}}' validation: '{{tools.validation}}' - name: api-subscriptions path: /apis/{apiId}/subscriptions description: Subscriptions for a specific API. operations: - name: list-api-subscriptions method: GET description: List all subscriptions for an API. inputParameters: - name: apiId in: path type: string required: true description: API identifier. - name: status in: query type: string required: false description: Filter by subscription status. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: applications path: /applications description: Application registration. operations: - name: list-applications method: GET description: List all applications registered on the platform. inputParameters: - name: page in: query type: integer required: false description: Page number. - name: size in: query type: integer required: false description: Items per page. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-application method: POST description: Register a new application. inputParameters: [] outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' description: '{{tools.description}}' type: '{{tools.type}}' settings: '{{tools.settings}}' - name: users path: /users description: Platform users. operations: - name: list-users method: GET description: List all users on the platform. inputParameters: - name: page in: query type: integer required: false description: Page number. - name: size in: query type: integer required: false description: Items per page. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: configuration path: /configuration description: Platform configuration. operations: - name: get-configuration method: GET description: Get platform-wide configuration settings. inputParameters: [] outputRawFormat: json outputParameters: - name: result type: object value: $. - name: audit path: /audit description: Platform audit events. operations: - name: list-audit-events method: GET description: List audit events tracking changes across the platform. inputParameters: - name: page in: query type: integer required: false description: Page number. - name: size in: query type: integer required: false description: Items per page. - name: from in: query type: integer required: false description: Start timestamp (epoch ms). - name: to in: query type: integer required: false description: End timestamp (epoch ms). outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: gravitee-api-management-api description: Unified REST API for Gravitee API management operations. resources: - path: /v1/apis name: apis description: API definitions. operations: - method: GET name: list-apis description: List all APIs. call: gravitee-management.list-apis outputParameters: - type: object mapping: $. - method: POST name: create-api description: Create a new API definition. call: gravitee-management.create-api with: name: rest.name description: rest.description version: rest.version definitionVersion: rest.definitionVersion type: rest.type outputParameters: - type: object mapping: $. - path: /v1/apis/{apiId} name: api description: Single API definition. operations: - method: GET name: get-api description: Get an API by ID. call: gravitee-management.get-api with: apiId: rest.apiId outputParameters: - type: object mapping: $. - method: DELETE name: delete-api description: Delete an API. call: gravitee-management.delete-api with: apiId: rest.apiId outputParameters: - type: object mapping: $. - path: /v1/apis/{apiId}/lifecycle name: api-lifecycle description: API lifecycle controls. operations: - method: POST name: deploy-api description: Deploy an API definition to the gateway. call: gravitee-management.deploy-api with: apiId: rest.apiId outputParameters: - type: object mapping: $. - method: POST name: start-api description: Start an API on the gateway. call: gravitee-management.start-api with: apiId: rest.apiId outputParameters: - type: object mapping: $. - method: POST name: stop-api description: Stop an API on the gateway. call: gravitee-management.stop-api with: apiId: rest.apiId outputParameters: - type: object mapping: $. - path: /v1/apis/{apiId}/plans name: api-plans description: Plans for an API. operations: - method: GET name: list-api-plans description: List plans for an API. call: gravitee-management.list-api-plans with: apiId: rest.apiId outputParameters: - type: object mapping: $. - path: /v1/apis/{apiId}/subscriptions name: api-subscriptions description: Subscriptions for an API. operations: - method: GET name: list-api-subscriptions description: List subscriptions for an API. call: gravitee-management.list-api-subscriptions with: apiId: rest.apiId outputParameters: - type: object mapping: $. - path: /v1/applications name: applications description: Application registry. operations: - method: GET name: list-applications description: List all applications. call: gravitee-management.list-applications outputParameters: - type: object mapping: $. - path: /v1/users name: users description: Platform users. operations: - method: GET name: list-users description: List platform users. call: gravitee-management.list-users outputParameters: - type: object mapping: $. - path: /v1/configuration name: configuration description: Platform configuration. operations: - method: GET name: get-configuration description: Get platform-wide configuration. call: gravitee-management.get-configuration outputParameters: - type: object mapping: $. - path: /v1/audit name: audit description: Audit events. operations: - method: GET name: list-audit-events description: List platform audit events. call: gravitee-management.list-audit-events outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: gravitee-api-management-mcp transport: http description: MCP server for AI-assisted Gravitee API management. tools: - name: list-apis description: List all APIs on the Gravitee platform. hints: readOnly: true call: gravitee-management.list-apis outputParameters: - type: object mapping: $. - name: get-api description: Get a Gravitee API definition by ID. hints: readOnly: true call: gravitee-management.get-api with: apiId: tools.apiId outputParameters: - type: object mapping: $. - name: create-api description: Create a new Gravitee API definition. hints: readOnly: false call: gravitee-management.create-api with: name: tools.name description: tools.description version: tools.version definitionVersion: tools.definitionVersion type: tools.type outputParameters: - type: object mapping: $. - name: update-api description: Update a Gravitee API definition. hints: readOnly: false idempotent: true call: gravitee-management.update-api with: apiId: tools.apiId outputParameters: - type: object mapping: $. - name: delete-api description: Delete a Gravitee API definition. hints: destructive: true call: gravitee-management.delete-api with: apiId: tools.apiId outputParameters: - type: object mapping: $. - name: deploy-api description: Deploy a Gravitee API to the gateway. hints: readOnly: false idempotent: true call: gravitee-management.deploy-api with: apiId: tools.apiId outputParameters: - type: object mapping: $. - name: start-api description: Start a Gravitee API on the gateway. hints: readOnly: false idempotent: true call: gravitee-management.start-api with: apiId: tools.apiId outputParameters: - type: object mapping: $. - name: stop-api description: Stop a Gravitee API on the gateway. hints: readOnly: false idempotent: true call: gravitee-management.stop-api with: apiId: tools.apiId outputParameters: - type: object mapping: $. - name: list-api-plans description: List plans defined for an API. hints: readOnly: true call: gravitee-management.list-api-plans with: apiId: tools.apiId outputParameters: - type: object mapping: $. - name: create-plan description: Create a new plan for an API. hints: readOnly: false call: gravitee-management.create-plan with: apiId: tools.apiId name: tools.name security: tools.security outputParameters: - type: object mapping: $. - name: list-api-subscriptions description: List subscriptions for an API. hints: readOnly: true call: gravitee-management.list-api-subscriptions with: apiId: tools.apiId outputParameters: - type: object mapping: $. - name: list-applications description: List all applications registered on the platform. hints: readOnly: true call: gravitee-management.list-applications outputParameters: - type: object mapping: $. - name: create-application description: Register a new application. hints: readOnly: false call: gravitee-management.create-application with: name: tools.name type: tools.type outputParameters: - type: object mapping: $. - name: list-users description: List platform users. hints: readOnly: true call: gravitee-management.list-users outputParameters: - type: object mapping: $. - name: get-configuration description: Get platform-wide configuration settings. hints: readOnly: true call: gravitee-management.get-configuration outputParameters: - type: object mapping: $. - name: list-audit-events description: List platform audit events. hints: readOnly: true call: gravitee-management.list-audit-events outputParameters: - type: object mapping: $.