Spring Cloud · Capability

Spring Cloud Microservice Platform

Unified capability for managing a Spring Cloud microservice platform including API gateway routing, service discovery inspection, and circuit breaker monitoring. Designed for platform engineers and DevOps teams.

Run with Naftiko Spring CloudMicroservicesPlatform EngineeringAPI GatewayService DiscoveryDevOps

What You Can Do

GET
List gateway routes — List all configured gateway routes
/v1/gateway/routes
POST
Create gateway route — Create a new gateway route
/v1/gateway/routes
GET
Get gateway route — Get route by ID
/v1/gateway/routes/{id}
DELETE
Delete gateway route — Delete a gateway route
/v1/gateway/routes/{id}
POST
Refresh gateway — Refresh route cache
/v1/gateway/refresh

MCP Tools

inspect-gateway-routes

Inspect all Spring Cloud Gateway routes to understand current traffic routing configuration

read-only
get-gateway-route

Get details of a specific gateway route by ID including predicates, filters, and destination URI

read-only
deploy-gateway-route

Deploy a new route to the Spring Cloud Gateway for routing traffic to a microservice

remove-gateway-route

Remove a gateway route, stopping traffic routing to that service

idempotent
sync-gateway-config

Force synchronization of the gateway route cache with current configuration

idempotent

APIs Used

gateway

Capability Spec

Raw ↑
naftiko: "1.0.0-alpha1"

info:
  label: "Spring Cloud Microservice Platform"
  description: "Unified capability for managing a Spring Cloud microservice platform including API gateway routing, service discovery inspection, and circuit breaker monitoring. Designed for platform engineers and DevOps teams."
  tags:
    - Spring Cloud
    - Microservices
    - Platform Engineering
    - API Gateway
    - Service Discovery
    - DevOps
  created: "2026-05-02"
  modified: "2026-05-02"

binds:
  - namespace: env
    keys:
      SPRING_GATEWAY_BASE_URL: SPRING_GATEWAY_BASE_URL

capability:
  consumes:
    - import: gateway
      location: ./shared/spring-cloud-gateway-actuator.yaml

  exposes:
    - type: rest
      port: 8080
      namespace: microservice-platform-api
      description: "Unified REST API for Spring Cloud microservice platform management."
      resources:
        - path: /v1/gateway/routes
          name: gateway-routes
          description: "API gateway route management"
          operations:
            - method: GET
              name: list-gateway-routes
              description: "List all configured gateway routes"
              call: "gateway.list-routes"
              outputParameters:
                - type: object
                  mapping: "$."
            - method: POST
              name: create-gateway-route
              description: "Create a new gateway route"
              call: "gateway.create-route"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/gateway/routes/{id}
          name: gateway-route-detail
          description: "Individual gateway route operations"
          operations:
            - method: GET
              name: get-gateway-route
              description: "Get route by ID"
              call: "gateway.get-route"
              with:
                id: "rest.id"
              outputParameters:
                - type: object
                  mapping: "$."
            - method: DELETE
              name: delete-gateway-route
              description: "Delete a gateway route"
              call: "gateway.delete-route"
              with:
                id: "rest.id"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/gateway/refresh
          name: gateway-refresh
          description: "Gateway cache management"
          operations:
            - method: POST
              name: refresh-gateway
              description: "Refresh route cache"
              call: "gateway.refresh-routes"
              outputParameters:
                - type: object
                  mapping: "$."

    - type: mcp
      port: 9080
      namespace: microservice-platform-mcp
      transport: http
      description: "MCP server for AI-assisted Spring Cloud microservice platform management."
      tools:
        - name: inspect-gateway-routes
          description: "Inspect all Spring Cloud Gateway routes to understand current traffic routing configuration"
          hints:
            readOnly: true
            openWorld: false
          call: "gateway.list-routes"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-gateway-route
          description: "Get details of a specific gateway route by ID including predicates, filters, and destination URI"
          hints:
            readOnly: true
            openWorld: false
          call: "gateway.get-route"
          with:
            id: "tools.routeId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: deploy-gateway-route
          description: "Deploy a new route to the Spring Cloud Gateway for routing traffic to a microservice"
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "gateway.create-route"
          with:
            routeId: "tools.routeId"
            uri: "tools.destinationUri"
            predicates: "tools.predicates"
            filters: "tools.filters"
          outputParameters:
            - type: object
              mapping: "$."
        - name: remove-gateway-route
          description: "Remove a gateway route, stopping traffic routing to that service"
          hints:
            readOnly: false
            destructive: true
            idempotent: true
          call: "gateway.delete-route"
          with:
            id: "tools.routeId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: sync-gateway-config
          description: "Force synchronization of the gateway route cache with current configuration"
          hints:
            readOnly: false
            destructive: false
            idempotent: true
          call: "gateway.refresh-routes"
          outputParameters:
            - type: object
              mapping: "$."