naftiko: 1.0.0-alpha2 info: label: Fastly Publishing — Fanout Publish description: Publish messages to Fanout subscribers through Fastly's GRIP-compatible service-scoped publish endpoint, delivering HTTP responses, HTTP streams, and WebSocket frames at the edge. tags: [Fastly, Publishing, Fanout, Real-Time, GRIP] created: '2026-05-22' modified: '2026-05-22' binds: - namespace: env keys: { FASTLY_API_KEY: FASTLY_API_KEY } capability: consumes: - type: http namespace: publishing-publish baseUri: https://api.fastly.com description: Fastly Fanout publish endpoint. resources: - name: service-publish path: /service/{service_id}/publish/ operations: - { name: publishmessages, method: POST, description: Publish messages to Fanout, 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: publishing-publish-rest port: 8080 description: REST adapter. resources: - path: /v1/services/{service-id}/publish name: service-publish description: Fanout publish. operations: - { method: POST, name: publishmessages, description: Publish messages, call: publishing-publish.publishmessages, outputParameters: [ { type: object, mapping: $. } ] } - type: mcp namespace: publishing-publish-mcp port: 9090 transport: http description: MCP adapter. tools: - { name: publish-fanout-messages, description: Publish messages to Fastly Fanout subscribers, hints: { readOnly: false, destructive: false, idempotent: false }, call: publishing-publish.publishmessages, outputParameters: [ { type: object, mapping: $. } ] }