TVmaze · Capability

TVmaze Premium User API — Followed Webchannels

TVmaze Premium User API — followed webchannels. 4 operations. Lead operation: List the Followed Webchannels. Self-contained Naftiko capability covering one TVmaze business surface.

Run with Naftiko TVmazePremium User APIFollowed Webchannels

What You Can Do

GET
Getuserfollowswebchannels — List the Followed Webchannels
/v1/user/follows/webchannels
DELETE
Deleteuserfollowswebchannelswebchannelid — Unfollow a Webchannel
/v1/user/follows/webchannels/{webchannel_id}
GET
Getuserfollowswebchannelswebchannelid — Check if a Webchannel is Followed
/v1/user/follows/webchannels/{webchannel_id}
PUT
Putuserfollowswebchannelswebchannelid — Follow a Webchannel
/v1/user/follows/webchannels/{webchannel_id}

MCP Tools

list-followed-webchannels

List the Followed Webchannels

read-only idempotent
unfollow-webchannel

Unfollow a Webchannel

idempotent
check-if-webchannel-is-followed

Check if a Webchannel is Followed

read-only idempotent
follow-webchannel

Follow a Webchannel

idempotent

Capability Spec

premium-followed-webchannels.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: "TVmaze Premium User API \u2014 Followed Webchannels"
  description: "TVmaze Premium User API \u2014 followed webchannels. 4 operations. Lead operation: List the Followed Webchannels.\
    \ Self-contained Naftiko capability covering one TVmaze business surface."
  tags:
  - TVmaze
  - Premium User API
  - Followed Webchannels
  created: '2026-05-30'
  modified: '2026-05-30'
binds:
- namespace: env
  keys:
    TVMAZE_USERNAME: TVMAZE_USERNAME
    TVMAZE_API_KEY: TVMAZE_API_KEY
capability:
  consumes:
  - type: http
    namespace: premium-followed-webchannels
    baseUri: https://api.tvmaze.com/v1
    description: "TVmaze Premium User API \u2014 Followed Webchannels business capability. Self-contained, no shared references."
    resources:
    - name: user-follows-webchannels
      path: /user/follows/webchannels
      operations:
      - name: getUserFollowsWebchannels
        method: GET
        description: List the Followed Webchannels
        inputParameters:
        - name: embed
          in: query
          type: string
          required: false
          description: Embed full webchannel info
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: user-follows-webchannels-webchannel-id
      path: /user/follows/webchannels/{webchannel_id}
      operations:
      - name: deleteUserFollowsWebchannelsWebchannelId
        method: DELETE
        description: Unfollow a Webchannel
        inputParameters:
        - name: webchannel_id
          in: path
          type: integer
          required: true
          description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: getUserFollowsWebchannelsWebchannelId
        method: GET
        description: Check if a Webchannel is Followed
        inputParameters:
        - name: webchannel_id
          in: path
          type: integer
          required: true
          description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: putUserFollowsWebchannelsWebchannelId
        method: PUT
        description: Follow a Webchannel
        inputParameters:
        - name: webchannel_id
          in: path
          type: integer
          required: true
          description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: basic
      username: '{{env.TVMAZE_USERNAME}}'
      password: '{{env.TVMAZE_API_KEY}}'
  exposes:
  - type: rest
    namespace: premium-followed-webchannels-rest
    port: 8080
    description: "REST adapter for TVmaze Premium User API \u2014 Followed Webchannels. One Spectral-compliant resource per\
      \ consumed operation, prefixed with /v1."
    resources:
    - path: /v1/user/follows/webchannels
      name: user-follows-webchannels
      description: REST surface for /user/follows/webchannels.
      operations:
      - method: GET
        name: getUserFollowsWebchannels
        description: List the Followed Webchannels
        call: premium-followed-webchannels.getUserFollowsWebchannels
        with:
          embed: rest.embed
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/user/follows/webchannels/{webchannel_id}
      name: user-follows-webchannels-webchannel-id
      description: REST surface for /user/follows/webchannels/{webchannel_id}.
      operations:
      - method: DELETE
        name: deleteUserFollowsWebchannelsWebchannelId
        description: Unfollow a Webchannel
        call: premium-followed-webchannels.deleteUserFollowsWebchannelsWebchannelId
        with:
          webchannel_id: rest.webchannel_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/user/follows/webchannels/{webchannel_id}
      name: user-follows-webchannels-webchannel-id
      description: REST surface for /user/follows/webchannels/{webchannel_id}.
      operations:
      - method: GET
        name: getUserFollowsWebchannelsWebchannelId
        description: Check if a Webchannel is Followed
        call: premium-followed-webchannels.getUserFollowsWebchannelsWebchannelId
        with:
          webchannel_id: rest.webchannel_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/user/follows/webchannels/{webchannel_id}
      name: user-follows-webchannels-webchannel-id
      description: REST surface for /user/follows/webchannels/{webchannel_id}.
      operations:
      - method: PUT
        name: putUserFollowsWebchannelsWebchannelId
        description: Follow a Webchannel
        call: premium-followed-webchannels.putUserFollowsWebchannelsWebchannelId
        with:
          webchannel_id: rest.webchannel_id
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: premium-followed-webchannels-mcp
    port: 9090
    transport: http
    description: "MCP adapter for TVmaze Premium User API \u2014 Followed Webchannels. One tool per consumed operation, routed\
      \ inline through this capability's consumes block."
    tools:
    - name: list-followed-webchannels
      description: List the Followed Webchannels
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: premium-followed-webchannels.getUserFollowsWebchannels
      with:
        embed: tools.embed
      outputParameters:
      - type: object
        mapping: $.
    - name: unfollow-webchannel
      description: Unfollow a Webchannel
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: premium-followed-webchannels.deleteUserFollowsWebchannelsWebchannelId
      with:
        webchannel_id: tools.webchannel_id
      outputParameters:
      - type: object
        mapping: $.
    - name: check-if-webchannel-is-followed
      description: Check if a Webchannel is Followed
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: premium-followed-webchannels.getUserFollowsWebchannelsWebchannelId
      with:
        webchannel_id: tools.webchannel_id
      outputParameters:
      - type: object
        mapping: $.
    - name: follow-webchannel
      description: Follow a Webchannel
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: premium-followed-webchannels.putUserFollowsWebchannelsWebchannelId
      with:
        webchannel_id: tools.webchannel_id
      outputParameters:
      - type: object
        mapping: $.