Dom Kozak: pDOOH and Built for MENA
Server Details
Search Dom Kozak's Built for MENA podcast and pDOOH 101/201 lessons, with quotes and source links.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 5 tools
Each tool targets a distinct content type and action: explain_pdooh for pDOOH lesson explanations, list_lessons for lesson listings, get_episode/list_episodes for episode retrieval/listing, and search_podcast for transcript search. The split between the pDOOH and podcast domains is clear and the descriptions reinforce the boundaries.
All tools follow a consistent verb_noun pattern (explain_*, get_*, list_*, search_*), with predictable prefixes for listing vs. retrieval vs. search. Domain nouns like 'episode', 'lessons', and 'podcast' are used consistently.
Five tools is a lean but well-scoped set for a two-content-domain server (pDOOH lessons and a podcast). It covers the key operations without bloat, though one could argue a separate tool for getting a single lesson might be warranted.
The surface covers listing and retrieving episodes, searching transcripts, and listing/explaining lessons. Minor gaps exist: there is no single-lesson getter or a way to filter episodes by guest, but agents can work around these using list/search tools.
Available Tools
5 toolsexplain_pdoohExplain a pDOOH concept from Dom Kozak's lessonsARead-onlyInspect
Plain-English explanations of programmatic digital out of home (pDOOH) from Dom Kozak's released
pDOOH 101 and 201 lessons. Returns up to limit (max 10) passages with series (101/201), episode,
lesson title, hook, airDate, the relevant lesson text and the lesson URL on domkozak.com.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| topic | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety profile (readOnlyHint, openWorldHint=false), and the description adds meaningful return-shape detail since no output schema exists: passage fields (series, episode, lesson title, hook, airDate, text, URL) and the 10-item cap. It does not discuss content dating or source coverage limits.
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 what and provenance before the return details. The field enumeration in sentence two is dense but each item is useful given the absent output schema.
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 low-complexity two-parameter tool with no output schema, the description adequately covers both purpose and return contents, and annotations cover safety. Only the required `topic` parameter and any source-coverage caveats are under-explained.
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 must compensate. It clarifies `limit` ('up to limit (max 10) passages'), adding a cap not present in the schema, but says nothing about the required `topic` parameter's expected form or granularity.
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?
States a specific verb+resource: 'plain-English explanations of pDOOH' drawn from named lesson series. This clearly separates it from episode/lesson listing siblings, though it doesn't explicitly name an alternative like search_podcast.
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 purpose implies when to use it (get a concept explained), but there is no explicit when/when-not statement nor any named alternative among get_episode, list_episodes, list_lessons, or search_podcast. Usage is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_episodeGet one Built for MENA episodeARead-onlyInspect
One Built for MENA episode by number (e.g. "10") or "special" for The Story So Far: title, guest, company, date, length, link, and up to 5 key passages (about 120 words each) in order. Never the full transcript: use search_podcast to find specific quotes.
| Name | Required | Description | Default |
|---|---|---|---|
| episode | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, and the description adds real behavioral substance: the output is bounded to metadata plus up to 5 passages of ~120 words in order, and it explicitly never returns a full transcript. This sets accurate expectations beyond the safety hints.
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, zero filler. The return payload is front-loaded, followed immediately by the negative scoping constraint and its alternative.
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 describe returns — and it does so precisely (field list, passage count and length, ordering). An agent has everything needed to call it correctly and interpret the response.
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%, so the description carries the burden and does so well: the single 'episode' parameter accepts a number as a string (e.g. "10") or the literal keyword "special". That is a meaningful semantic addition, though it does not specify behavior for invalid numbers or out-of-range episodes.
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?
States a specific verb+resource ('One Built for MENA episode') and enumerates the returned fields (title, guest, company, date, length, link, key passages). It is clearly distinguishable from list_episodes (plural enumeration) and search_podcast (quote 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 steers the agent away from using this for transcripts and names the alternative: 'Never the full transcript: use search_podcast to find specific quotes.' It does not explicitly address when to use list_episodes instead, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_episodesList Built for MENA episodesARead-onlyInspect
Every published Built for MENA episode (trailer excluded), newest first, with number, title, guest, company, release date, length, link and whether its transcript is searchable yet.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description still adds real behavioral context: the trailer is excluded, results are ordered newest-first, and each row reports whether a transcript is searchable yet. It does not mention pagination or any result-size cap.
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?
One dense sentence, front-loaded with the resource and scope before the field list. No filler, no restatement of the title.
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?
With no input parameters, no output schema, and read-only annotations, the description carries the remaining burden and does so: it defines the population, ordering, exclusions, and the exact contents of each returned episode.
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?
Zero parameters, so the baseline is 4 and there is nothing to disambiguate. The description goes further by enumerating the returned fields (number, title, guest, company, release date, length, link, transcript-searchable flag), which is useful even though it describes output rather than input.
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?
States a specific verb and resource ('List ... episodes') plus meaningful scope: every published episode, trailer excluded, newest first. This implicitly separates it from get_episode (single item) and search_podcast (query-driven), but it never names those siblings, so it falls short of the 5-level explicit differentiation.
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?
Usage is only implied: the catalog-style scope ('Every published ... episode, newest first') suggests browsing the full back catalogue rather than searching, but there is no explicit when-to-use, when-not-to-use, or named alternative such as search_podcast for filtered queries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_lessonsList Dom Kozak's pDOOH lessonsBRead-onlyInspect
Released pDOOH 101 and 201 lessons, in order, with series, episode, title, hook, airDate and URL.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so safety and scope are covered structurally. The description adds real context beyond that: results are ordered ('in order') and each entry carries series, episode, title, hook, airDate and URL. It does not mention pagination or whether the set is exhaustive.
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?
One short sentence with no filler, and the field list is front-loaded. It is slightly under-structured as a fragment with no leading verb, but nothing is wasted.
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?
With no output schema, the description usefully compensates by naming the returned fields, and the read-only annotation covers the safety profile. The gap is the absence of any differentiation from the sibling list_episodes, leaving the agent unable to tell the two similarly named listing tools apart.
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 tool takes zero parameters, so the schema has nothing to document and the baseline is 4. The description correctly implies a no-argument, full-enumeration call.
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 is a noun-phrase fragment ('Released pDOOH 101 and 201 lessons...') that enumerates contents rather than stating a verb+resource action like 'List lessons'. The title supplies the verb, but the description itself reads as a content spec rather than a purpose statement. It is still specific enough that an agent can guess this returns a curated lesson set, but the relation to the sibling list_episodes is not addressed.
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?
There is no when-to-use guidance at all, no condition distinguishing this from list_episodes or search_podcast. The phrase 'in order' hints at an ordered enumeration, but nothing tells the agent when this tool is preferable to a sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_podcastSearch the Built for MENA podcastARead-onlyInspect
Full-text search over Built for MENA episode transcripts. Returns up to limit (max 10)
passages of about 120 words, each with episode number, title, guest, timestamp (mm:ss in the
published audio), episode link and speaker. Speaker is named only when the voice match is certain;
otherwise it is "" and speaker_note says "speaker not confirmed: Dom Kozak (host) or ".
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true and openWorldHint=false; the description adds substantially more — result count cap (max 10), passage size (~120 words), the exact fields returned (episode number, title, guest, timestamp in mm:ss of published audio, link, speaker), and the crucial caveat that speaker is blank unless voice match is certain, with speaker_note explaining the ambiguity. This return-contract detail goes well beyond the annotations and is essential for interpreting results.
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?
Front-loads purpose in the first clause, then moves to return details. Two sentences with essentially no filler, though the quoted speaker_note format is slightly verbose for the value it adds.
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?
With no output schema, the description correctly takes on the burden of explaining the return shape, including the speaker-uncertainty semantics. Remaining gaps are minor for a low-complexity two-parameter search tool: no mention of ranking/ordering of results or pagination beyond the limit cap.
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%, so the description must carry parameter meaning. It does document the 'limit' parameter's upper bound (max 10), which the schema does not, but says nothing about query syntax, phrase handling, or whether operators are supported for the required 'query' 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?
States a specific verb and resource — 'full-text search over Built for MENA episode transcripts' — which is clearly distinguishable in kind from list_episodes/get_episode, since it targets transcript passages rather than episode metadata. However, it never names or contrasts with any sibling, so it stops short of the 5-level explicit differentiation.
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 gives no when-to-use or when-not-to-use guidance and does not mention any alternative (e.g., get_episode for a specific episode, list_episodes for browsing). The agent must infer that this is the tool for content lookup purely from the word 'search'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
- First observed
explain_pdooh - First observed
get_episode - First observed
list_episodes - First observed
list_lessons - First observed
search_podcast
Related MCP Connectors
DOOH advertising via AI agents. 5,000+ screens with edge AI audience intelligence.
Roboto videos, client interviews, articles and social posts with source citations.
Search and ask the podcasts you follow inside Claude, with the exact quote and timestamp.
- RephonicOAuthcom.rephonic
Research 3M+ podcasts with audience data, contacts, episodes, transcripts, charts, and sponsors.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to search 3,800+ vetted media outlets by budget, domain authority, geography, topic and link policy, then price a basket of placements with volume discounts applied and return a checkout link the buyer pays through. Nothing is charged and no account or API key is needed, since quoting is read-only and payment happens on the marketplace site.MIT
- AlicenseNot gradedqualityFmaintenanceEnables AI agents to search and retrieve real founder experiences from podcasts, including quotes, decisions, outcomes, lessons, and similar moments.1MIT
- AlicenseNot gradedqualityBmaintenanceProvides access to consensus claims from 162 tracked podcasts, enabling search and retrieval of recurring ideas, episodes, people, and podcast statistics with measurement metadata.24 npmMIT
- AlicenseNot gradedqualityDmaintenanceSearch PR agencies, browse publications, buy press release distribution & media placements. Zero-config, no API key needed.8 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.