Apple Podcasts MCP Server & CLI
A free, open source Apple Podcasts MCP server and CLI that lets Claude Code, Codex, Cursor and other AI agents track chart ranks, read reviews and search your podcast library.
This free Apple Podcasts MCP server and CLI gives your AI real access to Apple Podcasts: its catalog, its charts, listener reviews, any show's RSS feed and your own library. It checks where a show ranks in each country, reads what listeners say, and searches the transcript excerpts Apple keeps for the shows you follow.
It's one install with 2 ways in. Claude, Codex, Cursor or any other MCP app calls its 32 tools for you, and the same tools work as a CLI that agents like Claude Code, Codex and OpenCode run, or that you type yourself.
Here's what the Apple Podcasts MCP server and CLI is, how to set it up in each app, and every tool it has.
What is the Apple Podcasts MCP server & CLI?
The Apple Podcasts MCP server & CLI is a free, open source program that lets AI agents search Apple Podcasts, track chart ranks and read reviews for you, in 2 ways. The MCP server is what an AI app like Claude, Codex or Cursor connects to, through MCP (Model Context Protocol), the open standard AI apps use to call outside tools.
You ask in plain language. Your AI picks the right tool, and the server makes the call to Apple, or reads your library right on your Mac.
The CLI is the same program as commands. apple-podcasts-cli find-chart-position --show 1200361736 runs the same code your AI runs when you ask where a show ranks, whether an agent like Claude Code runs it or you do.
What can you ask it?
Once it's set up, you ask the way you'd ask an assistant. These are real prompts it handles:
Try askingWhere does this show rank in the US, UK and Sweden, and where is it strongest?
What are people complaining about in the reviews of my competitor's show?
Which episode was that thing about compound interest I heard a while back?
Compare these four shows on rank, ratings and how often they publish.
Is my podcast feed missing anything Apple requires?
How many people played my episodes last week, and which one won?
The third one shows why this is useful. Apple caches a transcript excerpt for nearly every episode of every show you follow, and this lets your AI search them, so "where did I hear that" finally has an answer.
How to install the Apple Podcasts MCP server
Pick your app in the box at the top of this page. Each one is a single command or a pasted block, and most of the tools need no account or key.
Pro tip: Most of this works the moment it's installed, because Apple's catalog, charts, reviews and every podcast RSS feed are open. Skip the next section until you want your library or your own show's numbers.
Set up your library and analytics
Nothing here is required. Each part is only for when you want it.
Read your own library
Your Podcasts library lives in a protected folder, so the app that runs the server needs Full Disk Access, once.
The library tools only exist on a Mac. On Windows and Linux the other 25 tools work as usual.
Add your show's analytics
This part is only for a show you own, and it's the one part with credentials.
APPLE_PODCASTS_VENDOR_NUMBER and APPLE_PODCASTS_REPORTER_TOKEN.The token expires after 180 days, and you make a new one in Podcasts Connect. The doctor tells you when it stops working.
Check that it works
Run the doctor. It checks each source on its own and names the one that fails, rather than leaving you with a vague error.
npx -y @thenavidm/apple-podcasts-mcp-cli doctorIt also says whether your library holds any play data. On a Mac it usually doesn't, because listening progress stays on the device you listen on.
Use the Apple Podcasts CLI
The CLI is the same 32 tools as commands. AI agents that run commands, like Claude Code, Codex and OpenCode, use it on their own, and you can type the same commands in a terminal or a script.
Every tool name becomes a command with dashes, so find_chart_position runs as apple-podcasts-cli find-chart-position.
npm install -g @thenavidm/apple-podcasts-mcp-cli
apple-podcasts-cli
apple-podcasts-cli get-top-shows --limit 5
apple-podcasts-cli find-chart-position --show 1200361736 --storefronts us --storefronts gb
apple-podcasts-cli search-library --query "compound interest"The bare apple-podcasts-cli lists every command, and apple-podcasts-cli <command> --help shows what a command takes. The OPML export asks for --confirm first, like it does for your AI.
These flags work on every command:
| Flag | What it does |
|---|---|
--json | Prints JSON |
--compact | Prints the JSON on one line |
--agent | Machine mode: JSON, compact, no prompts and no color |
--select a,b.c | Keeps only those fields, and a dotted path goes deeper |
--confirm | Lets a write that asks first go ahead |
A script can branch on the exit code:
| Exit code | What it means |
|---|---|
| 0 | It worked |
| 2 | The command was typed wrong, or a write needed --confirm |
| 3 | It wasn't found |
| 4 | Apple Podcasts rejected the credentials |
| 5 | Apple Podcasts's API failed |
| 7 | You hit a rate limit, so wait and try again |
| 10 | Nothing is set up yet |
MCP server or CLI: which one?
Both are the same program with the same 32 tools. The difference is when your AI pays for them, in the tokens it reads.
- MCP server
- 13,800 tokens
- CLI
- Nothing
- MCP server
- 1,200 tokens
- CLI
- Nothing
- MCP server
- Nothing more, or in Claude Code the tools it picks
- CLI
- 4,300 tokens, once
- MCP server
- 275,000 tokens
- CLI
- 4,300 tokens
- MCP server
- Yes
- CLI
- No, there's no terminal there
- MCP server
- No
- CLI
- Yes
An app that loads every tool up front sends the full list with every message, whether you mention Apple Podcasts or not. Claude Code doesn't by default: its tool search sends only the tool names and the server's instructions, and loads a tool's full definition when your AI reaches for it.
The CLI costs nothing until Apple Podcasts comes up. Then your agent reads its skill file once and runs the commands it needs. With the skill added, Claude Code also lists its one-line description with every message, about 190 tokens.
When the whole conversation is about Apple Podcasts, the gap closes. Then the MCP server is the better experience, because you ask in plain language and your AI never has to look up a command.
How to spend less
In Claude Code, leave tool search on, which it is unless you've set ENABLE_TOOL_SEARCH=false.
Turn the server off when you aren't using it, with your AI app's own switch. APPLE_PODCASTS_LIBRARY=0 also takes the 7 library tools off the list.
Or install the CLI and connect the server later, on the days it earns its place. Every tool stays in reach, and the standing cost drops to nothing.
Every number here was measured on September 27, 2026 in Claude Code 2.1.257 with Claude Opus 5. It's the same one-line prompt with and without the server connected, once with tool search off so every tool loads, and once with Claude Code's default. The skill was measured the same way, and other apps and models count tokens a little differently.
What Apple Podcasts actually does
Apple Podcasts isn't one API. It's several sources that share a brand, and 3 of them need nothing at all, which is why most tools work the moment it's installed.
- Who can reach it
- Anyone
- What it needs
- Nothing
- What it's good for
- Finding shows and researching competitors
- Who can reach it
- Anyone
- What it needs
- Nothing
- What it's good for
- Ranks and what listeners say
- Who can reach it
- Anyone
- What it needs
- Nothing
- What it's good for
- The full backlog and real transcripts
- Who can reach it
- This Mac
- What it needs
- Full Disk Access
- What it's good for
- Your subscriptions and cached transcripts
- Who can reach it
- A show you own
- What it needs
- A vendor number and token
- What it's good for
- Plays, followers and per-episode listening
Every country gives a different answer
The catalog, the charts and the reviews are all separate per country. An empty result in one country doesn't mean a show doesn't exist, so every answer says which country it came from.
The charts stop at 100
Apple publishes a top 100 per country, and there are no genre charts. A genre filter narrows the overall chart, and a show outside the top 100 has no rank to report.
Only published transcripts are readable
A show can link a full transcript in its RSS feed, and find_transcripts lists those, but most shows publish none. Apple's own transcripts in the app are locked, so search_library searches the short excerpts Apple caches for the shows you follow.
Your listening history stays on your phone
On a library synced from an iPhone, the play counts are zero, because progress is tracked on the device that played the episode. The tools say so rather than guessing what you've heard.
Analytics lag and count devices
Podcasts Connect reports run 1 to 2 days behind, so the analytics tools default to 3 days back. Listener counts are devices, not people, so one person on a phone and a HomePod counts twice.
Every Apple Podcasts tool
All 32 tools, grouped the way the repo groups them. 31 only read, and one saves a file on your computer.
Start here
status- What it does
- Report which of the four Apple Podcasts sources are available right now: the public catalog, charts and reviews, the local library on this Mac, and Apple Podcasts Connect analytics.
- Kind
- Reads
Catalog
search_podcasts- What it does
- Search Apple's podcast catalog for shows by name, topic, host or keyword.
- Kind
- Reads
search_episodes- What it does
- Search Apple's catalog for individual episodes across all shows.
- Kind
- Reads
get_podcast- What it does
- Full catalog record for one show: name, author, genres, episode count, latest release date, artwork and its RSS feed URL.
- Kind
- Reads
get_podcast_episodes- What it does
- Recent episodes for a show from Apple's catalog, newest first.
- Kind
- Reads
list_genres- What it does
- Apple's podcast categories and their numeric ids, fetched live rather than hardcoded.
- Kind
- Reads
resolve_apple_link- What it does
- Take an Apple Podcasts URL someone pasted and return the show id, the episode id when the link points at one, and the storefront the link came from.
- Kind
- Reads
Charts and ranking
get_top_shows- What it does
- Apple's live Top Shows chart for one storefront, ranked.
- Kind
- Reads
get_trending_episodes- What it does
- Apple's live Trending Episodes chart for one storefront.
- Kind
- Reads
find_chart_position- What it does
- Find where one show sits in Apple's Top Shows chart, in one storefront or swept across several.
- Kind
- Reads
list_storefronts- What it does
- The storefronts this server sweeps by default, and the configured default.
- Kind
- Reads
Reviews
get_reviews- What it does
- Recent listener reviews for a show, with rating, title and full text.
- Kind
- Reads
get_review_summary- What it does
- Rating counts and averages for a show, per storefront and combined, without returning the review text.
- Kind
- Reads
Feeds
get_feed- What it does
- Fetch and parse a show's RSS feed: the channel metadata and its episodes, newest first.
- Kind
- Reads
get_feed_episode- What it does
- Find one episode in a show's feed by title, guid or episode number, and return it with its complete show notes, audio URL, chapters and transcripts.
- Kind
- Reads
find_transcripts- What it does
- List episodes of a show that publish a transcript in their feed, with the URL, format and language of each.
- Kind
- Reads
check_feed- What it does
- Check a podcast's RSS feed against what Apple actually requires and warn about what will cost the show later.
- Kind
- Reads
Research
get_show_profile- What it does
- A complete picture of one show: its catalog record, where it ranks across storefronts, what listeners are saying and how they rate it, how often it publishes, and whether it offers transcripts.
- Kind
- Reads
compare_shows- What it does
- Put two or more shows next to each other on the numbers that matter: chart rank, review sentiment, catalogue size and publishing cadence.
- Kind
- Reads
find_similar_shows- What it does
- Find shows adjacent to a given one, by searching its genre and its own subject matter and removing itself from the results.
- Kind
- Reads
Your library
list_subscriptions- What it does
- Every podcast in the Apple Podcasts library on this Mac, followed shows first.
- Kind
- Reads
search_library- What it does
- Keyword search across every episode of every show in your library: titles, show notes, and the transcript excerpts Apple has cached.
- Kind
- Reads
list_recent_episodes- What it does
- The most recently published episodes across the shows you follow, newest first.
- Kind
- Reads
list_saved_episodes- What it does
- Episodes flagged in the Podcasts app: saved, bookmarked, or downloaded to this Mac.
- Kind
- Reads
get_library_episode- What it does
- One episode by its local id, with complete show notes and the whole cached transcript excerpt rather than a trimmed one.
- Kind
- Reads
library_stats- What it does
- Counts for the local library: shows, followed shows, episodes, how many carry a cached transcript excerpt, and how many are saved, bookmarked or downloaded.
- Kind
- Reads
export_subscriptions- What it does
- Write the shows you follow to an OPML file, the format every podcast app imports.
- Kind
- Asks first
Your show's analytics
check_analytics_access- What it does
- Verify the Apple Podcasts Connect credentials and list the vendor numbers this access token can read.
- Kind
- Reads
get_show_analytics- What it does
- Plays and listener counts for your show over one reporting period, from Apple Podcasts Connect.
- Kind
- Reads
get_episode_analytics- What it does
- Plays and listener counts per episode for one reporting period, ranked.
- Kind
- Reads
get_followers- What it does
- Follower numbers for your show across a reporting period, from Apple's content performance report.
- Kind
- Reads
get_analytics_report- What it does
- Fetch any Apple Podcasts Connect listening report by name and return its columns and rows unchanged.
- Kind
- Reads
Is the Apple Podcasts MCP server safe?
There's almost nothing to guard, because Apple Podcasts has no write API and this server doesn't invent one. Of 32 tools, 31 only read.
The one that writes, export_subscriptions, saves your subscriptions as an OPML file, so it asks for a confirm check first, marked Asks first in the tool tables above.
Make it read-only
Set APPLE_PODCASTS_READ_ONLY=1 and the OPML export disappears from the tool list. To keep your subscriptions out of it too, set APPLE_PODCASTS_LIBRARY=0, which removes the 7 library tools.
Keep a log of every write
Set APPLE_PODCASTS_AUDIT_LOG to a file path. The server writes one line per attempted write, allowed or blocked.
Watch out: Reviews, show notes and transcript excerpts are text other people wrote. The server marks them as data before your AI reads them, but for an agent working on its own, APPLE_PODCASTS_READ_ONLY=1 is the real defense.
Your data
There's no server of ours in between. Requests go straight from your computer to Apple and to podcast hosts, and nothing is collected.
Your library is read from the Podcasts app's own folder, read-only, and never written. Apple Podcasts Connect details stay in your app's config, and chart and catalog answers live in memory for 5 minutes.
Apple Podcasts MCP server settings
Every setting is optional, as an environment variable in your app's config.
APPLE_PODCASTS_STOREFRONT- Default
us- What it does
- Sets the country used when a tool names none
APPLE_PODCASTS_STOREFRONTS- Default
us,gb,ca,au,ie,se,de,nl- What it does
- Sets the countries the cross-country tools check
APPLE_PODCASTS_LIBRARY- Default
1- What it does
0removes every library tool
APPLE_PODCASTS_LIBRARY_PATH- Default
- the app's own
- What it does
- Points at a Podcasts library somewhere else
APPLE_PODCASTS_VENDOR_NUMBER- Default
- none
- What it does
- Holds your Apple Podcasts Connect vendor number
APPLE_PODCASTS_REPORTER_TOKEN- Default
- none
- What it does
- Holds your Reporter access token, which expires after 180 days
APPLE_PODCASTS_READ_ONLY- Default
0- What it does
1hides the one tool that writes a file
APPLE_PODCASTS_ALLOW_DESTRUCTIVE- Default
1- What it does
0blocks the OPML export
APPLE_PODCASTS_AUDIT_LOG- Default
- off
- What it does
- Logs every attempted write to a file
APPLE_PODCASTS_CACHE_TTL_MS- Default
300000- What it does
- Sets how long a fetched answer is reused
APPLE_PODCASTS_REQUEST_TIMEOUT_MS- Default
30000- What it does
- Sets how long one request may take
APPLE_PODCASTS_MIN_REQUEST_INTERVAL_MS- Default
220- What it does
- Spaces out requests to stay under Apple's limit
APPLE_PODCASTS_MAX_RETRIES- Default
3- What it does
- Sets how often a failed request is retried
Troubleshooting
Run the doctor first. It names the step that failed and the fix.
| What you see | What to do |
|---|---|
| Every library tool fails on permissions | Turn on Full Disk Access for the app that runs the server, then quit it with Cmd+Q |
| The library tools are missing | APPLE_PODCASTS_LIBRARY is 0, or you're not on a Mac |
| "Apple is rate limiting this IP" | Apple allows about 20 requests a minute. Wait a minute, and ask for a profile or a comparison instead of one show at a time |
| A show you know exists isn't found | It may not be published in that country. Try another storefront, like gb |
| A show is unranked everywhere | Apple only publishes the top 100 per country |
find_transcripts returns nothing | The show publishes no transcript. Apple's own are locked inside the app |
| Analytics say "no report available" | Reports run 1 to 2 days behind. Try a date 3 or 4 days back |
| Analytics reject the token | Tokens expire after 180 days. Make a new one in Podcasts Connect |
If the server doesn't show up in your app at all, run the command your app runs, in a terminal, and read the error.
More free tools for your podcast
Tag the links in your show notes so you can see which episode sent people, or make a QR code that opens your show.
Apple Podcasts MCP Server FAQs
Here are the questions people ask most about the Apple Podcasts MCP server and CLI.
The Apple Podcasts MCP server & CLI is a free, open source program that lets an AI app like Claude, Codex or Cursor search Apple Podcasts, track chart ranks and read reviews.
It has 32 tools for podcast search, chart ranks, reviews, RSS feeds, your own library and Apple Podcasts Connect analytics, and the same tools run as a CLI that agents like Claude Code and Codex use, or that you type yourself.
An MCP server is a standard way to give an AI app real access to a tool, so it can act instead of guessing.
MCP stands for Model Context Protocol, and Claude, Codex, Cursor and many other AI apps speak it.
The Apple Podcasts CLI is the same program as the Apple Podcasts MCP server, run as commands.
AI agents like Claude Code, Codex and OpenCode run them for you, and you can type them in a terminal or a script.
Use the Apple Podcasts MCP server in an AI app with no terminal, like Claude Desktop's chat, and the CLI in a terminal, a script or a cron job.
In an AI app that can run commands, like Claude Code, Codex or Cursor, the CLI is the lighter choice, because it costs nothing until it runs.
Yes, the Apple Podcasts MCP server is free and open source under the MIT license.
Most of its tools need no account, and the only thing you pay for is your own AI app.
No, most of the Apple Podcasts MCP server needs no account at all.
Only the 5 analytics tools need Apple Podcasts Connect details, and only for a show you own.
The Apple Podcasts MCP server reads the transcripts shows publish in their RSS feed, and most shows publish none.
Apple's own transcripts are locked inside the app, so it searches the short excerpts Apple caches for the shows you follow.
Yes, the Apple Podcasts MCP server works on Windows and Linux, except for the 7 library tools.
Those read the Podcasts app's library, which only exists on a Mac.
Apple's catalog, charts and reviews are separate in every country, so the same show ranks differently in each.
Every answer says which country it came from, and an empty result in one country doesn't mean the show doesn't exist.
The Apple Podcasts MCP server works with any app that speaks MCP.
That includes Claude Code, Claude Desktop, Codex, Cursor, VS Code, GitHub Copilot CLI, Gemini CLI, OpenCode, OpenClaw, Antigravity and Hermes.
Navid.me is reader-supported. When you buy through links on this site, I may earn an affiliate commission. Learn more.
More MCP servers & CLIs
The most actionable AI newsletter for founders
Every week, get proven AI strategies, curated tools, and step-by-step systems to grow your audience, create better content, and build a profitable creator business.
No fluff, no filler, no BS. Just five minutes each week that might level up your online business and life.
P.S. Sign up now to get free access to my ultimate AI tools guide for creators.


