Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
vm0-ai avatar

Podchaser

  • 92 installs
  • 76 repo stars
  • Updated August 4, 2026
  • vm0-ai/vm0-skills

Helps with ai & agent building tasks during AI-assisted development.

About

podchaser is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted coding.

  • podchaser
  • AI & Agent Building
  • AI-coding skill

Podchaser by the numbers

  • 92 all-time installs (skills.sh)
  • +1 installs in the week ending Jul 27, 2026 (Skillselion tracking)
  • Ranked #4,740 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/vm0-ai/vm0-skills --skill podchaser

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs92
repo stars76
Last updatedAugust 4, 2026
Repositoryvm0-ai/vm0-skills

What it does

Helps with ai & agent building tasks during AI-assisted development.

Files

SKILL.mdMarkdownGitHub ↗

Troubleshooting

If requests fail, run zero doctor check-connector --env-name PODCHASER_TOKEN or zero doctor check-connector --url https://api.podchaser.com/graphql --method POST

How to Use

1. Search Podcasts

Search for podcasts by keyword:

Write to /tmp/podchaser_request.json:

{
  "query": "{ podcasts(searchTerm: \"technology\", first: 5) { paginatorInfo { count } data { id title description author { name } } } }"
}

Then run:

curl -s -X POST "https://api.podchaser.com/graphql" --header "Content-Type: application/json" --header "Authorization: Bearer $PODCHASER_TOKEN" -d @/tmp/podchaser_request.json

3. Get Podcast Details

Get detailed information about a specific podcast by ID:

Note: The type field is required in the identifier. Use PODCHASER for Podchaser IDs, APPLE_PODCASTS for Apple IDs, or SPOTIFY for Spotify IDs.

Write to /tmp/podchaser_request.json:

{
  "query": "{ podcast(identifier: { id: \"717178\", type: PODCHASER }) { id title description url imageUrl language ratingAverage ratingCount author { name } categories { title } } }"
}

Then run:

curl -s -X POST "https://api.podchaser.com/graphql" --header "Content-Type: application/json" --header "Authorization: Bearer $PODCHASER_TOKEN" -d @/tmp/podchaser_request.json

4. Search Episodes

Search for episodes across all podcasts:

Write to /tmp/podchaser_request.json:

{
  "query": "{ episodes(searchTerm: \"AI\", first: 5) { paginatorInfo { count } data { id title description airDate length podcast { title } } } }"
}

Then run:

curl -s -X POST "https://api.podchaser.com/graphql" --header "Content-Type: application/json" --header "Authorization: Bearer $PODCHASER_TOKEN" -d @/tmp/podchaser_request.json

5. Get Podcast Episodes

Get episodes for a specific podcast:

Write to /tmp/podchaser_request.json:

{
  "query": "{ podcast(identifier: { id: \"717178\", type: PODCHASER }) { id title episodes(first: 10) { data { id title description airDate length } } } }"
}

Then run:

curl -s -X POST "https://api.podchaser.com/graphql" --header "Content-Type: application/json" --header "Authorization: Bearer $PODCHASER_TOKEN" -d @/tmp/podchaser_request.json

6. Get Episode Details

Get detailed information about a specific episode:

Write to /tmp/podchaser_request.json:

{
  "query": "{ episode(identifier: { id: \"789012\", type: PODCHASER }) { id title description airDate length url imageUrl podcast { id title } } }"
}

Then run:

curl -s -X POST "https://api.podchaser.com/graphql" --header "Content-Type: application/json" --header "Authorization: Bearer $PODCHASER_TOKEN" -d @/tmp/podchaser_request.json

7. Get Podcast Categories

Categories are available as a field on podcast objects. Get categories for a specific podcast:

Write to /tmp/podchaser_request.json:

{
  "query": "{ podcast(identifier: { id: \"717178\", type: PODCHASER }) { title categories { title slug } } }"
}

Then run:

curl -s -X POST "https://api.podchaser.com/graphql" --header "Content-Type: application/json" --header "Authorization: Bearer $PODCHASER_TOKEN" -d @/tmp/podchaser_request.json

8. Filter Podcasts by Category

Get podcasts in a specific category:

Write to /tmp/podchaser_request.json:

{
  "query": "{ podcasts(filters: { categories: [\"technology\"] }, first: 10) { data { id title description ratingAverage } } }"
}

Then run:

curl -s -X POST "https://api.podchaser.com/graphql" --header "Content-Type: application/json" --header "Authorization: Bearer $PODCHASER_TOKEN" -d @/tmp/podchaser_request.json

9. Get Chart Rankings

Get Apple Podcasts chart data:

Write to /tmp/podchaser_request.json:

{
  "query": "{ podcasts(filters: { hasAppleChartRank: true }, sort: { sortBy: APPLE_CHART_RANK, direction: ASC }, first: 10) { data { id title appleChartRank } } }"
}

Then run:

curl -s -X POST "https://api.podchaser.com/graphql" --header "Content-Type: application/json" --header "Authorization: Bearer $PODCHASER_TOKEN" -d @/tmp/podchaser_request.json

10. Get Creator/Host Information

Search for podcast creators:

Write to /tmp/podchaser_request.json:

{
  "query": "{ creators(searchTerm: \"Joe Rogan\", first: 5) { data { pcid name bio credits { data { podcast { title } } } } } }"
}

Then run:

curl -s -X POST "https://api.podchaser.com/graphql" --header "Content-Type: application/json" --header "Authorization: Bearer $PODCHASER_TOKEN" -d @/tmp/podchaser_request.json

11. Preview Query Cost

Check how many points a query will cost before executing:

Write to /tmp/podchaser_request.json:

{
  "query": "{ podcasts(searchTerm: \"tech\", first: 10) { data { id title description episodes(first: 5) { data { id title } } } } }"
}

Then run:

curl -s -X POST "https://api.podchaser.com/graphql/cost" --header "Content-Type: application/json" --header "Authorization: Bearer $PODCHASER_TOKEN" -d @/tmp/podchaser_request.json

GraphQL Schema Reference

Main Queries

QueryDescription
podcast(identifier: {id: "...", type: PODCHASER})Get single podcast by ID
podcasts(searchTerm: "...", first: N)Search podcasts
episode(identifier: {id: "...", type: PODCHASER})Get single episode by ID
episodes(searchTerm: "...", first: N)Search episodes
creators(searchTerm: "...", first: N)Search creators/hosts
networks(searchTerm: "...", first: N)Search podcast networks
chartCategories(platform: APPLE_PODCASTS)List chart categories (requires paid plan)

Identifier Types

The type field is required when using identifier to fetch a podcast or episode:

TypeDescription
PODCHASERPodchaser internal ID
APPLE_PODCASTSApple Podcasts ID
SPOTIFYSpotify ID

Podcast Fields

FieldTypeDescription
idIDUnique identifier
titleStringPodcast title
descriptionStringPodcast description
urlStringPodcast website URL
imageUrlStringCover art URL
languageStringPrimary language
ratingAverageFloatAverage user rating
ratingCountIntNumber of ratings
authorCreatorPodcast author/creator
categories[Category]Associated categories
episodes(first: N)EpisodeListPodcast episodes (paginated)

Episode Fields

FieldTypeDescription
idIDUnique identifier
titleStringEpisode title
descriptionStringEpisode description
airDateDatePublication date
lengthIntDuration in seconds
urlStringEpisode URL
imageUrlStringEpisode artwork URL
podcastPodcastParent podcast

Creator Fields

FieldTypeDescription
pcidStringUnique identifier
nameStringCreator name
bioStringBiography
imageUrlStringProfile image URL
creditsCreditListPodcast appearances

Filter Options

FilterValues
categoriesCategory slugs
languageISO language codes
hasAppleChartRankBoolean
hasSpotifyChartRankBoolean

Sort Options

sortByDescription
RELEVANCESearch relevance
POPULARITYOverall popularity
RATINGUser rating
APPLE_CHART_RANKApple ranking
SPOTIFY_CHART_RANKSpotify ranking
LATEST_EPISODEMost recent episode

Rate Limits

  • Request Limit: 50 requests per 10 seconds
  • Points System: Query cost based on fields returned
  • Response Headers:
  • X-Podchaser-Points-Remaining: Available points
  • X-Podchaser-Query-Cost: Points consumed

Example costs:

  • Basic podcast metadata: ~9 points
  • Search 10 podcasts with details: ~100 points

Guidelines

1. Store Access Token: Tokens last 1 year, avoid requesting new tokens for each query 2. Preview Costs: Use /graphql/cost endpoint to estimate query cost before execution 3. Use Limited Scope: For client-side apps, request tokens with limited_scope: true (1 hour expiry) 4. Optimize Queries: Request only needed fields to minimize points consumption 5. Handle Rate Limits: Check Retry-After header on 429 responses 6. Security: Never expose regular access tokens in client-side code

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.