Skip to main content
Glama

List new episodes on followed shows

list_new_episodes
Read-onlyIdempotent

What is new on the shows this key follows: for each show, the episodes released in the last 90 days that are newer than the newest one already fetched from it (up to 10 per show), each with a transcript_url. Episodes with no transcript are left out. Fetch any with get_transcript (1 credit each on first fetch); a fetch raises that show's floor, so the next call lists only what came after. Refreshed hourly, so a show followed moments ago may be empty until its first poll. Does not consume credits.

Input Schema

NameRequiredDescriptionDefault

No arguments

Output Schema

NameRequiredDescriptionDefault
as_ofYesWhen the list was read, ISO 8601.
countYesNew episodes across all followed shows.
showsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / $schema
      Added value: +"https://json-schema.org/draft/2020-12/schema"
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "https://json-schema.org/draft/2020-12/schema",
      +  "additionalProperties": false,
      +  "properties": {
      +    "as_of": {
      +      "description": "When the list was read, ISO 8601.",
      +      "type": "string"
      +    },
      +    "count": {
      +      "description": "New episodes across all followed shows.",
      +      "type": "number"
      +    },
      +    "shows": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "episodes": {
      +            "items": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "date": {
      +                  "description": "Release date, ISO 8601.",
      +                  "type": "string"
      +                },
      +                "id": {
      +                  "description": "Episode id; pass it to get_transcript.",
      +                  "type": "string"
      +                },
      +                "title": {
      +                  "type": "string"
      +                },
      +                "transcript_url": {
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "id",
      +                "title",
      +                "date",
      +                "transcript_url"
      +              ],
      +              "type": "object"
      +            },
      +            "type": "array"
      +          },
      +          "podcast": {
      +            "description": "Show name.",
      +            "type": "string"
      +          },
      +          "podcast_id": {
      +            "description": "Show id; pass it to list_episodes or follow_podcast.",
      +            "type": "string"
      +          },
      +          "source": {
      +            "description": "'fetch': followed automatically from fetches. 'explicit': declared with follow_podcast.",
      +            "enum": [
      +              "fetch",
      +              "explicit"
      +            ],
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "podcast_id",
      +          "podcast",
      +          "source",
      +          "episodes"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "as_of",
      +    "count",
      +    "shows"
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations confirm it is a safe read, but the description adds non-obvious behavior beyond them: the 90-day window, the 10-per-show cap, the floor-raising side effect of get_transcript, hourly refresh latency, and zero credit cost. These are exactly the traits an agent needs and cannot get from annotations or schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core answer ('What is new...') and each sentence carries distinct operational detail. It is slightly dense and could be split for readability, but no sentence is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists, the description wisely omits return-shape details and instead covers the entire operational contract: filtering rules, caps, costs, cursoring side effects, and freshness latency. Nothing an agent needs in order to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are zero parameters, so the baseline is 4. The description is silent on parameters, which is correct since there are none, but it also doesn't add semantic meaning (no parameters exist to clarify).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific resource (new episodes on followed shows) and goes far beyond the name by specifying the exact scope: last 90 days, newer than the newest already fetched, up to 10 per show, transcript_url required. An agent can distinguish this from list_episodes and list_following immediately.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly names the follow-up tool (get_transcript) and its cost, and describes the cursoring behavior that dictates when to call again. It also sets a precondition (hourly refresh) that explains when calling would be futile.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.