naftiko: 1.0.0-alpha2 info: label: HashiCorp Consul Connect API — CA description: 'HashiCorp Consul Connect API — CA. 3 operations. Lead operation: Get CA configuration. Self-contained Naftiko capability covering one Consul Connect business surface.' tags: - Consul Connect - CA created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: CONSUL_CONNECT_API_KEY: CONSUL_CONNECT_API_KEY capability: consumes: - type: http namespace: consul-connect-ca baseUri: http://localhost:8500/v1 description: HashiCorp Consul Connect API — CA business capability. Self-contained, no shared references. resources: - name: connect-ca-configuration path: /connect/ca/configuration operations: - name: getcaconfiguration method: GET description: Get CA configuration outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatecaconfiguration method: PUT description: Update CA configuration outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ForceWithoutCrossSigning in: query type: boolean - name: body in: body type: object description: Request body (JSON). required: true - name: connect-ca-roots path: /connect/ca/roots operations: - name: listcaroots method: GET description: List CA root certificates outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: pem in: query type: boolean authentication: type: apikey key: X-Consul-Token value: '{{env.CONSUL_CONNECT_API_KEY}}' placement: header exposes: - type: rest namespace: consul-connect-ca-rest port: 8080 description: REST adapter for HashiCorp Consul Connect API — CA. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/connect/ca/configuration name: connect-ca-configuration description: REST surface for connect-ca-configuration. operations: - method: GET name: getcaconfiguration description: Get CA configuration call: consul-connect-ca.getcaconfiguration outputParameters: - type: object mapping: $. - method: PUT name: updatecaconfiguration description: Update CA configuration call: consul-connect-ca.updatecaconfiguration with: ForceWithoutCrossSigning: rest.ForceWithoutCrossSigning body: rest.body outputParameters: - type: object mapping: $. - path: /v1/connect/ca/roots name: connect-ca-roots description: REST surface for connect-ca-roots. operations: - method: GET name: listcaroots description: List CA root certificates call: consul-connect-ca.listcaroots with: pem: rest.pem outputParameters: - type: object mapping: $. - type: mcp namespace: consul-connect-ca-mcp port: 9090 transport: http description: MCP adapter for HashiCorp Consul Connect API — CA. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-ca-configuration description: Get CA configuration hints: readOnly: true destructive: false idempotent: true call: consul-connect-ca.getcaconfiguration outputParameters: - type: object mapping: $. - name: update-ca-configuration description: Update CA configuration hints: readOnly: false destructive: false idempotent: true call: consul-connect-ca.updatecaconfiguration with: ForceWithoutCrossSigning: tools.ForceWithoutCrossSigning body: tools.body outputParameters: - type: object mapping: $. - name: list-ca-root-certificates description: List CA root certificates hints: readOnly: true destructive: false idempotent: true call: consul-connect-ca.listcaroots with: pem: tools.pem outputParameters: - type: object mapping: $.