naftiko: 1.0.0-alpha2 info: label: HashiCorp Nomad HTTP API — Variables description: 'HashiCorp Nomad HTTP API — Variables. 4 operations. Lead operation: Read a variable. Self-contained Naftiko capability covering one Nomad business surface.' tags: - Nomad - Variables created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: NOMAD_API_KEY: NOMAD_API_KEY capability: consumes: - type: http namespace: http-variables baseUri: http://localhost:4646/v1 description: HashiCorp Nomad HTTP API — Variables business capability. Self-contained, no shared references. resources: - name: var-variablePath path: /var/{variablePath} operations: - name: readvariable method: GET description: Read a variable outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: variablePath in: path type: string description: The path of the variable. required: true - name: upsertvariable method: PUT description: Create or update a variable outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: variablePath in: path type: string description: The path of the variable. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: deletevariable method: DELETE description: Delete a variable outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: variablePath in: path type: string description: The path of the variable. required: true - name: vars path: /vars operations: - name: listvariables method: GET description: List variables outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.NOMAD_API_KEY}}' exposes: - type: rest namespace: http-variables-rest port: 8080 description: REST adapter for HashiCorp Nomad HTTP API — Variables. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/var/{variablepath} name: var-variablepath description: REST surface for var-variablePath. operations: - method: GET name: readvariable description: Read a variable call: http-variables.readvariable with: variablePath: rest.variablePath outputParameters: - type: object mapping: $. - method: PUT name: upsertvariable description: Create or update a variable call: http-variables.upsertvariable with: variablePath: rest.variablePath body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletevariable description: Delete a variable call: http-variables.deletevariable with: variablePath: rest.variablePath outputParameters: - type: object mapping: $. - path: /v1/vars name: vars description: REST surface for vars. operations: - method: GET name: listvariables description: List variables call: http-variables.listvariables outputParameters: - type: object mapping: $. - type: mcp namespace: http-variables-mcp port: 9090 transport: http description: MCP adapter for HashiCorp Nomad HTTP API — Variables. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: read-variable description: Read a variable hints: readOnly: true destructive: false idempotent: true call: http-variables.readvariable with: variablePath: tools.variablePath outputParameters: - type: object mapping: $. - name: create-update-variable description: Create or update a variable hints: readOnly: false destructive: false idempotent: true call: http-variables.upsertvariable with: variablePath: tools.variablePath body: tools.body outputParameters: - type: object mapping: $. - name: delete-variable description: Delete a variable hints: readOnly: false destructive: true idempotent: true call: http-variables.deletevariable with: variablePath: tools.variablePath outputParameters: - type: object mapping: $. - name: list-variables description: List variables hints: readOnly: true destructive: false idempotent: true call: http-variables.listvariables outputParameters: - type: object mapping: $.