naftiko: 1.0.0-alpha2 info: label: "TVmaze Public API \u2014 Episodes" description: "TVmaze Public API \u2014 Episodes. 3 operations. Lead operation: Get Episode. Self-contained Naftiko capability\ \ covering one TVmaze business surface." tags: - TVmaze - Public API - Episodes created: '2026-05-30' modified: '2026-05-30' binds: [] capability: consumes: - type: http namespace: public-episodes baseUri: https://api.tvmaze.com description: "TVmaze Public API \u2014 Episodes business capability. Self-contained, no shared references." resources: - name: episodes-id path: /episodes/{id} operations: - name: getEpisode method: GET description: Get Episode inputParameters: - name: id in: path type: integer required: true description: '' - name: embed in: query type: array required: false description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: episodes-id-guestcast path: /episodes/{id}/guestcast operations: - name: getEpisodeGuestCast method: GET description: Get Episode Guest Cast inputParameters: - name: id in: path type: integer required: true description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: episodes-id-guestcrew path: /episodes/{id}/guestcrew operations: - name: getEpisodeGuestCrew method: GET description: Get Episode Guest Crew inputParameters: - name: id in: path type: integer required: true description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: public-episodes-rest port: 8080 description: "REST adapter for TVmaze Public API \u2014 Episodes. One Spectral-compliant resource per consumed operation,\ \ prefixed with /v1." resources: - path: /v1/episodes/{id} name: episodes-id description: REST surface for /episodes/{id}. operations: - method: GET name: getEpisode description: Get Episode call: public-episodes.getEpisode with: id: rest.id embed: rest.embed outputParameters: - type: object mapping: $. - path: /v1/episodes/{id}/guestcast name: episodes-id-guestcast description: REST surface for /episodes/{id}/guestcast. operations: - method: GET name: getEpisodeGuestCast description: Get Episode Guest Cast call: public-episodes.getEpisodeGuestCast with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/episodes/{id}/guestcrew name: episodes-id-guestcrew description: REST surface for /episodes/{id}/guestcrew. operations: - method: GET name: getEpisodeGuestCrew description: Get Episode Guest Crew call: public-episodes.getEpisodeGuestCrew with: id: rest.id outputParameters: - type: object mapping: $. - type: mcp namespace: public-episodes-mcp port: 9090 transport: http description: "MCP adapter for TVmaze Public API \u2014 Episodes. One tool per consumed operation, routed inline through\ \ this capability's consumes block." tools: - name: get-episode description: Get Episode hints: readOnly: true destructive: false idempotent: true call: public-episodes.getEpisode with: id: tools.id embed: tools.embed outputParameters: - type: object mapping: $. - name: get-episode-guest-cast description: Get Episode Guest Cast hints: readOnly: true destructive: false idempotent: true call: public-episodes.getEpisodeGuestCast with: id: tools.id outputParameters: - type: object mapping: $. - name: get-episode-guest-crew description: Get Episode Guest Crew hints: readOnly: true destructive: false idempotent: true call: public-episodes.getEpisodeGuestCrew with: id: tools.id outputParameters: - type: object mapping: $.