Gravitee · Capability

Gravitee Federation Bridge

Pulls federated API discovery from Gravitee — APIs that Gravitee Federation has discovered across AWS API Gateway, Apigee, Kong, Azure API Management, MuleSoft — into Naftiko Fleet, so Naftiko's capability registry sees every governed API in the org regardless of which gateway terminates it.

Run with Naftiko NaftikoGraviteePartnershipFederationDiscoveryMulti-Gateway

What You Can Do

GET
List integrations
/environments/{env_id}/integrations
POST
Create integration
/environments/{env_id}/integrations
GET
Get integration
/environments/{env_id}/integrations/{integration_id}
DELETE
Delete integration
/environments/{env_id}/integrations/{integration_id}
POST
Discover integration
/environments/{env_id}/integrations/{integration_id}/discover
GET
List federated apis
/environments/{env_id}/integrations/{integration_id}/apis
POST
Ingest federated api
/environments/{env_id}/integrations/{integration_id}/apis/ingest

MCP Tools

list-integrations

List Gravitee Federation integrations (AWS API Gateway, Apigee, Kong, Azure APIM, MuleSoft).

read-only
create-integration

Register a new Gravitee Federation integration to a foreign gateway.

get-integration

Get a single Gravitee Federation integration.

read-only
delete-integration

Delete a Gravitee Federation integration.

discover-integration

Trigger a federated discovery scan against an integrated foreign gateway.

list-federated-apis

List APIs that Gravitee Federation has discovered on an integrated foreign gateway.

read-only
ingest-federated-api

Ingest a federated foreign-gateway API into Gravitee as a managed API.

Capability Spec

gravitee-federation-bridge.yaml Raw ↑
naftiko: "1.0.0-alpha2"

info:
  title: Gravitee Federation Bridge
  description: >-
    Pulls federated API discovery from Gravitee — APIs that Gravitee
    Federation has discovered across AWS API Gateway, Apigee, Kong,
    Azure API Management, MuleSoft — into Naftiko Fleet, so Naftiko's
    capability registry sees every governed API in the org regardless
    of which gateway terminates it.
  tags:
    - Naftiko
    - Gravitee
    - Partnership
    - Federation
    - Discovery
    - Multi-Gateway
  created: '2026-05-15'
  modified: '2026-05-15'

binds:
  - namespace: gravitee-env
    description: Gravitee APIM Management endpoint + token.
    keys:
      GRAVITEE_APIM_BASE: GRAVITEE_APIM_BASE
      GRAVITEE_APIM_TOKEN: GRAVITEE_APIM_TOKEN

capability:
  consumes:
    - namespace: gravitee
      type: http
      baseUri: '{{GRAVITEE_APIM_BASE}}'
      authentication:
        type: bearer
        token: '{{GRAVITEE_APIM_TOKEN}}'
      resources:
        - name: integrations
          path: '/management/v2/environments/{{env_id}}/integrations'
          operations:
            - name: list-integrations
              method: GET
              inputParameters:
                - { name: env_id, in: path, required: true }
            - name: create-integration
              method: POST
              inputParameters:
                - { name: env_id, in: path, required: true }
        - name: integration
          path: '/management/v2/environments/{{env_id}}/integrations/{{integration_id}}'
          operations:
            - name: get-integration
              method: GET
              inputParameters:
                - { name: env_id, in: path, required: true }
                - { name: integration_id, in: path, required: true }
            - name: delete-integration
              method: DELETE
              inputParameters:
                - { name: env_id, in: path, required: true }
                - { name: integration_id, in: path, required: true }
        - name: integration-discover
          path: '/management/v2/environments/{{env_id}}/integrations/{{integration_id}}/_discover'
          operations:
            - name: discover-integration
              method: POST
              inputParameters:
                - { name: env_id, in: path, required: true }
                - { name: integration_id, in: path, required: true }
        - name: federated-apis
          path: '/management/v2/environments/{{env_id}}/integrations/{{integration_id}}/apis'
          operations:
            - name: list-federated-apis
              method: GET
              inputParameters:
                - { name: env_id, in: path, required: true }
                - { name: integration_id, in: path, required: true }
        - name: ingest-federated-api
          path: '/management/v2/environments/{{env_id}}/integrations/{{integration_id}}/apis/_ingest'
          operations:
            - name: ingest-federated-api
              method: POST
              inputParameters:
                - { name: env_id, in: path, required: true }
                - { name: integration_id, in: path, required: true }

  exposes:
    - type: rest
      address: 0.0.0.0
      port: 8080
      namespace: gravitee-federation-bridge-rest
      description: REST surface for managing Gravitee Federation integrations + federated API discovery.
      resources:
        - name: integrations
          path: '/environments/{env_id}/integrations'
          operations:
            - name: list-integrations
              method: GET
              inputParameters:
                - { name: env_id, in: path, type: string, required: true }
              call: gravitee.list-integrations
            - name: create-integration
              method: POST
              inputParameters:
                - { name: env_id, in: path, type: string, required: true }
              call: gravitee.create-integration
        - name: integration
          path: '/environments/{env_id}/integrations/{integration_id}'
          operations:
            - name: get-integration
              method: GET
              inputParameters:
                - { name: env_id, in: path, type: string, required: true }
                - { name: integration_id, in: path, type: string, required: true }
              call: gravitee.get-integration
            - name: delete-integration
              method: DELETE
              inputParameters:
                - { name: env_id, in: path, type: string, required: true }
                - { name: integration_id, in: path, type: string, required: true }
              call: gravitee.delete-integration
        - name: discover-integration
          path: '/environments/{env_id}/integrations/{integration_id}/discover'
          operations:
            - name: discover-integration
              method: POST
              inputParameters:
                - { name: env_id, in: path, type: string, required: true }
                - { name: integration_id, in: path, type: string, required: true }
              call: gravitee.discover-integration
        - name: federated-apis
          path: '/environments/{env_id}/integrations/{integration_id}/apis'
          operations:
            - name: list-federated-apis
              method: GET
              inputParameters:
                - { name: env_id, in: path, type: string, required: true }
                - { name: integration_id, in: path, type: string, required: true }
              call: gravitee.list-federated-apis
        - name: ingest-federated-api
          path: '/environments/{env_id}/integrations/{integration_id}/apis/ingest'
          operations:
            - name: ingest-federated-api
              method: POST
              inputParameters:
                - { name: env_id, in: path, type: string, required: true }
                - { name: integration_id, in: path, type: string, required: true }
              call: gravitee.ingest-federated-api

    - type: mcp
      address: 0.0.0.0
      port: 3010
      namespace: gravitee-federation-bridge-mcp
      description: MCP server for pulling federated API discovery from Gravitee into Naftiko Fleet.
      tools:
        - name: list-integrations
          description: List Gravitee Federation integrations (AWS API Gateway, Apigee, Kong, Azure APIM, MuleSoft).
          hints: { readOnly: true }
          inputParameters:
            - { name: env_id, type: string, required: true }
          call: gravitee.list-integrations
        - name: create-integration
          description: Register a new Gravitee Federation integration to a foreign gateway.
          hints: { destructiveHint: false }
          inputParameters:
            - { name: env_id, type: string, required: true }
          call: gravitee.create-integration
        - name: get-integration
          description: Get a single Gravitee Federation integration.
          hints: { readOnly: true }
          inputParameters:
            - { name: env_id, type: string, required: true }
            - { name: integration_id, type: string, required: true }
          call: gravitee.get-integration
        - name: delete-integration
          description: Delete a Gravitee Federation integration.
          hints: { destructiveHint: true }
          inputParameters:
            - { name: env_id, type: string, required: true }
            - { name: integration_id, type: string, required: true }
          call: gravitee.delete-integration
        - name: discover-integration
          description: Trigger a federated discovery scan against an integrated foreign gateway.
          hints: { destructiveHint: false }
          inputParameters:
            - { name: env_id, type: string, required: true }
            - { name: integration_id, type: string, required: true }
          call: gravitee.discover-integration
        - name: list-federated-apis
          description: List APIs that Gravitee Federation has discovered on an integrated foreign gateway.
          hints: { readOnly: true }
          inputParameters:
            - { name: env_id, type: string, required: true }
            - { name: integration_id, type: string, required: true }
          call: gravitee.list-federated-apis
        - name: ingest-federated-api
          description: Ingest a federated foreign-gateway API into Gravitee as a managed API.
          hints: { destructiveHint: false }
          inputParameters:
            - { name: env_id, type: string, required: true }
            - { name: integration_id, type: string, required: true }
          call: gravitee.ingest-federated-api