PodLearn
Server Details
Search 4M+ podcasts & YouTube, transcribe any episode, search transcripts, generate AI lessons.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- blutrich/podlearn-plugin
- GitHub Stars
- 1
- Server Listing
- PodLearn MCP Server
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.3/5 across 25 of 25 tools scored. Lowest: 3.1/5.
Tools are largely distinct, covering separate actions (search, get, list, generate, transcribe, save). The main potential confusion is between list_episodes and list_feed_episodes, but descriptions clearly separate local from external.
All tools follow consistent verb_noun snake_case patterns (get_, list_, search_, generate_, transcribe_, save/remove), with no mixed conventions or unexpected styles.
25 tools is at the high end for a server of this scope. The broad domain justifies many functions, but the count feels heavy and some tools could be consolidated without losing clarity.
Discovery, ingestion, transcription, lesson generation, and user account management are all well covered. Minor gaps exist, such as no way to delete or update lessons beyond save/remove.
Available Tools
25 toolsbrowse_episodesBrowse episodesARead-onlyInspect
Open an interactive episode picker (card grid with thumbnails) for the user to pick an episode to read. On hosts that render MCP Apps the grid is clickable; everywhere else a markdown table is returned. Optional query filters by title/host.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No | Optional title/host filter |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the description adds value by explaining the interactive nature and conditional rendering (grid vs. markdown table). This provides behavioral context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the main action and key behavioral detail. No wasted words. Efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 optional params, no output schema, interactive UI), the description covers the essential behavioral aspects and filtering. It could be considered complete for its purpose, though a note on returned data structure would enhance completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description mentions 'query filters by title/host' which matches the query parameter, but adds no new information beyond the schema. The limit parameter is not described. With 50% schema coverage, the description fails to fully compensate, leaving the limit parameter undocumented in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it opens an interactive episode picker for selection. It mentions different rendering based on host capability. However, it does not explicitly differentiate from sibling tools like list_episodes or search_episodes, leaving some ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for interactive episode selection, but provides no explicit guidance on when to use this tool over alternatives (e.g., list_episodes for simple listing, search_episodes for filtering). No when-not or alternative tool references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_lessonAInspect
Generate a structured AI lesson (summary, key takeaways, sections) from a completed transcription. Requires the episode to have transcription_status "completed". Consumes 1 credit, or one unit of subscription quota, on first generation for an episode; subsequent calls return the cached lesson at no cost.
| Name | Required | Description | Default |
|---|---|---|---|
| episode_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=false and destructiveHint=false. The description adds value by disclosing credit consumption on first generation and caching behavior, which goes beyond annotations and informs the agent of side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loading the main action and following up with prerequisites and cost behavior. Every sentence is informative with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has low complexity (1 parameter, no output schema), yet the description covers purpose, prerequisites, cost, and caching behavior. It is fully adequate for an agent to correctly select and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has a single parameter 'episode_id' with UUID format, and schema description coverage is 0%. The description does not elaborate on the parameter beyond implying it's an episode ID. Given the simplicity, the baseline score of 3 is appropriate as the schema is sufficient but the description adds no extra semantic detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a structured AI lesson from a completed transcription, specifying the output components (summary, key takeaways, sections). It effectively distinguishes from sibling tools like 'get_lesson_content' which retrieves existing lessons.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit usage guidance: requires transcription_status 'completed' and explains credit consumption on first call with cached results on subsequent calls. This provides clear when-to-use and cost considerations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_linkedin_postAInspect
Turn an already-generated lesson into a LinkedIn-ready share post. Pass lesson_id directly OR episode_id (uses the most recent lesson generated by the caller for that episode). Lesson must exist — chain after generate_lesson if needed.
| Name | Required | Description | Default |
|---|---|---|---|
| lesson_id | No | ||
| episode_id | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are minimal (readOnlyHint=false, destructiveHint=false); description adds context about chaining and caller-scoped lookup for episode_id, but could specify whether it posts to LinkedIn directly or just generates text.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded purpose, but could be slightly more structured (e.g., separate lines or bullet points).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers main usage and prerequisites; missing return value description but no output schema exists; adequate for a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully explains both parameters (lesson_id and episode_id), their types (uuid implied), and behavioral differences, compensating completely for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it transforms an existing lesson into a LinkedIn post, specifies two ways to identify the lesson (lesson_id or episode_id), and distinguishes from generate_lesson by noting the prerequisite of an existing lesson.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use (after generate_lesson) and explains parameter alternatives, but does not provide explicit when-not-to-use or alternatives (e.g., if you need to create a lesson first, use generate_lesson).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_episode_detailsARead-onlyInspect
Fetch full metadata for one episode including transcription_status and lesson_generation_status. Tells you whether get_transcription is ready or you need to transcribe first: start_transcription(episode_id) for an in-library episode (inherits its existing show/artwork/feed linkage automatically) or transcribe_url(audio_url, title, feed_id, podcast_name) for a URL not yet in the library.
| Name | Required | Description | Default |
|---|---|---|---|
| episode_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds behavioral insight by explaining the decision branching (whether transcription exists) and how the tool relates to downstream actions, which goes beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the main purpose and immediately useful decision logic. Every clause earns its place, with no redundant wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must hint at return content; it mentions 'full metadata' and two specific statuses, which is sufficient for a low-complexity read-only tool. It also covers related workflow steps, making the overall context complete enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% for the single parameter episode_id, but the parameter is self-evident and the schema provides its UUID format. The description does not elaborate further, but given the trivial nature of the parameter, the minimal added explanation is acceptable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches full metadata for one episode and explicitly names two key fields (transcription_status and lesson_generation_status). It distinguishes from sibling tools by focusing on episode detail retrieval and readiness checks for transcription.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance on when to use this tool: to check if get_transcription is ready, and when not to, offering alternatives start_transcription and transcribe_url with parameter details. This directly addresses usage context and alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_episode_usageARead-onlyInspect
Get the caller's episode-access usage stats — how many episodes they've transcribed/read this billing period.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. Description adds context that the tool returns the caller's own stats and specifies 'transcribed/read' actions, which is useful behavioral detail beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with verb and resource, no wasted words. Every part contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple read tool with annotations, but lacks details on return format, pagination behavior, and what exactly the 'billing period' is. No output schema to compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has limit and offset parameters with defaults and constraints, but description does not mention them or explain their purpose. With 0% schema description coverage, the description should compensate but fails to add any parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool retrieves episode-access usage stats for the caller, specifically counts of transcribed/read episodes in the billing period. This distinguishes it from sibling tools like get_episode_details or list_episodes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage for checking own usage but does not explicitly state when to use versus alternatives like get_user_credits or get_subscription_status. No exclusions or guidance on prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_lesson_contentARead-onlyInspect
Fetch the full body of one AI-generated lesson (title, summary, key takeaways, structured sections). Use to retrieve prior synthesis — for creating a NEW one call generate_lesson.
| Name | Required | Description | Default |
|---|---|---|---|
| lesson_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly and non-destructive. Description adds detail on content (title, summary, etc.) and confirms AI-generated origin. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two efficient sentences with zero redundancy. Purpose and usage guideline front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Low complexity tool with one param and no output schema. Description covers return contents adequately. Could mention output format, but not essential.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single parameter lesson_id with schema (uuid) but no description coverage. Tool description adds no additional meaning or source guidance. Minimal value beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb+resource ('Fetch the full body') with specific content list. Explicitly distinguishes from sibling generate_lesson.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
States when to use (retrieve prior synthesis) and when not (creating new, call generate_lesson). Provides clear alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_podcast_detailsARead-onlyInspect
Fetch full metadata for one podcast in the PodLearn library, including its episode count. The podcast must already be in the local DB (source=local in search_podcasts results).
| Name | Required | Description | Default |
|---|---|---|---|
| podcast_id | Yes | Local podcast id |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. Description adds that it returns episode count and depends on local DB, which is useful beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. Action verb first, then additional constraint. Excellent front-loading.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, description covers purpose, prerequisite, and expected return envelope. Could be more specific about 'full metadata' but sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% coverage with description 'Local podcast id', but tool description adds context that the id must correspond to a local DB entry, reinforcing the prerequisite.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it fetches full metadata for one podcast, including episode count, and distinguishes from search_podcasts by specifying the prerequisite of local DB. The verb 'Fetch' and resource 'full metadata' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit prerequisite: podcast must be in local DB from search_podcasts. This guides when to use. No explicit when-not-to-use, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_saved_itemsARead-onlyInspect
List the caller's saved/bookmarked episodes and lessons.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true and destructiveHint=false. The description adds that the tool lists only the caller's personal saved items, providing scope context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with purpose, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple parameterless tool, the description explains the return value and scope, providing sufficient context for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are 0 parameters, so schema coverage is 100%. The description adds value by clarifying that the tool returns a list of episodes and lessons, compensating for the lack of output schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and identifies the resource ('caller's saved/bookmarked episodes and lessons'), distinguishing it from siblings like list_episodes and save_item.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs. alternatives (e.g., save_item, remove_saved_item), though the context implies it is for viewing saved items.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_subscription_statusARead-onlyInspect
Get the caller's subscription plan + active/expired status + period end.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. Description adds value by specifying the exact outputs (plan, status, period end). No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with clear verb-resource structure, front-loaded with essential information. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Even without an output schema, the description lists all returned fields. For a simple, zero-param read tool, it provides complete context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist. Baseline score of 4 for zero-param tools. Description correctly omits param details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states verb 'Get' and resource 'subscription status' with specific outputs (plan, status, period end). No sibling tool overlaps, so it clearly distinguishes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance. Usage is implied by the tool's purpose, but no alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_transcriptionARead-onlyInspect
Fetch transcript text for a completed episode. PAGINATED — returns up to 120,000 characters per call (Claude.ai/Desktop caps a tool result at ~150k chars). Most transcripts fit in one call; only very long episodes page. If the response has has_more: true, call again with offset: <next_offset>. For focused look-up (a topic, quote, timestamp) prefer search_transcription.
| Name | Required | Description | Default |
|---|---|---|---|
| offset | No | Character offset to start from (default 0). Use next_offset from a prior page. | |
| max_chars | No | Max characters to return this call (default & max 120000). | |
| episode_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and non-destructive behavior. The description adds transparency about pagination (max 120,000 chars, has_more pattern) and notes Claude's character cap. It does not mention error cases for incomplete episodes or response format, but the provided context is solid.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-structured, with the purpose front-loaded, followed by pagination details and an alternative tool suggestion. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a paginated tool, the description covers all critical aspects: what it fetches, pagination mechanics, character limits, and when to use alternatives. It lacks details on error handling or response structure, but given no output schema, this is sufficient for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema describes offset and max_chars with details, but episode_id lacks a description. The description adds contextual meaning to parameters through usage examples (e.g., using offset from prior page), but does not explicitly define each parameter. With 67% schema coverage, the description moderately supplements but does not fully compensate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches transcript text for a completed episode, using a specific verb and resource. It distinguishes itself from the sibling tool search_transcription, making its purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool (full transcript retrieval) and when to prefer the alternative search_transcription (focused look-up). It also explains pagination handling with clear instructions on using offset for subsequent calls.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_transcription_segmentsARead-onlyInspect
Fetch timestamped transcript segments. Use when the user wants timestamps — "jump to where they discuss X", chapter boundaries, durations of specific parts.
| Name | Required | Description | Default |
|---|---|---|---|
| episode_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. Description adds context about returning timestamped segments, but does not disclose ordering, pagination, or handling of non-existent episode_id.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with verb and resource, no redundant information. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple fetch tool with 1 parameter and no output schema, the description adequately covers the use case and return type. Could mention potential limitations (e.g., availability of segments for all episodes).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 1 parameter (episode_id) with 0% description coverage. The description does not explicitly explain the meaning of episode_id beyond the tool context, leaving the agent to infer from the parameter name and tool purpose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Fetch timestamped transcript segments' with specific use cases: timestamps, chapter boundaries, durations. It distinguishes from siblings like get_transcription (full text) and search_transcription (search).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use (when user wants timestamps, chapter boundaries, durations), but lacks explicit when-not to use or alternatives beyond what is implied by sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_user_creditsARead-onlyInspect
Get the caller's remaining transcription credits.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds 'remaining transcription credits' but does not disclose any additional behavioral traits beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no wasted words, front-loaded with action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters, no output schema, and low complexity, the description sufficiently covers what the tool does. No additional context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so baseline is 4. The description adds value by specifying that the credits are 'remaining' and 'transcription', clarifying the type of credits.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Get', resource 'remaining transcription credits', and specifies 'caller's', distinguishing it from all sibling tools which deal with episodes, lessons, or other resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit usage guidelines or alternatives are given, but since no other credit-related tool exists, the usage context is implied. A brief note on when to use it could improve clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_episodesARead-onlyInspect
List episodes already in the local DB for a specific podcast. Requires podcast_id (use search_podcasts first if you only have a name). For cross-podcast search use search_episodes; for canonical PodcastIndex listings use list_feed_episodes.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No | ||
| status | No | ||
| podcast_id | Yes | Local podcast_id from search_podcasts |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. Description adds that episodes are 'already in the local DB', reinforcing read-only nature. No contradictions. Sufficient transparency for a simple list operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with main purpose, then usage notes and alternatives. Every sentence adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, so description should explain return format or behavior. It mentions local DB but doesn't specify pagination, ordering, or response structure. Adequate but incomplete for a tool with 4 parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 25% (podcast_id described). The description adds context for podcast_id (requires it from search_podcasts), but does not explain limit, offset, or status parameters beyond schema defaults. Fails to compensate for low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it lists episodes already in the local DB for a specific podcast. Distinguishes from related tools by mentioning cross-podcast search (search_episodes) and canonical listings (list_feed_episodes).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: with podcast_id. Provides prerequisite (use search_podcasts first). Also states when not to use: for cross-podcast search or canonical listings, listing alternatives by name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_feed_episodesARead-onlyInspect
Fetch the canonical episode list for a podcast directly from PodcastIndex (the upstream RSS index). NO COST — pure discovery. Each episode is enriched with in_library, episode_id (if already ingested), and transcription_status. For episodes you want to ingest: call transcribe_url(audio_url, title, feed_id, podcast_name) — passing feed_id/podcast_name lands the episode under its real show. For episodes already in_library, use start_transcription(episode_id) instead.
| Name | Required | Description | Default |
|---|---|---|---|
| max | No | ||
| since | No | Unix seconds — published AFTER | |
| before | No | Unix seconds — published BEFORE (pagination) | |
| feed_id | Yes | PodcastIndex feed_id (the `id` from a search_podcasts result) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, but the description adds valuable context: 'NO COST — pure discovery' clarifies it won't consume billing resources, and listing the enrichment fields (in_library, episode_id, transcription_status) sets expectations for what differs from the raw upstream data. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Each sentence earns its place: purpose, cost/discovery, enrichment details, and actionable transition to next steps. It is front-loaded with the primary action and remains tightly structured despite covering multiple aspects.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description appropriately mentions the key returned fields and even explains downstream ingestion paths. Combined with good annotations and schema, this gives an agent everything it needs to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75%, so the baseline is 3. The description does not add new meanings for max, since, before, or feed_id, but it implicitly references feed_id when suggesting transcribe_url. The schema already documents these parameters well enough; the description's main value lies in usage flow, not param semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource: 'Fetch the canonical episode list for a podcast directly from PodcastIndex'. It clearly distinguishes the tool from siblings like list_episodes (likely library-based) and browse_episodes by emphasizing upstream source and 'pure discovery'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells when to use the tool ('episodes you want to ingest') and provides concrete alternatives: call transcribe_url for new episodes or start_transcription for episodes already in_library. This is ideal usage guidance with named alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_lessonsBRead-onlyInspect
List the calling user's saved AI-generated lessons.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true; description adds no extra behavioral context such as pagination details, rate limits, or authorization requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, precise sentence with no redundant information, effectively front-loaded with the key action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Missing details about return format, sorting, filtering, or pagination behavior; without an output schema, the agent lacks sufficient context to use the tool reliably.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%; description does not compensate by explaining 'limit' and 'offset' parameters, though their names imply pagination.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action ('list') and resource ('saved AI-generated lessons'), distinguishing it from siblings like 'get_lesson_content' and 'generate_lesson'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'get_lesson_content' or 'search_episodes'. The description implies usage but provides no contextual instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_podcastsARead-onlyInspect
List podcasts already in the PodLearn library, optionally filtered by category. Returns most-recently-added first. For discovery beyond the library use search_podcasts.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No | ||
| category | No | Filter by category (e.g. "Technology") |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false, so the description's behavioral disclosure is not critical. However, it adds the ordering behavior (most-recently-added first), which is helpful. No contradictory information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences. The first conveys purpose, filter, and ordering. The second provides sibling guidance. Every word serves a purpose; no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list-with-filter tool, the description covers the essential aspects: what it lists, optional filter, ordering, and sibling alternative. The schema already defines pagination parameters; extra description is unnecessary. The lack of an output schema is acceptable for a list endpoint.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only 33% of parameters have schema descriptions (only 'category' has a description). The description mentions 'optionally filtered by category', which adds context to that parameter, but provides no additional meaning for 'limit' or 'offset' beyond their schema definitions (type, default, bounds). With low schema coverage, the description should compensate more.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List', the resource 'podcasts already in the PodLearn library', and key scope details: optional category filter and ordering by most-recently-added. It implicitly distinguishes from the sibling 'search_podcasts' which targets discovery beyond the library.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly provides an alternative: 'For discovery beyond the library use search_podcasts.' This tells the agent when not to use this tool and directs to the correct sibling, leaving no ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
remove_saved_itemADestructiveInspect
Permanently remove a saved/bookmarked episode or lesson from the caller's collection. The saved_item_id comes from get_saved_items.
| Name | Required | Description | Default |
|---|---|---|---|
| saved_item_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint: true, so the description's 'Permanently remove' reinforces that. It adds context that the action is limited to the caller's collection. No additional behavioral traits beyond annotations are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two short sentences that efficiently convey the tool's purpose and key context. Every word is meaningful, and there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter, explicit destructive hint, and no output schema, the description covers all essential aspects: what it does, that it's permanent, and where to get the required ID. No additional information is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% parameter description coverage. The description provides no details about the saved_item_id parameter beyond its source (get_saved_items). It does not explain its format, constraints, or how to obtain it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (permanently remove) and the resource (saved/bookmarked episode or lesson). It distinguishes from siblings like save_item by specifying removal and from get_saved_items by indicating the source of the ID.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context on when to use the tool (to remove a saved item) and specifies that the saved_item_id comes from get_saved_items. It implicitly advises against using it for other purposes, but does not explicitly state alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_itemAInspect
Bookmark an episode or lesson for the caller.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | Yes | UUID of the episode or lesson to save | |
| item_type | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate this is not read-only and not destructive. The description adds that it's for the caller, but does not disclose other behaviors such as handling duplicate saves or permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of six words, containing zero wasted information. It is efficiently front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple save action, the description is adequate but lacks details on behavior when saving an already-saved item, response format, or error conditions. Given the presence of both 'save_item' and 'remove_saved_item' siblings, more context would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50% (item_id has description, item_type lacks one). The description does not provide any additional meaning beyond the schema, failing to compensate for the missing item_type description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (bookmark), the resources (episode or lesson), and the target (caller). It distinguishes from siblings like 'remove_saved_item' and 'get_saved_items'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when bookmarking is needed, but provides no explicit guidance on when to use this tool versus alternatives like 'get_saved_items' to view bookmarks or 'search_episodes' to find content.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_episodesARead-onlyInspect
Cross-podcast episode search by title/description AND parent podcast name/author. Returns local episodes only — for podcasts discoverable on PodcastIndex that aren't yet ingested, use list_feed_episodes instead. status: "transcribed" filters to ready-to-read; status: "untranscribed" to available-to-transcribe.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | Topic, keyword, or host name | |
| offset | No | ||
| status | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the description adds the critical context that results are limited to local episodes only. No contradictions; the description consistently implies a safe read operation. Some additional context like rate limits or pagination behavior is missing but not essential.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each earning its place: first states purpose, second gives exclusion criteria, third clarifies status parameter. No redundant or vague language. Front-loaded with the most important information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema and the tool's moderate complexity (4 parameters, 1 required), the description provides enough context for an AI agent to understand the tool's role and when to use it. It could be improved by mentioning expected return format or pagination, but it is still sufficiently complete for selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 25% (only query has a short description). The description adds meaning to the status parameter by explaining its filtering behavior. However, it does not provide additional semantics for query, limit, or offset beyond what the schema already provides (defaults, bounds). Since coverage is low, the description partially compensates but not fully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs cross-podcast episode search by title/description and parent podcast name/author. It distinguishes itself from sibling tool list_feed_episodes by specifying it returns only local episodes, making the purpose specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells when to use this tool (searching local episodes) and when not (for podcasts not yet ingested, use list_feed_episodes). It also explains the status parameter filtering for transcribed vs untranscribed, providing clear usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_podcastsARead-onlyInspect
Search PodLearn library AND PodcastIndex.org (4M+ podcasts) by keyword. Also resolves Spotify/Apple Podcasts URLs. Returns rows tagged with source: local|podcastindex|spotify. First move when the user names a podcast/host but you don't have its id.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search keywords or a podcast URL |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. Description adds behavioral details: searches multiple sources, resolves URLs, and returns tagged rows. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no fluff, and the most critical information (what it does and when to use) is front-loaded. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple search tool with one parameter and no output schema, the description covers purpose, scope, behavior, and usage guidance comprehensively. No gaps given the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter described as 'Search keywords or a podcast URL.' Description adds that it resolves Spotify/Apple Podcasts URLs and returns rows with source tags, augmenting the parameter's meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it searches both PodLearn library and PodcastIndex by keyword, and resolves Spotify/Apple Podcasts URLs. It distinguishes from siblings like search_episodes and search_youtube by focusing on podcasts and being designated as the first move for identifying podcasts/hosts without IDs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'First move when the user names a podcast/host but you don't have its id,' providing clear when-to-use guidance. Does not explicitly exclude other cases, but the context implies it's the starting point for podcast identification.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_transcriptionARead-onlyInspect
Keyword search WITHIN a single episode's transcript. Returns matching chunks with surrounding context. Use instead of get_transcription when the user asked about a specific topic — server does this faster + cheaper on context.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Topic, phrase, or speaker name | |
| episode_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds that it returns matching chunks with surrounding context, which is beyond annotations (readOnlyHint=true). It implies no destructive effects and aligns with read-only nature. However, does not mention search limits or pagination.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero redundancy. First sentence states purpose and output, second gives usage guidance. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple search tool with 2 parameters and no output schema, the description adequately explains what it does, what it returns, and when to use it. No missing crucial information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50% (query has description 'Topic, phrase, or speaker name'). Description clarifies that episode_id identifies a single episode and query performs keyword search, adding meaning to both parameters without repeating schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'keyword search' within resource 'single episode's transcript' and describes output 'matching chunks with surrounding context'. Distinguishes from siblings by specifying single-episode scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use instead of get_transcription when the user asked about a specific topic' and provides rationale: 'server does this faster + cheaper on context'. Clearly guides when to choose this tool over alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_youtubeARead-onlyInspect
Discover YouTube videos by topic/keyword across all of YouTube. Use when the user wants to learn from a talk/interview/lecture and has no URL — especially when search_podcasts / search_episodes find nothing (much long-form content is YouTube-first). NO COST: pure discovery. Returns rows with a ready-to-transcribe url; to ingest one, confirm cost and call transcribe_url(url, title).
| Name | Required | Description | Default |
|---|---|---|---|
| max | No | ||
| query | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true and destructiveHint=false. The description adds value by disclosing that 'Returns rows with a ready-to-transcribe url' and instructs to 'confirm cost and call transcribe_url(url, title)' for ingestion. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences front-load purpose and usage, provide output details, and next steps. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers the core use case, output schema, and next action. Missing parameter details for 'max' but overall adequate for a simple search tool with no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain the 'max' parameter or add details beyond the schema. It only implies 'query' via 'by topic/keyword,' but fails to clarify the optional integer parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Discover YouTube videos by topic/keyword across all of YouTube,' specifying the action and resource. It distinguishes from siblings like search_podcasts and search_episodes by mentioning YouTube-first content.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells when to use: 'when the user wants to learn from a talk/interview/lecture and has no URL — especially when search_podcasts / search_episodes find nothing.' Also notes 'NO COST: pure discovery.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_transcriptionAInspect
Kick off transcription on an episode ALREADY in the library. Use only when the episode row exists and transcription_status is not "completed". Inherits the episode's existing show, artwork, and feed linkage automatically — no need to pass podcast context. For audio not yet in the library, use transcribe_url. COSTS 1 CREDIT (or subscription quota).
| Name | Required | Description | Default |
|---|---|---|---|
| episode_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint=false, destructiveHint=false), the description discloses a key behavioral trait: 'COSTS 1 CREDIT (or subscription quota).' It also explains automatic inheritance of show, artwork, and feed linkage, which is useful context. It does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, front-loaded with the core purpose. Each sentence adds value, though the inheritance explanation could be slightly more compact. Overall it is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has only one parameter and no output schema, the description covers all necessary invoking context: prerequisites, exclusions, alternatives, cost, and automatic linkage. It is complete for an agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although schema description coverage is 0%, the description compensates by clarifying that the episode_id must refer to an episode already in the library, and that no podcast context is needed. The schema already provides the format (uuid), so the meaning and constraints are sufficiently clear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action: 'Kick off transcription on an episode ALREADY in the library.' It highlights that the episode must already exist and distinguishes this tool from transcribe_url and transcribe_feed, which are for audio not yet in the library.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit usage conditions are provided: 'Use only when the episode row exists and transcription_status is not "completed".' It also names the alternative for audio not in the library: 'For audio not yet in the library, use transcribe_url.' This gives clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transcribe_feedAInspect
Bulk/season transcription — kick off transcription for up to max (cap 25) not-yet-transcribed episodes of a podcast feed in ONE call. Pass the feed_id from search_podcasts / list_feed_episodes. Already-transcribed episodes are skipped free. COSTS 1 credit per newly enqueued episode (or subscription quota) — CONFIRM the cost with the user first. Enqueue-and-poll: returns each enqueued episode_id; poll get_episode_details until transcription_status is "completed".
| Name | Required | Description | Default |
|---|---|---|---|
| max | No | Max episodes to enqueue (default 10, cap 25) | |
| since | No | Optional unix-seconds; only episodes published AFTER | |
| before | No | Optional unix-seconds; only episodes published BEFORE (page back) | |
| feed_id | Yes | PodcastIndex feed id (from a search_podcasts / list_feed_episodes result) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses mutation (enqueue), cost (1 credit per episode), skip of already-transcribed episodes, return type (episode_ids), polling requirement. Annotations (readOnlyHint=false, destructiveHint=false) are consistent and description adds significant behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two well-structured sentences, front-loaded with purpose, no redundant information. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, description covers what is returned (episode_ids) and how to use them (poll). Includes prerequisites, cost, and behavior. Complete for a tool with 4 parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% with descriptions. Description adds practical context: default max (10), cap (25), purpose of since/before (publish date filtering), and source of feed_id. More than baseline 3 due to added usage nuance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it bulk-transcribes podcast episodes, specifies source (feed), and distinguishes from related tools like start_transcription (single episode) and transcribe_url (URL-based). Verb+resource+scope are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides when to use (bulk feed transcription), prerequisites (feed_id from search/list tools), cost advice (confirm with user), and post-invocation steps (poll get_episode_details). Explicitly distinguishes from alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transcribe_urlAInspect
Ingest and transcribe an EXTERNAL / arbitrary audio URL — a URL the user pasted, or audio not reachable through the index. Creates a STANDALONE episode row. If the episode is already in the library (it has an episode_id), prefer start_transcription(episode_id) instead — it inherits the episode's existing show, artwork, and feed linkage automatically. Consumes 1 transcription credit, or one unit of subscription quota; the credit is refunded automatically if transcription fails. Pass feed_id / podcast_name when you already know the parent show (e.g. from search_podcasts or list_feed_episodes) so the episode lands under its real show instead of appearing as unidentified "External audio". Returns the new episode_id. Transcription is asynchronous on the fallback path — poll get_episode_details until transcription_status is "completed".
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Episode title — shown in the user's library | |
| feed_id | No | Optional: local podcasts.id / PodcastIndex feed id of the parent show, if known. Looked up only — never creates a show. | |
| language | No | BCP-47 hint (e.g. "en", "he"). Auto-detect if omitted. | |
| audio_url | Yes | Direct audio URL (mp3, m4a, or platform URL) | |
| podcast_id | No | Existing parent podcast_id, if any | |
| podcast_name | No | Optional: exact parent show title, if known and feed_id is unavailable. Matched only when it resolves to EXACTLY ONE existing show. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite minimal annotations (readOnlyHint=false, destructiveHint=false), the description discloses key side effects: it creates a standalone episode row, consumes one credit/unit with an automatic refund on failure, returns episode_id, and notes asynchronous behavior with a polling instruction. This goes well beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but every sentence earns its place: purpose, alternatives, cost/refund, association tips, return value, and async polling. It is front-loaded with the core purpose and structured logically, with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 6 parameters, no output schema, and complex behavior (credit cost, async fallback, association with shows), the description covers all critical aspects: return type, polling method, and side effects. It is sufficient for an agent to select and invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds meaning by explaining why feed_id/podcast_name matter (to avoid 'External audio' and land under a real show) and references search tools for lookup. This enhances understanding beyond the schema's field-level descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool ingests and transcribes an external/arbitrary audio URL, using specific verbs and distinguishing from start_transcription (which handles existing episodes). It explicitly contrasts with the alternative for indexing-ready content, making its purpose unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides explicit guidance: use this for external URLs not in the index, but prefer start_transcription when an episode_id exists. It also advises passing feed_id/podcast_name from search tools to associate with a known show, giving concrete when-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- Flicense-qualityDmaintenanceEnables transcription of audio files using Google Gemini AI and creates a searchable knowledge base, allowing users to ask natural language questions about content in meetings, podcasts, lectures, and other audio recordings.
- Alicense-qualityCmaintenanceHosted Claude connector that turns the podcasts you already follow into a searchable, askable knowledge source. Ask what a guest said and get the answer back with the exact quote and timestamp.MIT
- Flicense-qualityDmaintenanceBuilds a searchable knowledge base from YouTube video transcripts with hybrid semantic and keyword search. Allows LLM assistants to search, organize, and retrieve timestamped information from videos you've watched.3
- Flicense-qualityCmaintenanceGenerate Knowledge Packs — summary, flashcards, quiz, transcript — from any YouTube video. Plus OAuth-gated library search, Q\&A, and Anki export.
Your Connectors
Sign in to create a connector for this server.