Pokémon TCG catalog API

Every printing.
In 14 languages.

The card data other APIs skip: Korean, Thai, Indonesian and both Chinese catalogs, with every printing from 1st Edition to stamped promos. JSON over HTTPS and MCP.

Get a free keyRead the docsno card · one request
api.master-setter.com

    
199,314cards
276,657printings
1,821sets
14languages
Coverage

The deepest Asian catalogs anywhere.

Cards actually present, by language, with names in each card's own script. Highlighted languages are ones the other paid Pokémon APIs don't carry at all.

Browse every language → Plus small Polish and Dutch sets. Counts updated October 12, 2026. Non-English data is on the Indie plan and up.

Pricing

Start free. Scale when it works.

Upgrading keeps the same key, so nothing in your code changes. Cancel anytime from the billing portal.

Free

$0
250 requests / mo
  • English cards & sets
  • Other languages
  • Printings / variants
  • Card images
Personal use only
MOST POPULAR

Indie

$29/mo
50,000 requests / mo
  • All 14 languages
  • Every printing, inline per set
  • Card images
  • Commercial use
For apps & stores

Studio

$99/mo
500,000 requests / mo
  • Everything in Indie
  • Card images, 98% coverage
  • Images for every printing
  • Commercial use
For marketplaces

Bulk

Custom
Uncapped
  • Everything in Studio
  • Volume pricing
  • Direct support
  • Commercial use

Get a free key

English cards, 250 requests a month. Returned instantly, shown once.


    

Upgrade your key

Paste your key, pick a plan, pay on Stripe. The new limit applies within a minute.


    
Quickstart

Two requests to your first card.

Get a key, then call it. Every list is paginated and every response says when the data was read.

# 1. a free key (English, personal use)
curl -X POST https://api.master-setter.com/v1/keys \
  -H "Content-Type: application/json" \
  -d '{"email":"you@example.com","personal_use":true}'

# 2. English sets, newest first
curl -H "Authorization: Bearer $KEY" \
  "https://api.master-setter.com/v1/sets?lang=en&limit=5"

# one card with every printing (Indie+)
curl -H "Authorization: Bearer $KEY" \
  "https://api.master-setter.com/v1/cards?id=en-base1-4"

# a whole Japanese set with every printing inline (Indie+)
curl -H "Authorization: Bearer $KEY" \
  "https://api.master-setter.com/v1/cards?set=ja-sv4a&include=variants&limit=200"
const r = await fetch("https://api.master-setter.com/v1/cards?set=en-base1", {
  headers: { Authorization: `Bearer ${process.env.MS_API_KEY}` },
});
const { data, pagination } = await r.json();
// data[0] → { id: "en-base1-1", name: "Alakazam", number: "1", ... }
import os, requests

r = requests.get("https://api.master-setter.com/v1/sets",
    params={"lang": "en"},
    headers={"Authorization": f"Bearer {os.environ['MS_API_KEY']}"})
print(r.json()["data"][0])
# remote MCP server: search_cards, get_card, list_cards_in_set, list_sets, get_set, get_api_key
claude mcp add --transport http master-setter https://api.master-setter.com/mcp \
  --header "Authorization: Bearer $KEY"

// Cursor: ~/.cursor/mcp.json
{ "mcpServers": { "master-setter": {
    "url": "https://api.master-setter.com/mcp",
    "headers": { "Authorization": "Bearer YOUR_KEY" } } } }
Endpoints
POST/v1/keysFree key, active once you verify your email
GET/v1/sets?lang=enSets for a language, newest first, paginated
GET/v1/sets?id=ko-sv4aOne set, with card_count from the cards actually present
GET/v1/cards?id=en-base1-4One card with all of its printings
GET/v1/cards?set=…&include=variantsA whole set by number, printings inline (Indie+)
GET/v1/cards?q=…&lang=…Name search, in each card's own language
GET/v1/cards?name_en=charizard&lang=koFind a Pokémon in any language by its English name
POST/v1/billingUpgrade the same key, or open the billing portal
Questions

Straight answers.

Which Pokémon card API has Korean cards?

This one has 16,778 Korean cards across 234 sets, about twice the next-largest public source. The paid Pokémon APIs we've checked cover English and Japanese, and one adds Chinese; none has Korean.

Is there a Pokémon API for Thai or Indonesian cards?

Yes: 11,853 Thai cards (95 sets) and 11,937 Indonesian cards (94 sets), with names in Thai and Indonesian. Non-English data is on the Indie plan and up.

Does it cover Japanese and Chinese?

22,164 Japanese cards, 13,127 Traditional Chinese and 6,946 Simplified Chinese.

What's a "printing"?

One card in one language, finish and set: 1st Edition vs Unlimited, holo vs reverse holo, stamped promos. We model 276,657 of them, because that's what a scanner resolves and a collector actually owns.

Is it free?

250 requests a month of English cards free, for personal, non-commercial use (terms). Business use, other languages, printings and images are on paid plans.

Can I use it in a business?

Yes, on any paid plan. The free tier is personal, non-commercial use only; see the API terms.

Does it include card images?

Yes, on the Studio plan: image URLs for 98% of cards and their printings.

Does it include prices?

Not yet. Price data is coming as a paid add-on.