analytics_summary
ChatGPTSummarize podcast or episode analytics with plan history windowing. For "the last N days" send from as today minus N-1 days and to as today, in the person's time zone (time_zone in doctor): that is how the Podigee analytics pages count it. From 90 days up Podigee reads whole weeks, and from 180 days whole months, so the window that was read is wider than the one you asked for and is returned in meta. Report the figures of that window and name it. Do not split a range into shorter ones to get daily figures: the totals then differ from what the person sees in Podigee. Downloads are not listeners: never call a download figure listeners.
bulk_update_episodes
ChatGPTPreview, then apply metadata changes to many episodes in one confirmed call. Each entry carries its own attributes, so this handles both the same value everywhere and a per-episode find-and-replace. One confirmation covers the whole set. Episodes are updated independently and each result reports its own outcome, so a partial failure is visible. Max 50 per call; narrow the set with list_episodes filters first.
cancel_operation
ChatGPTPreview or cancel a durable MCP operation.
create_episode
ChatGPTCreate an episode draft. Prefer publish_episode for end-to-end publishing.
create_listener
ChatGPTPreview, then create or invite a private-feed listener. The show must already have a private feed; switch it on with manage_feed_access first.
create_podcast
ChatGPTCreate a new show. A title is enough; the rest can follow with update_podcast. Leave subdomain out and Podigee picks an address; an address another show has is refused. Call with dry_run true first and wait for the user. The show uses one of the shows the plan allows (doctor says how many are left). To bring an existing podcast over from another host, use import_podcast instead.
create_production
ChatGPTAttach a file sent with create_upload to an existing episode as a new production. The server checks that the file arrived and closes the upload. For a new episode, or to publish in the same step, use publish_episode.
create_upload
ChatGPTStart the upload of a file that is on the user's computer: a recording (audio or video), or a cover image (PNG or JPEG, square, 1400 to 3000 pixels, up to 2 MB). The answer has the address the file goes to and the curl command that sends it: you send the file yourself with one HTTP PUT. A recording then goes to publish_episode with the upload_id. A cover image goes to update_podcast or update_episode as attributes.cover_image_upload_id. Use this only when you can read the file and run commands. A chat app cannot: it gives the user the page instead (find_in_podigee has its link). A link to a file is not an upload; this server does not fetch links.
delete_episode
ChatGPTPermanently delete an episode and remove it from connected platforms. This cannot be undone and there is no restore tool. To take an episode offline reversibly, use publish_episode with publication mode "draft" instead. Requires dry_run preview confirm token. A confirm sent sooner than 15 seconds after its preview is refused: show the preview to the user and wait for their yes.
distribution_status_and_guidance
ChatGPTPer-platform distribution status plus what to do about it. Reports each platform's normalized status and, for platforms Podigee cannot submit to on the user's behalf, the reason and the exact next step they must take themselves. Pass platform_key from the status output to focus on one. status.setup has YouTube, Spotify and Apple Podcasts as the Channels page shows them, also before the first episode is live.
doctor
ChatGPTPreflight account, subscription, encoding, and publish readiness, plus the plan name, the plan allowances (storage, publishes, encoding, seats, AI credits) with usage and reset dates, and the time zone the person works in. Call this before a bulk change to know the ceilings, and before scheduling to know the time zone.
duplicate_episode
ChatGPTMake a draft copy of an existing episode under a new title, in the same show or, with target_podcast_id, in another show of this account. The copy carries over the texts (subtitle, description, show notes, keywords, authors, explicit flag, episode type) and the chapter marks. It does NOT copy the recording (audio or video), the artwork or the transcript: the copy is a draft without a recording until one is added: in the browser on the episode page, or by you with create_upload when you can read the file. Tell the person that when you report the copy. To change texts of the copy, for example to translate them, call update_episode on the new episode afterwards.
explain_distribution_handoff
ChatGPTFor a platform that owns its listing account, explain the one-time claim the user makes there and give them the exact next step. Say plainly that this is setup only: once the show is listed, publishing through Podigee reaches the platform automatically and needs no further manual work.
find_in_podigee
ChatGPTFind how something is done in Podigee. For a job it answers with the tool of this server that does it (use_tool), or with the page of the Podigee app where the person does it, or it says that Podigee does not offer it. Use this whenever you are not sure which tool fits, whenever the user asks where or how to do something in Podigee, and whenever they ask for something no other tool here can do, such as billing, the payment method, invoices, the plan, team members and access, uploading from the browser, player and website settings, recording, comments or clips. Give the user the returned link instead of saying you cannot help. Each match says whether the page is open to this person and their plan. Pass podcast_id or episode_id to get the link for that show or episode. Read-only: it changes nothing.
get_content_asset
ChatGPTFetch one generated content asset with its full text. Find candidates with list_content_assets first.
get_distribution_status
ChatGPTWhere a podcast stands on each directory and platform: a normalized status per platform (live, in_review, submitted, rejected, not_submitted), the public listing URL where one exists, the RSS feed URL, and a summary grouping platforms by status. Use this to answer "is my show live on X" and "what still needs submitting". A new podcast starts with a row for the audio directories (Apple Podcasts, Spotify, Deezer and others), so not_submitted is the default rather than a fault. It has no row for YouTube or for video delivery until that is set up. Read setup for YouTube, Spotify and Apple Podcasts, also before the first episode is live: what is saved, what the person can do now, and what follows the first publish.
get_episode
ChatGPTRead one episode: its texts, whether it is a draft, scheduled or live (published_at), the length of its recording, its chapters and whether it has a transcript.
get_episode_analytics
ChatGPTFetch episode analytics. Prefer analytics_summary workflow.
get_episode_distribution
ChatGPTWhether one episode actually reached the platforms Podigee delivers to per episode, such as Spotify Video, with the failure reason and time when it did not. Use this to answer "why is episode 12 not on Spotify" after get_distribution_status has confirmed the show itself is set up. An empty deliveries list is normal for a live episode: it reaches directories through the RSS feed rather than being pushed individually. For an episode that is not live (summary.episode_published false) an empty list only means that nothing was sent yet.
get_episode_transcript
ChatGPTRead an episode transcript in time-ordered segments. Use this before writing show notes, pulling quotes, or choosing clip moments. Paginated, because a full episode transcript is too large to return at once.
get_me
ChatGPTReturn the authenticated Podigee account identity, the granted OAuth scopes, and whether this credential can actually write.
get_operation
ChatGPTInspect a durable MCP operation. A publish that waits for its recording has waiting: what it waits for, since when, whether the recording still changes, and what happens then. After a failure or a stall, recovery names the one next step.
get_podcast
ChatGPTFetch one podcast by ID.
get_podcast_analytics
ChatGPTFetch podcast analytics for a date range. Prefer analytics_summary workflow. For "the last N days" send from as today minus N-1 days and to as today, in the person's time zone (time_zone in doctor): that is how the Podigee analytics pages count it. From 90 days up Podigee reads whole weeks, and from 180 days whole months, so the window that was read is wider than the one you asked for and is returned in meta. Report the figures of that window and name it. Do not split a range into shorter ones to get daily figures: the totals then differ from what the person sees in Podigee. Downloads are not listeners: never call a download figure listeners.
get_production
ChatGPTPoll production encoding status.
get_recording
ChatGPTRead one Studio recording: its status, when it was recorded and how long it is, who took part, the episode made from it, and what can be done with it next. Read-only.
get_recording_transcript
ChatGPTRead what was said in a Studio recording, with the speaker of each segment. This is the transcript Studio saved during the recording, so it works before the recording is an episode. For an episode, get_episode_transcript has the final transcript. Page with limit and offset.
get_upload
ChatGPTThe state of an upload started with create_upload: which parts of the file are in storage, a fresh address for the next missing part, and what to do next. Call it when an address expired, after each part of a file that goes in several parts, or to check that the file arrived.
import_podcast
ChatGPTImport a podcast from an RSS feed URL. Preview with dry_run first: the preview reports whether the feed is readable and how many episodes it holds, so show that to the user before they confirm. Once started it returns an operation_id; poll get_operation for its progress, which reports how many episodes of the total have been imported. Requires a paid plan; call doctor to check before offering it.
list_analytics_reports
ChatGPTList generated analytics reports available to the user.
list_content_assets
ChatGPTList the content Podigee already generated for a podcast: blog drafts, newsletters, social posts, pull quotes, title and description variants, and video or audio clips. Check this before drafting something new so you reuse approved copy instead of contradicting it. Use get_content_asset for the full text. Read-only: no tool here saves or changes a draft in Podigee, so never say a text you wrote was saved. An asset listed here is the one Podigee made earlier, not yours.
list_episodes
ChatGPTList episodes of one show, or of every show when podcast_id is left out. Filter by title text, publication state, or the time an episode was published, created or changed instead of paging the whole catalog. Use state "draft" for unpublished, "scheduled" for a future date, "published" for live.
list_listeners
ChatGPTList private-feed listeners, optionally filtered by podcast. These are the people invited to a private podcast. Listener comments on episodes are something else: no tool here reads or approves them, so call find_in_podigee for the Comments page.
list_podcasts
ChatGPTList the shows (podcasts) the authenticated user can access. Find a show by words of its title, or sort by recently_updated to see where work happened last: a change to an episode also updates its show.
list_recent_work
ChatGPTList what was made or changed most recently, across every show and in one call: episodes (drafts included), Studio recordings, generated content and new shows, newest first. Use it for questions such as "my latest recordings", "what did I work on today" or "the drafts of this week", instead of listing each show. Narrow it with types, since and podcast_id. A change can also come from Podigee processing a recording, not only from the user.
list_recordings
ChatGPTList the user's Studio recordings, newest first: what was recorded in the Podigee recording studio, planned sessions included. A recording is not an episode until the user turns it into one; episode_id is set when they did. Read-only: no tool here starts, edits or publishes a recording.
manage_feed_access
ChatGPTMake a show private or public again, and manage the listeners of a private show. With podcast_id alone it reads the feed address, whether the show is private, and its listeners. feed_protection "enable" makes the show private, so only invited listeners can subscribe; "disable" makes it public again. listener_attributes invites a listener; listener_id with listener_action activates, deactivates or deletes one. Every change is previewed with dry_run true first, and one change goes into one call. Listeners only hear a private show. They are not team members: to invite someone to work on a show or the account, call find_in_podigee.
manage_workspace
ChatGPTInspect a workspace or preview and apply one podcast create or update.
publish_episode
ChatGPTPublish an episode now, schedule it, or take a live episode back to draft. publication.mode is "now", "scheduled" (with published_at) or "draft". With episode_id it acts on that episode; without it a new episode is made from episode_attributes. An episode needs a recording to go live, and a recording comes from an upload (create_upload), never from a link. Call with dry_run true first and wait for the user; the confirmed call returns an operation to follow with get_operation. While it waits for the recording it has waiting: report that to the user. After a failure follow recovery.
resume_operation
ChatGPTPreview, then resume a retryable durable MCP operation.
search_help
ChatGPTSearch the Podigee help center and get article snippets with their links. Use this when the user asks how something in Podigee works, what a term or a number means, or why something behaves the way it does. Answer only from the returned snippets and cite the article url. For where something is in the Podigee app, use find_in_podigee instead. Read-only. Only the keywords of the query are sent to the help center, never account data.
search_podcast_content
ChatGPTSearch what was actually said across a podcast and get matching passages with the episode and timestamp. Use this to answer "which episode covered X", to pull quotes, and to gather source material before drafting show notes, a blog post, or social copy. Prefer this over reading whole transcripts: it returns only the relevant passages.
send_listener_password_reset
ChatGPTSend a password reset email to a private-feed listener.
start_production
ChatGPTPreview, then start encoding. Set publish_episode to publish after encoding.
stop_production
ChatGPTPreview, then stop an in-progress production encoding job.
submit_to_platform
ChatGPTPreview, then submit a podcast to a directory Podigee can submit to on the user's behalf: spotify, deezer, apple_podcasts, listen_notes. Use this when get_distribution_status reports a platform as not_submitted with manual_submission_required false. For platforms that own their listing account, call explain_distribution_handoff instead: those need a one-time setup the user performs themselves.
update_episode
ChatGPTPreview, then update episode metadata. To publish, schedule, or unpublish, use publish_episode with a publication mode of draft, now, or scheduled. chapter_marks and transcription replace the entire existing collection rather than appending to it, so read the episode first with get_episode and send the merged set. The episode's own cover comes from an image address (cover_image) or from a file on the user's computer that you sent with create_upload (cover_image_upload_id).
update_listener_status
ChatGPTActivate, deactivate, or delete a listener. Destructive actions require confirm. A delete confirm sent sooner than 15 seconds after its preview is refused: show the preview to the user and wait for their yes.
update_podcast
ChatGPTChange the settings of a show: title, subtitle, description, language, category, explicit flag, authors, owner email, cover image and its Podigee address (subdomain). Send only the fields to change, with dry_run true first; the preview says what will change. The cover comes from an image address (cover_image) or from a file on the user's computer that you sent with create_upload (cover_image_upload_id). A new subdomain moves the website and every feed address, and podcast directories keep the old address until they are told. To make a show private use manage_feed_access.
analytics_summary
Claudebulk_update_episodes
Claudecancel_operation
Claudecreate_episode
Claudecreate_listener
Claudecreate_podcast
Claudecreate_production
Claudecreate_upload
Claudedelete_episode
Claudedistribution_status_and_guidance
Claudedoctor
Claudeduplicate_episode
Claudeexplain_distribution_handoff
Claudefind_in_podigee
Claudeget_content_asset
Claudeget_distribution_status
Claudeget_episode
Claudeget_episode_analytics
Claudeget_episode_distribution
Claudeget_episode_transcript
Claudeget_me
Claudeget_operation
Claudeget_podcast
Claudeget_podcast_analytics
Claudeget_production
Claudeget_upload
Claudeimport_podcast
Claudelist_analytics_reports
Claudelist_content_assets
Claudelist_episodes
Claudelist_listeners
Claudelist_podcasts
Claudemanage_feed_access
Claudemanage_workspace
Claudepublish_episode
Clauderesume_operation
Claudesearch_help
Claudesearch_podcast_content
Claudesend_listener_password_reset
Claudestart_production
Claudestop_production
Claudesubmit_to_platform
Claudeupdate_episode
Claudeupdate_listener_status
Claudeupdate_podcast
Claude