find_podcast_contacts
Pack: pod-researcher · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/find_podcast_contacts for the schema, then POST the same URL with its arguments for the data.
Find ACTIVE podcasts whose recent episodes cover a topic, each with the best published contact route for booking a guest or buying sponsorship. Searches episode titles and show notes across ~740k podcasts that published in the last year (from the Podcast Index open directory plus each show’s own RSS feed and website). Every result carries the episodes that prove the fit, the show’s activity status, and either best_route (with holder_type person / role / hosting_account_owner, its source_url and last_observed date) or route_status “none_found” with what was checked. Routes designated for your purpose rank first; a general contact or a person’s published address is a labelled fallback. For a signed-in account, shows and people you recorded as contacted, declined, booked or do_not_contact are left out. Use get_podcast_profile for one show in full.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
topic | string | yes | What the show should be about, in plain words, e.g. “AI agents developer infrastructure” or “marathon training”. |
require_route | boolean | no | true = only shows that have a contact route for this purpose (designated, or a general/person fallback). Default false: shows with no route found are returned too, ranked by fit, with route_status “none_found”. |
language | string | no | Feed language code, e.g. “en” (matches en, en-us, en-gb). |
country | string | no | Two-letter country code of the show, when known, e.g. “us”. |
active_only | boolean | no | Default true: only shows classified active (publishing on their usual cadence). false also returns overdue, hiatus and dormant shows, labelled. |
include_engaged | boolean | no | Signed-in accounts: default false leaves out shows you already recorded as contacted, replied or booked. true returns them, marked with your last outcome. Declined and do_not_contact are always left out. |
limit | integer | no | Shows per page, 1-50 (default 20). |
cursor | string | no | cursor_next from a previous call, for the next page. |
Example call
Arguments
{
"topic": "AI agents developer infrastructure",
"purpose": "guest",
"limit": 5
}
curl
curl -X POST https://gateway.pipeworx.io/pod-researcher/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"find_podcast_contacts","arguments":{"topic":"AI agents developer infrastructure","purpose":"guest","limit":5}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('find_podcast_contacts', {
"topic": "AI agents developer infrastructure",
"purpose": "guest",
"limit": 5
});
More examples
{
"topic": "golf",
"purpose": "sponsor",
"require_route": true,
"limit": 5
}
Connect
Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:
{
"mcpServers": {
"pipeworx": {
"url": "https://pipeworx.io/mcp"
}
}
}
Connect to just the pod-researcher pack
{
"mcpServers": {
"pod-researcher": {
"url": "https://gateway.pipeworx.io/pod-researcher/mcp"
}
}
}
See Getting Started for client-specific install steps.