PodHome MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PodHome MCP Server Schedule 'The Future of AI' for my-main-podcast for next Friday."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
PodHome MCP Server
MCP server for the Podhome Integration API with multi-show support.
Installation
cd podhome-mcp
uv syncRelated MCP server: Podbean MCP Server
Configuration
Set the following environment variables:
PODHOME_BASE_URL- Base URL for the API (default:https://serve.podhome.fm)PODHOME_SHOWS- JSON string mapping show slugs to API keys
Example:
export PODHOME_SHOWS='{"my-main-podcast": "phk_abc123...", "weekly-tech-show": "phk_xyz789..."}'Usage
uv run podhome-mcpThe server runs over stdio and is designed to be used with an MCP client like OpenClaw.
OpenClaw Registration
{
"agents": {
"main": {
"mcpServers": {
"podhome": {
"command": "uv",
"args": ["run", "--directory", "/absolute/path/to/podhome-mcp", "podhome-mcp"],
"env": {
"PODHOME_BASE_URL": "https://serve.podhome.fm",
"PODHOME_SHOWS": "{\"my-main-podcast\": \"phk_abc123def456...\", \"weekly-tech-show\": \"phk_789xyz...\"}"
}
}
}
}
}
}Tools
Episodes
create_episode- Create a new episode for a specific showlist_episodes- List episodes for a specific show (with optional filters)schedule_episode- Schedule or publish an episodemodify_episode- Modify an episode's metadata
Clips
create_clip- Create a clip (soundbite) from an episode
Webhooks
list_webhooks- List all registered webhooksregister_webhook- Register a new webhookdelete_webhook- Delete a webhooktest_webhook- Test webhooks
Utility
list_shows- List all configured show slugs
Development
# Install dev dependencies
uv sync --group dev
# Run tests
pytest
# Type check
mypy src/podhome_mcp
# Lint
ruff check src/podhome_mcpAvailable Tools
10 toolscreate_clipB
Create a clip (soundbite) from an episode.
Args: show: One of the slugs configured in PODHOME_SHOWS episode_id: ID of the episode to clip title: Title of the clip start_time: Start time in seconds (can be fractional) duration: Duration in seconds (can be fractional)
Inputs: show (required), episode_id (required), title (required), start_time (required), +1 more. Returns: result
create_episodeA
Create a new episode for a specific show.
Args: show: One of the slugs configured in PODHOME_SHOWS (e.g., "my-main-podcast") file_url: Publicly accessible URL to the media file title: Episode title description: Optional episode description (can contain HTML) link: Optional canonical link for the episode publish_date: UTC ISO-8601 future date to schedule publishing use_podhome_ai: Run Podhome AI to generate transcript and artifacts suggest_chapters: Generate chapters (requires use_podhome_ai=true) suggest_details: Generate description and title suggestions suggest_clips: Generate clips (requires use_podhome_ai=true) enhance_audio: Run audio enhancement (paid feature)
Inputs: show (required), file_url (required), title (required), description, +7 more. Returns: result
delete_webhookC
Delete a webhook.
Args: show: One of the slugs configured in PODHOME_SHOWS integration_id: The ID of the webhook to delete
Inputs: show (required), integration_id (required). Returns: result
list_episodesC
List episodes for a specific show.
Args: show: One of the slugs configured in PODHOME_SHOWS status: Optional status filter (0-5) include_transcript: Include transcript in response include_chapters: Include chapters in response include_downloads: Include download counts include_people: Include people in response
Inputs: show (required), status, include_transcript, include_chapters, +2 more. Returns: result
list_showsB
List all configured Podhome show slugs.
Inputs: no named parameters. Returns: result
list_webhooksB
List all registered webhooks for a specific show.
Args: show: One of the slugs configured in PODHOME_SHOWS
Inputs: show (required). Returns: result
modify_episodeC
Modify an episode's metadata.
Args: show: One of the slugs configured in PODHOME_SHOWS episode_id: ID of the episode to modify title: New episode title description: New description (can contain HTML) episode_nr: Episode number season_nr: Season number image_url: Image URL image_data: Base64 encoded image data
Inputs: show (required), episode_id (required), title, description, +4 more. Returns: result
register_webhookB
Register a new webhook.
Args: show: One of the slugs configured in PODHOME_SHOWS url: Webhook endpoint URL action_type: Action type - "episode_published" or "episode_live"
Inputs: show (required), url (required), action_type (required). Returns: result
schedule_episodeB
Schedule or publish an episode.
Args: show: One of the slugs configured in PODHOME_SHOWS episode_id: The ID of the episode to schedule publish_now: Publish immediately publish_date: Future UTC ISO-8601 publish date
Inputs: show (required), episode_id (required), publish_now, publish_date. Returns: result
test_webhookC
Test webhooks. Your webhook is called with data from the latest published or live episode.
Args: show: One of the slugs configured in PODHOME_SHOWS integration_id: Optional specific webhook ID to test
Inputs: show (required), integration_id. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 10 tools
Each tool has a clearly distinct purpose targeting specific resources and actions: create_clip, create_episode, delete_webhook, list_episodes, list_shows, list_webhooks, modify_episode, register_webhook, schedule_episode, and test_webhook. There is no overlap in functionality, making tool selection unambiguous for an agent.
All tool names follow a consistent verb_noun pattern (e.g., create_clip, list_episodes, modify_episode) with clear, descriptive verbs and nouns. There are no deviations in naming conventions, making the set predictable and easy to understand.
With 10 tools, the count is well-scoped for podcast management, covering key operations like episode and clip creation, listing, modification, scheduling, and webhook handling. Each tool serves a distinct and necessary function without redundancy or bloat.
The tool set provides comprehensive coverage for podcast management, including CRUD operations for episodes and webhooks, plus scheduling and AI features. A minor gap is the lack of a delete_episode tool, but agents can work around this using modify_episode or other methods, and core workflows are well-supported.
Related MCP Connectors
An MCP server that provides tools to discover and retrieve podcast episodes transcripts.
Manage Podhome podcasts: episodes, chapters, transcripts, clips, people and analytics.
Podcast booking-intelligence MCP server: search shows, match profiles, draft pitches, read replies.
PostHero MCP server — schedule and publish social media posts from any MCP-compatible AI tool
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that scrapes and transcribes podcast episodes from YouTube or RSS feeds using Deepgram's Nova-2 model. It allows users to track podcasts for new episodes, manage transcripts, and generate personalized summaries through Claude.101MIT
- FlicenseNot gradedqualityDmaintenanceAn MCP server that enables managing podcasts through the Podbean API via natural language conversations, including episode management, analytics, and podcast information retrieval.-
- AlicenseAqualityBmaintenanceMCP server for the Podcast Index API — search podcasts, track appearances, monitor trending shows, check feed health1843 npm1MIT
- AlicenseAqualityFmaintenanceMCP server for the Transistor.fm API: manage podcast episodes, analytics, transcripts, and webhooks from your AI agent.2343 npm1MIT