PodcastIndex · Capability

PodcastIndex.org API — Value

PodcastIndex.org API — Value. 5 operations. Lead operation: Batch By Episode GUID. Self-contained Naftiko capability covering one Podcastindex business surface.

Run with Naftiko PodcastindexValue

What You Can Do

POST
Valuebatchbyepisodeguid — Batch By Episode GUID
/v1/value/batch/byepisodeguid
GET
Valuebyepisodeguid — By Episode GUID
/v1/value/byepisodeguid
GET
Valuebyfeedid — By Feed ID
/v1/value/byfeedid
GET
Valuebyfeedurl — By Feed URL
/v1/value/byfeedurl
GET
Valuebypodcastguid — By Feed GUID
/v1/value/bypodcastguid

MCP Tools

batch-episode-guid

Batch By Episode GUID

episode-guid

By Episode GUID

read-only idempotent
feed-id

By Feed ID

read-only idempotent
feed-url

By Feed URL

read-only idempotent
feed-guid

By Feed GUID

read-only idempotent

Capability Spec

podcastindex-value.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: PodcastIndex.org API — Value
  description: 'PodcastIndex.org API — Value. 5 operations. Lead operation: Batch By Episode GUID. Self-contained Naftiko
    capability covering one Podcastindex business surface.'
  tags:
  - Podcastindex
  - Value
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    PODCASTINDEX_API_KEY: PODCASTINDEX_API_KEY
capability:
  consumes:
  - type: http
    namespace: podcastindex-value
    baseUri: https://api.podcastindex.org/api/1.0
    description: PodcastIndex.org API — Value business capability. Self-contained, no shared references.
    resources:
    - name: value-batch-byepisodeguid
      path: /value/batch/byepisodeguid
      operations:
      - name: valuebatchbyepisodeguid
        method: POST
        description: Batch By Episode GUID
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: value-byepisodeguid
      path: /value/byepisodeguid
      operations:
      - name: valuebyepisodeguid
        method: GET
        description: By Episode GUID
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: value-byfeedid
      path: /value/byfeedid
      operations:
      - name: valuebyfeedid
        method: GET
        description: By Feed ID
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: value-byfeedurl
      path: /value/byfeedurl
      operations:
      - name: valuebyfeedurl
        method: GET
        description: By Feed URL
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: value-bypodcastguid
      path: /value/bypodcastguid
      operations:
      - name: valuebypodcastguid
        method: GET
        description: By Feed GUID
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: apikey
      key: User-Agent
      value: '{{env.PODCASTINDEX_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: podcastindex-value-rest
    port: 8080
    description: REST adapter for PodcastIndex.org API — Value. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/value/batch/byepisodeguid
      name: value-batch-byepisodeguid
      description: REST surface for value-batch-byepisodeguid.
      operations:
      - method: POST
        name: valuebatchbyepisodeguid
        description: Batch By Episode GUID
        call: podcastindex-value.valuebatchbyepisodeguid
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/value/byepisodeguid
      name: value-byepisodeguid
      description: REST surface for value-byepisodeguid.
      operations:
      - method: GET
        name: valuebyepisodeguid
        description: By Episode GUID
        call: podcastindex-value.valuebyepisodeguid
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/value/byfeedid
      name: value-byfeedid
      description: REST surface for value-byfeedid.
      operations:
      - method: GET
        name: valuebyfeedid
        description: By Feed ID
        call: podcastindex-value.valuebyfeedid
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/value/byfeedurl
      name: value-byfeedurl
      description: REST surface for value-byfeedurl.
      operations:
      - method: GET
        name: valuebyfeedurl
        description: By Feed URL
        call: podcastindex-value.valuebyfeedurl
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/value/bypodcastguid
      name: value-bypodcastguid
      description: REST surface for value-bypodcastguid.
      operations:
      - method: GET
        name: valuebypodcastguid
        description: By Feed GUID
        call: podcastindex-value.valuebypodcastguid
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: podcastindex-value-mcp
    port: 9090
    transport: http
    description: MCP adapter for PodcastIndex.org API — Value. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: batch-episode-guid
      description: Batch By Episode GUID
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: podcastindex-value.valuebatchbyepisodeguid
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: episode-guid
      description: By Episode GUID
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: podcastindex-value.valuebyepisodeguid
      outputParameters:
      - type: object
        mapping: $.
    - name: feed-id
      description: By Feed ID
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: podcastindex-value.valuebyfeedid
      outputParameters:
      - type: object
        mapping: $.
    - name: feed-url
      description: By Feed URL
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: podcastindex-value.valuebyfeedurl
      outputParameters:
      - type: object
        mapping: $.
    - name: feed-guid
      description: By Feed GUID
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: podcastindex-value.valuebypodcastguid
      outputParameters:
      - type: object
        mapping: $.