naftiko: 1.0.0-alpha2 info: label: Fastly API Security — Operations description: Manage discovered API operations in the Fastly API Security catalog. Supports listing, creating, retrieving, updating, deleting, and tagging operations identified in traffic. tags: [Fastly, API Security, Discovery] created: '2026-05-22' modified: '2026-05-22' binds: - namespace: env keys: { FASTLY_API_KEY: FASTLY_API_KEY } capability: consumes: - type: http namespace: api-security-operations baseUri: https://api.fastly.com description: Fastly API Security Operations CRUD. resources: - name: operations path: /security/api/operations operations: - { name: listoperations, method: GET, description: List API operations, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] } - { name: createoperation, method: POST, description: Create API operation, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] } - name: operation path: /security/api/operations/{operation_id} operations: - { name: getoperation, method: GET, description: Get API operation, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] } - { name: updateoperation, method: PATCH, description: Update API operation, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] } - { name: deleteoperation, method: DELETE, description: Delete API operation, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] } - name: operation-tags path: /security/api/operations/{operation_id}/tags operations: - { name: setoperationtags, method: PUT, description: Set operation tags, outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ] } authentication: { type: apikey, key: Fastly-Key, value: '{{env.FASTLY_API_KEY}}', placement: header } exposes: - type: rest namespace: api-security-operations-rest port: 8080 description: REST adapter. resources: - path: /v1/security/api/operations name: operations description: API Security operations collection. operations: - { method: GET, name: listoperations, description: List API operations, call: api-security-operations.listoperations, outputParameters: [ { type: object, mapping: $. } ] } - { method: POST, name: createoperation, description: Create API operation, call: api-security-operations.createoperation, outputParameters: [ { type: object, mapping: $. } ] } - path: /v1/security/api/operations/{operation-id} name: operation description: Single API operation. operations: - { method: GET, name: getoperation, description: Get API operation, call: api-security-operations.getoperation, outputParameters: [ { type: object, mapping: $. } ] } - { method: PATCH, name: updateoperation, description: Update API operation, call: api-security-operations.updateoperation, outputParameters: [ { type: object, mapping: $. } ] } - { method: DELETE, name: deleteoperation, description: Delete API operation, call: api-security-operations.deleteoperation, outputParameters: [ { type: object, mapping: $. } ] } - path: /v1/security/api/operations/{operation-id}/tags name: operation-tags description: Operation tags. operations: - { method: PUT, name: setoperationtags, description: Set operation tags, call: api-security-operations.setoperationtags, outputParameters: [ { type: object, mapping: $. } ] } - type: mcp namespace: api-security-operations-mcp port: 9090 transport: http description: MCP adapter. tools: - { name: list-api-operations, description: List Fastly API Security operations, hints: { readOnly: true, destructive: false, idempotent: true }, call: api-security-operations.listoperations, outputParameters: [ { type: object, mapping: $. } ] } - { name: get-api-operation, description: Get a Fastly API Security operation, hints: { readOnly: true, destructive: false, idempotent: true }, call: api-security-operations.getoperation, outputParameters: [ { type: object, mapping: $. } ] } - { name: update-api-operation, description: Update a Fastly API Security operation, hints: { readOnly: false, destructive: false, idempotent: true }, call: api-security-operations.updateoperation, outputParameters: [ { type: object, mapping: $. } ] } - { name: delete-api-operation, description: Delete a Fastly API Security operation, hints: { readOnly: false, destructive: true, idempotent: true }, call: api-security-operations.deleteoperation, outputParameters: [ { type: object, mapping: $. } ] } - { name: set-api-operation-tags, description: Set tags on a Fastly API Security operation, hints: { readOnly: false, destructive: false, idempotent: true }, call: api-security-operations.setoperationtags, outputParameters: [ { type: object, mapping: $. } ] }