PodPitch
Find relevant podcasts without an account. Connect PodPitch for private campaigns and outreach.
Should I use this
Quality & Safety
Findings (2)
- LOWin archive_profile
- LOWin unarchive_profile
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"podpitch": {
"url": "https://api.podpitch.com/v1/mcp"
}
}
}Remote endpoints
https://api.podpitch.com/v1/mcpstreamable-httpWhat it can do
Tool inventory
Tools (51)
⚪report_agent_bug(body)
Record a minimal technical PodPitch failure without an account. Report concrete tool failures once. Exclude credentials, personal data, pitches and conversations. Respect client approval. Returns a persisted report ID.
Input Schema
{
"type": "object",
"properties": {
"body": {
"additionalProperties": false,
"properties": {
"tool_name": {
"maxLength": 120,
"minLength": 1,
"title": "Tool Name",
"type": "string"
},
"summary": {
"maxLength": 500,
"minLength": 1,
"title": "Summary",
"type": "string"
},
"expected_behavior": {
"maxLength": 4000,
"minLength": 1,
"title": "Expected Behavior",
"type": "string"
},
"actual_behavior": {
"maxLength": 4000,
"minLength": 1,
"title": "Actual Behavior",
"type": "string"
},
"reproduction_steps": {
"maxLength": 4000,
"minLength": 1,
"title": "Reproduction Steps",
"type": "string"
}
},
"required": [
"tool_name",
"summary",
"expected_behavior",
"actual_behavior",
"reproduction_steps"
],
"title": "AgentFeedback",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false
}🟢search_podcasts(query, limit)
Find active podcasts by topic or name. No account needed. Returns public show information and listening links, never contact addresses.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 200
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"default": 5
}
},
"required": [
"query"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"podcasts": {
"items": {
"$ref": "#/$defs/PublicPodcast"
},
"title": "Podcasts",
"type": "array"
}
},
"required": [
"podcasts"
],
"$defs": {
"PublicPodcast": {
"additionalProperties": false,
"properties": {
"id": {
"title": "Id",
"type": "string"
},
"title": {
"title": "Title",
"type": "string"
},
"description": {
"title": "Description",
"type": "string"
},
"listening_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Listening Url"
},
"category": {
"title": "Category",
"type": "string"
},
"language": {
"title": "Language",
"type": "string"
},
"has_guests": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Has Guests"
},
"currently_booking_guests": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Unknown unless dated current booking evidence exists. A guest format flag does not verify current availability.",
"title": "Currently Booking Guests"
},
"estimated_monthly_listeners": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Audience proxy: four times the catalog weekly download estimate. Not verified unique listeners.",
"title": "Estimated Monthly Listeners"
},
"total_social_followers": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Catalog social follower total; may overlap across platforms. Missing values are unknown, not zero.",
"title": "Total Social Followers"
},
"catalog_last_updated": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Catalog Last Updated"
},
"catalog_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Catalog Url"
},
"image_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Image Url"
},
"rss_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Rss Url"
},
"spotify_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Spotify Url"
},
"itunes_rating_us": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Itunes Rating Us"
},
"itunes_review_count_us": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Itunes Review Count Us"
},
"host": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Host"
},
"country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Country"
},
"genres": {
"items": {
"type": "string"
},
"title": "Genres",
"type": "array"
},
"episode_count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Episode Count"
},
"episodes_last_month": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Episodes Last Month"
},
"catalog_episode_title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Catalog Episode Title"
},
"catalog_episode_description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Catalog Episode Description"
},
"catalog_episode_date": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Catalog Episode Date"
},
"estimated_weekly_downloads": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Catalog weekly download estimate, not verified unique listeners.",
"title": "Estimated Weekly Downloads"
}
},
"required": [
"id",
"title",
"description",
"listening_url",
"category",
"language"
],
"title": "PublicPodcast",
"type": "object"
}
},
"title": "PodcastResults"
}🟢get_podcast_details(podcast_id)
Read public details for a podcast from search. No account or contact addresses.
Input Schema
{
"type": "object",
"properties": {
"podcast_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,80}$"
}
},
"required": [
"podcast_id"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"podcast": {
"$ref": "#/$defs/PublicPodcast"
}
},
"required": [
"podcast"
],
"$defs": {
"PublicPodcast": {
"additionalProperties": false,
"properties": {
"id": {
"title": "Id",
"type": "string"
},
"title": {
"title": "Title",
"type": "string"
},
"description": {
"title": "Description",
"type": "string"
},
"listening_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Listening Url"
},
"category": {
"title": "Category",
"type": "string"
},
"language": {
"title": "Language",
"type": "string"
},
"has_guests": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Has Guests"
},
"currently_booking_guests": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Unknown unless dated current booking evidence exists. A guest format flag does not verify current availability.",
"title": "Currently Booking Guests"
},
"estimated_monthly_listeners": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Audience proxy: four times the catalog weekly download estimate. Not verified unique listeners.",
"title": "Estimated Monthly Listeners"
},
"total_social_followers": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Catalog social follower total; may overlap across platforms. Missing values are unknown, not zero.",
"title": "Total Social Followers"
},
"catalog_last_updated": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Catalog Last Updated"
},
"catalog_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Catalog Url"
},
"image_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Image Url"
},
"rss_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Rss Url"
},
"spotify_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Spotify Url"
},
"itunes_rating_us": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Itunes Rating Us"
},
"itunes_review_count_us": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Itunes Review Count Us"
},
"host": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Host"
},
"country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Country"
},
"genres": {
"items": {
"type": "string"
},
"title": "Genres",
"type": "array"
},
"episode_count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Episode Count"
},
"episodes_last_month": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Episodes Last Month"
},
"catalog_episode_title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Catalog Episode Title"
},
"catalog_episode_description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Catalog Episode Description"
},
"catalog_episode_date": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Catalog Episode Date"
},
"estimated_weekly_downloads": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Catalog weekly download estimate, not verified unique listeners.",
"title": "Estimated Weekly Downloads"
}
},
"required": [
"id",
"title",
"description",
"listening_url",
"category",
"language"
],
"title": "PublicPodcast",
"type": "object"
}
},
"title": "PodcastDetails"
}🟢get_connected_account
Return the account represented by this connection, with a stable opaque profile ID and display email.
Input Schema
{
"type": "object",
"properties": {},
"required": [],
"additionalProperties": false,
"$defs": {}
}Output Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"pattern": "\\S"
},
"email": {
"type": "string"
}
},
"required": [
"id"
],
"additionalProperties": false
}🟡create_podcast_campaign(body)
Create a podcast campaign in Off mode using a team profile and connected senders. Existing plan and first-campaign setup checks apply.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/CreatePodcastCampaign",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"CreatePodcastCampaign": {
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"title": "Name"
},
"profile_id": {
"type": "integer",
"minimum": 1,
"title": "Profile Id"
},
"from_email": {
"items": {
"type": "string",
"format": "email"
},
"type": "array",
"maxItems": 20,
"minItems": 1,
"title": "From Email"
},
"custom_instruction": {
"type": "string",
"maxLength": 20000,
"title": "Custom Instruction",
"default": ""
},
"matching_blurb": {
"type": "string",
"maxLength": 10000,
"title": "Matching Blurb",
"default": ""
},
"sources": {
"anyOf": [
{
"items": {
"type": "string",
"enum": [
"podcast",
"journalist",
"newsletter"
]
},
"type": "array",
"maxItems": 3,
"minItems": 1
},
{
"type": "null"
}
],
"title": "Sources"
},
"subject_lines": {
"items": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"type": "array",
"maxItems": 10,
"title": "Subject Lines"
}
},
"additionalProperties": false,
"type": "object",
"required": [
"name",
"profile_id",
"from_email"
],
"title": "CreatePodcastCampaign"
}
}
}🟢get_campaign(campaign_id)
Read your team's campaign and its settings.
Input Schema
{
"type": "object",
"properties": {
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
}
},
"required": [
"campaign_id"
],
"additionalProperties": false,
"$defs": {}
}🔴update_campaign(campaign_id, body)
Update campaign name, writing, follow-up, and tracking settings. Scheduling uses schedule_campaign.
Input Schema
{
"type": "object",
"properties": {
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
},
"body": {
"$ref": "#/$defs/CampaignSettings",
"type": "object"
}
},
"required": [
"campaign_id",
"body"
],
"additionalProperties": false,
"$defs": {
"CampaignSettings": {
"properties": {
"name": {
"anyOf": [
{
"type": "string",
"maxLength": 200,
"minLength": 1
},
{
"type": "null"
}
],
"title": "Name"
},
"custom_instruction": {
"anyOf": [
{
"type": "string",
"maxLength": 20000
},
{
"type": "null"
}
],
"title": "Custom Instruction"
},
"matching_blurb": {
"anyOf": [
{
"type": "string",
"maxLength": 10000
},
{
"type": "null"
}
],
"title": "Matching Blurb"
},
"email_length": {
"anyOf": [
{
"type": "string",
"enum": [
"small",
"medium",
"large"
]
},
{
"type": "null"
}
],
"title": "Email Length"
},
"follow_up": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Follow Up"
},
"follow_up_2": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Follow Up 2"
},
"exclude_tracking": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Exclude Tracking"
},
"exclude_html_format": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Exclude Html Format"
},
"include_recent_episode_ref": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Include Recent Episode Ref"
}
},
"additionalProperties": false,
"type": "object",
"title": "CampaignSettings"
}
}
}🔴edit_pitch_draft(campaign_id, entity_id, body)
Edit a saved, unscheduled pitch at its expected stage. Refresh before editing; scheduled messages use edit_upcoming_send.
Input Schema
{
"type": "object",
"properties": {
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
},
"entity_id": {
"type": "string",
"title": "Entity Id"
},
"body": {
"$ref": "#/$defs/PitchEdit",
"type": "object"
}
},
"required": [
"campaign_id",
"entity_id",
"body"
],
"additionalProperties": false,
"$defs": {
"PitchEdit": {
"properties": {
"expected_stage": {
"type": "integer",
"maximum": 5,
"minimum": 0,
"title": "Expected Stage"
},
"content": {
"type": "string",
"maxLength": 30000,
"minLength": 1,
"title": "Content"
},
"subject": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"title": "Subject"
}
},
"additionalProperties": false,
"type": "object",
"required": [
"expected_stage",
"content",
"subject"
],
"title": "PitchEdit"
}
}
}🟢list_campaigns(limit, before_id)
List up to 50 campaign summaries, newest first. Use next_before_id as before_id for the next page. Read complete settings with get_campaign.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"default": 20,
"title": "Limit"
},
"before_id": {
"anyOf": [
{
"type": "integer",
"maximum": 9223372036854776000,
"minimum": 1
},
{
"type": "null"
}
],
"title": "Before Id"
}
},
"required": [],
"additionalProperties": false,
"$defs": {}
}🟢list_profiles
List your team's profiles.
Input Schema
{
"type": "object",
"properties": {},
"required": [],
"additionalProperties": false,
"$defs": {}
}🟡create_profile(body)
Create a profile for your team.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/CreateProfileRequest",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"CreateProfileRequest": {
"properties": {
"name": {
"type": "string",
"title": "Name"
},
"blurb": {
"type": "string",
"title": "Blurb"
},
"database": {
"type": "string",
"title": "Database"
},
"key_points": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Key Points"
},
"key_points_podcast": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Key Points Podcast"
},
"key_points_journalist": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Key Points Journalist"
},
"key_points_newsletter": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Key Points Newsletter"
},
"company": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Company"
},
"role": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Role"
},
"avatar_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Avatar Url"
},
"linkedin_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Linkedin Url"
},
"audience": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Audience"
},
"profile_signature": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Profile Signature"
},
"type": {
"type": "string",
"title": "Type",
"default": "person"
},
"social_reach": {
"type": "boolean",
"title": "Social Reach",
"default": false
},
"followers": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Followers"
},
"smart_filter": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Smart Filter"
},
"signature_use_case": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Signature Use Case"
},
"sender_relationship": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Sender Relationship"
},
"linkedin_company_json": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"title": "Linkedin Company Json"
},
"linkedin_profile_json": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"title": "Linkedin Profile Json"
},
"social_channels": {
"anyOf": [
{
"items": {},
"type": "array"
},
{
"type": "null"
}
],
"title": "Social Channels"
},
"different_bios": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Different Bios"
},
"bio_podcast": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Podcast"
},
"bio_journalist": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Journalist"
},
"bio_newsletter": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Newsletter"
},
"bio_grade": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Grade"
},
"bio_grade_reasoning": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Grade Reasoning"
},
"bio_graded_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Graded At"
},
"bio_grade_podcast": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Grade Podcast"
},
"bio_grade_reasoning_podcast": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Grade Reasoning Podcast"
},
"bio_graded_at_podcast": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Graded At Podcast"
},
"bio_grade_journalist": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Grade Journalist"
},
"bio_grade_reasoning_journalist": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Grade Reasoning Journalist"
},
"bio_graded_at_journalist": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Graded At Journalist"
},
"bio_grade_newsletter": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Grade Newsletter"
},
"bio_grade_reasoning_newsletter": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Grade Reasoning Newsletter"
},
"bio_graded_at_newsletter": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bio Graded At Newsletter"
},
"portfolio_visibility": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Portfolio Visibility"
},
"search_angle_guidance": {
"anyOf": [
{
"$ref": "#/$defs/SearchAngleGuidance"
},
{
"type": "null"
}
]
}
},
"type": "object",
"required": [
"name",
"blurb",
"database"
],
"title": "CreateProfileRequest",
"description": "Model for creating a new profile"
},
"SearchAngleGuidance": {
"properties": {
"topics_answer": {
"type": "string",
"maxLength": 4000,
"title": "Topics Answer",
"default": ""
},
"audiences_answer": {
"type": "string",
"maxLength": 4000,
"title": "Audiences Answer",
"default": ""
}
},
"type": "object",
"title": "SearchAngleGuidance"
}
}
}🔴archive_profile(id)
Archive a profile belonging to your team.
Input Schema
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"title": "Id"
}
},
"required": [
"id"
],
"additionalProperties": false,
"$defs": {}
}⚪unarchive_profile(id)
Restore an archived profile.
Input Schema
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"title": "Id"
}
},
"required": [
"id"
],
"additionalProperties": false,
"$defs": {}
}🟢search_account_podcasts(body)
Search podcasts with your account's filters and search allowance.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/PodcastSearchParams",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"PodcastSearchParams": {
"properties": {
"q": {
"type": "string",
"title": "Q"
},
"page": {
"type": "integer",
"title": "Page"
},
"per_page": {
"type": "integer",
"maximum": 50,
"title": "Per Page",
"default": 25
},
"query_by": {
"type": "string",
"title": "Query By",
"default": "title, description"
},
"sort_by": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Sort By"
},
"worthy": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Worthy",
"description": "Indicates if the podcast is considered active or idle"
},
"exclude": {
"type": "boolean",
"title": "Exclude",
"default": false
},
"profile_id": {
"type": "integer",
"title": "Profile Id"
},
"primary_genre": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Primary Genre"
},
"frequency": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Frequency"
},
"listenership": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Listenership"
},
"language": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Language"
}
},
"type": "object",
"required": [
"q",
"page"
],
"title": "PodcastSearchParams"
}
}
}🟢get_account_podcast(podcast_id)
Read a podcast's full account-accessible record.
Input Schema
{
"type": "object",
"properties": {
"podcast_id": {
"type": "string",
"title": "Podcast Id"
}
},
"required": [
"podcast_id"
],
"additionalProperties": false,
"$defs": {}
}🟢get_campaign_drafts(campaign_id, limit, offset, entity_id)
Read saved drafts for any campaign type, including podcast campaigns. Returns all six email stages, generation/error and pause/send state. Use next_offset as offset for the next page; use entity_id for a specific draft. A queued acknowledgement is not completion; read saved content and is_regenerating to verify.
Input Schema
{
"type": "object",
"properties": {
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"default": 20,
"title": "Limit"
},
"offset": {
"type": "integer",
"minimum": 0,
"default": 0,
"title": "Offset"
},
"entity_id": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"maxLength": 500
},
{
"type": "null"
}
],
"title": "Entity Id"
}
},
"required": [
"campaign_id"
],
"additionalProperties": false,
"$defs": {}
}🟢get_campaign_draft_previews(campaign_id, database, limit)
Read pitch previews for a campaign.
Input Schema
{
"type": "object",
"properties": {
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
},
"database": {
"type": "string",
"title": "Database"
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"default": 10,
"title": "Limit"
}
},
"required": [
"campaign_id",
"database"
],
"additionalProperties": false,
"$defs": {}
}🟢get_campaign_audit(campaign_id, limit, offset)
Read the change history of your campaign.
Input Schema
{
"type": "object",
"properties": {
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"default": 50,
"title": "Limit"
},
"offset": {
"type": "integer",
"minimum": 0,
"default": 0,
"title": "Offset"
}
},
"required": [
"campaign_id"
],
"additionalProperties": false,
"$defs": {}
}🟢get_profile_audit(profile_id, limit, offset)
Read the change history of your profile.
Input Schema
{
"type": "object",
"properties": {
"profile_id": {
"type": "integer",
"title": "Profile Id"
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"default": 50,
"title": "Limit"
},
"offset": {
"type": "integer",
"minimum": 0,
"default": 0,
"title": "Offset"
}
},
"required": [
"profile_id"
],
"additionalProperties": false,
"$defs": {}
}🟢get_subject_results(campaign_id)
Read subject line performance for your campaign.
Input Schema
{
"type": "object",
"properties": {
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
}
},
"required": [
"campaign_id"
],
"additionalProperties": false,
"$defs": {}
}🟡add_contacts_to_campaign(body)
Add selected contacts to your campaign through the existing duplicate checks.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/AddToCampaign",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"AddToCampaign": {
"properties": {
"entity_ids": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Entity Ids"
},
"media_list": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Media List"
},
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
},
"preview": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Preview",
"default": false
},
"user_emails": {
"anyOf": [
{
"items": {
"type": "string",
"format": "email"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "User Emails"
},
"team_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Team Id"
},
"database": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Database"
},
"from_monitor": {
"type": "boolean",
"title": "From Monitor",
"default": false
}
},
"type": "object",
"required": [
"campaign_id"
],
"title": "AddToCampaign"
}
}
}🔴send_pitch(body)
Send a pitch through PodPitch's existing authorization, plan, campaign-mode, and daily pitch limits. Sends an email.
Input Schema
{
"type": "object",
"properties": {
"body": {
"type": "object",
"properties": {
"campaign_id": {
"type": "integer",
"minimum": 1
},
"entity_id": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"requested_stage": {
"type": "integer",
"minimum": 0,
"maximum": 5
}
},
"required": [
"campaign_id",
"entity_id",
"requested_stage"
],
"additionalProperties": false
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {}
}🔴schedule_campaign(body)
Schedule campaign pitches through the existing campaign and pitch-limit checks.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/EmailSchedule",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"EmailSchedule": {
"properties": {
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
},
"team_id": {
"type": "string",
"format": "uuid",
"title": "Team Id"
},
"entity_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Entity Id"
},
"follow_up_only": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Follow Up Only",
"default": false
},
"pause": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Pause",
"default": false
},
"datetime": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Datetime"
},
"start_timestampz": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Start Timestampz"
},
"timezone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Timezone"
},
"add_more": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Add More",
"default": false
},
"only_manual": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Only Manual",
"default": false
},
"asap": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Asap",
"default": false
}
},
"type": "object",
"required": [
"campaign_id",
"team_id"
],
"title": "EmailSchedule"
}
}
}🟢get_campaign_schedule(team_id, campaign_id, page, page_size, profile_id, ...)
Read scheduled campaign sends.
Input Schema
{
"type": "object",
"properties": {
"team_id": {
"type": "string",
"format": "uuid",
"title": "Team Id"
},
"campaign_id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Campaign Id"
},
"page": {
"type": "integer",
"default": 1,
"title": "Page"
},
"page_size": {
"type": "integer",
"default": 10,
"title": "Page Size"
},
"profile_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Profile Id"
},
"entity_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Entity Id"
}
},
"required": [
"team_id"
],
"additionalProperties": false,
"$defs": {}
}🔴pause_campaign_schedule(body)
Pause pending sends for your campaign.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/EmailSchedule",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"EmailSchedule": {
"properties": {
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
},
"team_id": {
"type": "string",
"format": "uuid",
"title": "Team Id"
},
"entity_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Entity Id"
},
"follow_up_only": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Follow Up Only",
"default": false
},
"pause": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Pause",
"default": false
},
"datetime": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Datetime"
},
"start_timestampz": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Start Timestampz"
},
"timezone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Timezone"
},
"add_more": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Add More",
"default": false
},
"only_manual": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Only Manual",
"default": false
},
"asap": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Asap",
"default": false
}
},
"type": "object",
"required": [
"campaign_id",
"team_id"
],
"title": "EmailSchedule"
}
}
}🔴disable_campaign_schedule(body)
Disable pending sends for your campaign.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/EmailSchedule",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"EmailSchedule": {
"properties": {
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
},
"team_id": {
"type": "string",
"format": "uuid",
"title": "Team Id"
},
"entity_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Entity Id"
},
"follow_up_only": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Follow Up Only",
"default": false
},
"pause": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Pause",
"default": false
},
"datetime": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Datetime"
},
"start_timestampz": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Start Timestampz"
},
"timezone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Timezone"
},
"add_more": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Add More",
"default": false
},
"only_manual": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Only Manual",
"default": false
},
"asap": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Asap",
"default": false
}
},
"type": "object",
"required": [
"campaign_id",
"team_id"
],
"title": "EmailSchedule"
}
}
}🔴set_campaign_mode(body)
Set a campaign Off or Manual through the existing mode checks. MagicPitch does not allow Manual.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/CampaignStatusRequest",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"CampaignStatusRequest": {
"properties": {
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
},
"team_id": {
"type": "string",
"format": "uuid",
"title": "Team Id"
},
"status": {
"type": "string",
"title": "Status"
}
},
"type": "object",
"required": [
"campaign_id",
"team_id",
"status"
],
"title": "CampaignStatusRequest"
}
}
}🟢list_inbox_threads(from_email, emails, profile_id, profile_ids, read_status, ...)
Search or list your team's inbox threads with pagination.
Input Schema
{
"type": "object",
"properties": {
"from_email": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "From Email"
},
"emails": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Emails"
},
"profile_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Profile Id"
},
"profile_ids": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Profile Ids"
},
"read_status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Read Status"
},
"starred": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Starred"
},
"hide_replied": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Hide Replied"
},
"categories": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Categories"
},
"folder": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Folder"
},
"thread_scope": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Thread Scope"
},
"q": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Q"
},
"limit": {
"type": "integer",
"default": 50,
"title": "Limit"
},
"offset": {
"type": "integer",
"default": 0,
"title": "Offset"
},
"cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Cursor"
}
},
"required": [],
"additionalProperties": false,
"$defs": {}
}🟢read_inbox_thread(email, thread_id)
Read a thread in a mailbox belonging to your team.
Input Schema
{
"type": "object",
"properties": {
"email": {
"type": "string",
"title": "Email"
},
"thread_id": {
"type": "string",
"title": "Thread Id"
}
},
"required": [
"email",
"thread_id"
],
"additionalProperties": false,
"$defs": {}
}🔴reply_to_inbox_thread(body)
Send a reply in a thread belonging to your team. Sends an email.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/ReplyRequest",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"ReplyRequest": {
"properties": {
"from_email": {
"type": "string",
"title": "From Email"
},
"thread_id": {
"type": "string",
"title": "Thread Id"
},
"body": {
"type": "string",
"title": "Body"
},
"subject": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Subject"
},
"to_address": {
"type": "string",
"title": "To Address"
},
"cc": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Cc"
},
"bcc": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Bcc"
},
"attachments": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/AttachmentRequest"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Attachments"
},
"timezone_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Timezone Name"
},
"draft": {
"anyOf": [
{
"$ref": "#/$defs/ReplyDraftContext"
},
{
"type": "null"
}
]
}
},
"type": "object",
"required": [
"from_email",
"thread_id",
"body",
"to_address"
],
"title": "ReplyRequest"
},
"ReplyDraftContext": {
"properties": {
"subject": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Subject"
},
"body": {
"type": "string",
"title": "Body"
},
"tone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Tone"
},
"confidence": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Confidence"
},
"custom_prompt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Custom Prompt"
},
"draft_instance_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Draft Instance Id"
}
},
"type": "object",
"required": [
"body"
],
"title": "ReplyDraftContext",
"description": "The Magic Inbox AI draft the reply editor was prefilled with, as\noriginally generated. Sent by the frontend so the API can record the\ndraft-vs-sent diff (see inbox_reply_draft_outcomes).\n\ndraft_instance_id links this send to the apply-time row written by\nPOST /inbox/draft-applied, so the two capture points reconcile into one\nrow instead of double-counting."
},
"AttachmentRequest": {
"properties": {
"filename": {
"type": "string",
"title": "Filename"
},
"content": {
"type": "string",
"title": "Content"
},
"content_type": {
"type": "string",
"title": "Content Type"
}
},
"type": "object",
"required": [
"filename",
"content",
"content_type"
],
"title": "AttachmentRequest"
}
}
}🔴mark_inbox_thread(body)
Mark a thread read, unread, starred, or archived.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/MarkRequest",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"MarkRequest": {
"properties": {
"thread_id": {
"type": "string",
"title": "Thread Id"
},
"email": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Email"
},
"archived": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Archived"
},
"read": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Read"
},
"starred": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Starred"
}
},
"type": "object",
"required": [
"thread_id"
],
"title": "MarkRequest"
}
}
}🟢get_inbox_counts(thread_scope)
Read inbox status counts.
Input Schema
{
"type": "object",
"properties": {
"thread_scope": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Thread Scope"
}
},
"required": [],
"additionalProperties": false,
"$defs": {}
}🟢list_inbox_labels
List your team's inbox labels.
Input Schema
{
"type": "object",
"properties": {},
"required": [],
"additionalProperties": false,
"$defs": {}
}🟡create_inbox_label(body)
Create an inbox label.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/InboxLabelCreate",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"InboxLabelCreate": {
"properties": {
"name": {
"type": "string",
"title": "Name"
},
"description": {
"type": "string",
"title": "Description"
},
"color": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Color"
}
},
"type": "object",
"required": [
"name",
"description"
],
"title": "InboxLabelCreate"
}
}
}🟢get_upcoming_sends(limit, offset, profile_ids, emails, types, ...)
Read upcoming sends for your team.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 50,
"title": "Limit"
},
"offset": {
"type": "integer",
"default": 0,
"title": "Offset"
},
"profile_ids": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Profile Ids"
},
"emails": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Emails"
},
"types": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Types"
},
"q": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Q"
}
},
"required": [],
"additionalProperties": false,
"$defs": {}
}🔴cancel_upcoming_send(scheduler_id)
Cancel an upcoming send belonging to your team.
Input Schema
{
"type": "object",
"properties": {
"scheduler_id": {
"type": "integer",
"title": "Scheduler Id"
}
},
"required": [
"scheduler_id"
],
"additionalProperties": false,
"$defs": {}
}🔴edit_upcoming_send(scheduler_id, body)
Edit an upcoming unsent message through existing validation.
Input Schema
{
"type": "object",
"properties": {
"scheduler_id": {
"type": "integer",
"title": "Scheduler Id"
},
"body": {
"$ref": "#/$defs/EditUpcomingSendRequest",
"type": "object"
}
},
"required": [
"scheduler_id",
"body"
],
"additionalProperties": false,
"$defs": {
"EditUpcomingSendRequest": {
"properties": {
"subject": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Subject"
},
"body": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Body"
}
},
"type": "object",
"title": "EditUpcomingSendRequest"
}
}
}🔴reschedule_upcoming_send(scheduler_id, body)
Reschedule an upcoming send through existing scheduling validation.
Input Schema
{
"type": "object",
"properties": {
"scheduler_id": {
"type": "integer",
"title": "Scheduler Id"
},
"body": {
"$ref": "#/$defs/routes__inbox__router__RescheduleRequest",
"type": "object"
}
},
"required": [
"scheduler_id",
"body"
],
"additionalProperties": false,
"$defs": {
"routes__inbox__router__RescheduleRequest": {
"properties": {
"scheduled_at": {
"type": "string",
"title": "Scheduled At"
}
},
"type": "object",
"required": [
"scheduled_at"
],
"title": "RescheduleRequest"
}
}
}🟢list_templates(type)
Read your team's writing templates.
Input Schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"title": "Type"
}
},
"required": [],
"additionalProperties": false,
"$defs": {}
}🟡create_template(body)
Create a writing template.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/TemplateCreateBody",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"TemplateCreateBody": {
"properties": {
"email_num": {
"type": "integer",
"title": "Email Num"
},
"content": {
"type": "string",
"title": "Content"
},
"alias": {
"type": "string",
"title": "Alias"
},
"type": {
"type": "string",
"title": "Type"
},
"version": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Version"
},
"allow_smoothing": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Allow Smoothing"
}
},
"type": "object",
"required": [
"email_num",
"content",
"alias",
"type"
],
"title": "TemplateCreateBody"
}
}
}🔴update_template(template_id, body)
Update a writing template belonging to your team.
Input Schema
{
"type": "object",
"properties": {
"template_id": {
"type": "integer",
"title": "Template Id"
},
"body": {
"$ref": "#/$defs/TemplateUpdateBody",
"type": "object"
}
},
"required": [
"template_id",
"body"
],
"additionalProperties": false,
"$defs": {
"TemplateUpdateBody": {
"properties": {
"email_num": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Email Num"
},
"content": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Content"
},
"alias": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Alias"
},
"type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Type"
},
"allow_smoothing": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Allow Smoothing"
}
},
"type": "object",
"title": "TemplateUpdateBody"
}
}
}🔴delete_template(template_id)
Delete a writing template belonging to your team.
Input Schema
{
"type": "object",
"properties": {
"template_id": {
"type": "integer",
"title": "Template Id"
}
},
"required": [
"template_id"
],
"additionalProperties": false,
"$defs": {}
}🟢list_media_lists
List your team's saved media lists.
Input Schema
{
"type": "object",
"properties": {},
"required": [],
"additionalProperties": false,
"$defs": {}
}🟢read_podcast_media_list(body)
Read a podcast media list belonging to your team.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/MediaList",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"MediaList": {
"properties": {
"list_id": {
"type": "integer",
"title": "List Id"
},
"sort_by": {
"type": "string",
"title": "Sort By"
},
"order_by": {
"type": "string",
"title": "Order By"
},
"filter": {
"type": "string",
"title": "Filter"
},
"page": {
"type": "integer",
"title": "Page",
"default": 1
},
"per_page": {
"type": "integer",
"title": "Per Page",
"default": 10
}
},
"type": "object",
"required": [
"list_id"
],
"title": "MediaList"
}
}
}🟢list_excluded_contacts
Read your team's excluded contacts.
Input Schema
{
"type": "object",
"properties": {},
"required": [],
"additionalProperties": false,
"$defs": {}
}🟡exclude_contacts(body)
Add or update your team's contact exclusions.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/ExcludeList",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"ExcludeList": {
"properties": {
"entity_ids": {
"items": {
"type": "string"
},
"type": "array",
"title": "Entity Ids"
},
"team_id": {
"type": "string",
"format": "uuid",
"title": "Team Id"
}
},
"type": "object",
"required": [
"entity_ids",
"team_id"
],
"title": "ExcludeList"
}
}
}🟢list_connected_senders
List connected sender accounts, connection status, and daily capacity. Never returns credentials.
Input Schema
{
"type": "object",
"properties": {},
"required": [],
"additionalProperties": false,
"$defs": {}
}🟢get_pitch_activity(user_id, profile_id, sent_email_id)
Read your team's recent pitch, reply, booking, and open counts.
Input Schema
{
"type": "object",
"properties": {
"user_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "User Id"
},
"profile_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Profile Id"
},
"sent_email_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Sent Email Id"
}
},
"required": [],
"additionalProperties": false,
"$defs": {}
}🟢get_campaign_build_progress(campaign_id)
Read draft generation progress for your team's campaign.
Input Schema
{
"type": "object",
"properties": {
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
}
},
"required": [
"campaign_id"
],
"additionalProperties": false,
"$defs": {}
}🔴rewrite_pitch_drafts(body)
Rewrite saved pitches or apply a template using the existing generation queue and team checks. Does not send emails.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/RewriteEnqueueBody",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"RewriteEnqueueBody": {
"properties": {
"user_emails": {
"anyOf": [
{
"items": {
"type": "string",
"format": "email"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "User Emails"
},
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
},
"campaign_ids": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Campaign Ids"
},
"database": {
"type": "string",
"enum": [
"podcast",
"guest",
"journo",
"journo_v2",
"newsletter",
"substack",
"linkedin_exa",
"linkedin_visitors"
],
"title": "Database"
},
"entity_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Entity Id"
},
"template_id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Template Id"
},
"email_index": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Email Index"
},
"rewrite_stages": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Rewrite Stages"
},
"include_edited": {
"type": "boolean",
"title": "Include Edited",
"default": false
},
"edited": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Edited"
}
},
"type": "object",
"required": [
"campaign_id",
"database"
],
"title": "RewriteEnqueueBody"
}
}
}🔴generate_pitch_drafts(body)
Generate or replace saved pitch drafts for contacts in your campaign using existing limits and team checks. Can overwrite existing draft content, including with rewrite enabled. Read drafts first and obtain approval for replacement. Does not send emails.
Input Schema
{
"type": "object",
"properties": {
"body": {
"$ref": "#/$defs/UnifiedEnqueueRequest",
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false,
"$defs": {
"UnifiedEnqueueRequest": {
"properties": {
"user_emails": {
"anyOf": [
{
"items": {
"type": "string",
"format": "email"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "User Emails"
},
"team_id": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Team Id"
},
"campaign_id": {
"type": "integer",
"title": "Campaign Id"
},
"database": {
"type": "string",
"enum": [
"podcast",
"journo",
"journo_import",
"journo_v2",
"newsletter",
"linkedin_exa",
"linkedin_visitors",
"guest"
],
"title": "Database"
},
"entity_id": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Entity Id"
},
"matches": {
"anyOf": [
{
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Matches"
},
"outlet_source_id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Outlet Source Id"
},
"metadata": {
"anyOf": [
{},
{
"type": "null"
}
],
"title": "Metadata"
},
"lazy_loading": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Lazy Loading",
"default": true
},
"rewrite": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Rewrite",
"default": false
},
"from_monitor": {
"type": "boolean",
"title": "From Monitor",
"default": false
},
"pause_for_review": {
"type": "boolean",
"title": "Pause For Review",
"default": false
}
},
"type": "object",
"required": [
"campaign_id",
"database"
],
"title": "UnifiedEnqueueRequest",
"description": "Unified request schema for all email generation enqueueing"
}
}
}Community
Evidence