naftiko: 1.0.0-alpha2 info: label: Ciena Blue Planet Open API — Topology description: 'Ciena Blue Planet Open API — Topology. 3 operations. Lead operation: List network topology links. Self-contained Naftiko capability covering one Ciena business surface.' tags: - Ciena - Topology created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: CIENA_API_KEY: CIENA_API_KEY capability: consumes: - type: http namespace: blue-planet-topology baseUri: https://api.blueplanet.com/bpocore/market/api/v1 description: Ciena Blue Planet Open API — Topology business capability. Self-contained, no shared references. resources: - name: topology-links path: /topology/links operations: - name: listtopologylinks method: GET description: List network topology links outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: nodeId in: query type: string description: Filter links connected to a specific node - name: type in: query type: string description: Filter by link type - name: limit in: query type: integer - name: topology-nodes path: /topology/nodes operations: - name: listtopologynodes method: GET description: List network topology nodes outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: type in: query type: string description: Filter by node type - name: adminState in: query type: string description: Filter by administrative state - name: limit in: query type: integer - name: offset in: query type: integer - name: topology-nodes-nodeId path: /topology/nodes/{nodeId} operations: - name: gettopologynode method: GET description: Get a specific network topology node outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: nodeId in: path type: string description: Unique node identifier required: true authentication: type: bearer token: '{{env.CIENA_API_KEY}}' exposes: - type: rest namespace: blue-planet-topology-rest port: 8080 description: REST adapter for Ciena Blue Planet Open API — Topology. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/topology/links name: topology-links description: REST surface for topology-links. operations: - method: GET name: listtopologylinks description: List network topology links call: blue-planet-topology.listtopologylinks with: nodeId: rest.nodeId type: rest.type limit: rest.limit outputParameters: - type: object mapping: $. - path: /v1/topology/nodes name: topology-nodes description: REST surface for topology-nodes. operations: - method: GET name: listtopologynodes description: List network topology nodes call: blue-planet-topology.listtopologynodes with: type: rest.type adminState: rest.adminState limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - path: /v1/topology/nodes/{nodeid} name: topology-nodes-nodeid description: REST surface for topology-nodes-nodeId. operations: - method: GET name: gettopologynode description: Get a specific network topology node call: blue-planet-topology.gettopologynode with: nodeId: rest.nodeId outputParameters: - type: object mapping: $. - type: mcp namespace: blue-planet-topology-mcp port: 9090 transport: http description: MCP adapter for Ciena Blue Planet Open API — Topology. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-network-topology-links description: List network topology links hints: readOnly: true destructive: false idempotent: true call: blue-planet-topology.listtopologylinks with: nodeId: tools.nodeId type: tools.type limit: tools.limit outputParameters: - type: object mapping: $. - name: list-network-topology-nodes description: List network topology nodes hints: readOnly: true destructive: false idempotent: true call: blue-planet-topology.listtopologynodes with: type: tools.type adminState: tools.adminState limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: get-specific-network-topology-node description: Get a specific network topology node hints: readOnly: true destructive: false idempotent: true call: blue-planet-topology.gettopologynode with: nodeId: tools.nodeId outputParameters: - type: object mapping: $.