POKEKA — Pokémon Card Prices
by pokeka.xyz · remote · no sign-in to list tools · v1.0.0 · published by xyz.pokeka
Real sold prices, history & PSA population for graded Pokémon cards (EN/JP/CN). Knows nicknames.
14 tools: 9 change things and 5 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things9Claude Code: ask: see these tools
- Only reads5Claude Code: allow: see these tools
4 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http card-prices https://pokeka.xyz/mcpFindings
Matches of fixed checks, with the text they matched.
The server marks "get_account_access" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":false}; The name "get_account_access" says "get": a word for reading.
The server marks "set_top_priced_cards" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "set_top_priced_cards" says "set": a word for a change.
The server marks "set_species_summary" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "set_species_summary" says "set": a word for a change.
The description mentions "credentials".
What this check looks forMatched text
description: "...r and connection-management link, never credentials or personal identifiers. Does not purch..."
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
14 tools
Changes things 9Claude Code: ask
card_popGraded population for one card: PSA population by grade (total / 10 / 9 / 8), CCIC population (total / 10 / 9.5 / 9), PSA gem rate and scarcity tier when available.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Graded population for one card: PSA population by grade (total / 10 / 9 / 8), CCIC population (total / 10 / 9.5 / 9), PSA gem rate and scarcity tier when available. Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
card_priceUse when the user asks what a card is worth, its PSA 10 / PSA 9 / CCIC 10 price, current market value, or what it last sold for.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use when the user asks what a card is worth, its PSA 10 / PSA 9 / CCIC 10 price, current market value, or what it last sold for. Returns a headline price (USD/CNY/JPY) from verified real sales (robust median — never listings, never interpolated) with grading company, grade, sample size, window and confidence, plus a per-grade ladder (PSA 10/9/8, CCIC, BGS, CGC …). Pass company + grade to price a specific grade (e.g. company "PSA", grade "9"); if that grade has no data the response says price_status "grade_not_available" and does NOT fall back to PSA 10. price_status "reference_only" = low confidence or thin sample — quote it with that caveat (safe_to_quote=false). "card_not_found" = wrong id, search again. One price per card and grade, pooled from verified sales on every marketplace we track (US, Japan, China); price_cny / price_jpy are that price converted at the daily FX rate, not prices observed in a domestic market. The marketplace of each sale is listed in recent_sales. Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
card_price_historyWeekly median price series for one card (representative grade, up to 26 weeks) plus 30d/90d change percentages (only shown when statistically confident).No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Weekly median price series for one card (representative grade, up to 26 weeks) plus 30d/90d change percentages (only shown when statistically confident). Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
get_account_accessConnect the user's existing POKEKA account or check its current access permissions.2 findings
Why it is in this group
- The name "get_account_access" says "get": a word for reading.
- The server marks it as not read-only (readOnlyHint: false).
Findings
- Info
The description mentions "credentials".
What this check looks forMatched text
description: "...r and connection-management link, never credentials or personal identifiers. Does not purch..."
- Warn
The server marks "get_account_access" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":false}; The name "get_account_access" says "get": a word for reading.
Description, as the server wrote it Connect the user's existing POKEKA account or check its current access permissions. Use when the user explicitly asks to connect, sign in, or check their POKEKA account access (连接账号、登录、查看账号权限). Requires POKEKA OAuth; if not connected, return the account-linking challenge and retry after authorization. Public card and market queries do not require this tool. Returns the existing access tier and connection-management link, never credentials or personal identifiers. Does not purchase or change a plan. Calls update token activity and may record internal usage statistics.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- openWorldHint: false
market_moversUse when the user asks which Pokémon cards are rising or falling, what is hot, or the biggest moves this week/month.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use when the user asks which Pokémon cards are rising or falling, what is hot, or the biggest moves this week/month. lang = "en" / "ja" / "zh-cn" (market tracks never mix). direction = "up" (cards rising) or "down" (cards falling), default "up". window = "7d" / "30d" / "90d"; omit to use the default window published for that track. Every row passes a liquidity gate — at least 5 verified sales in both the current and the base window, change capped at ±40%, both medians consistent with the card's reference price — and carries price_now / price_base / n_cur / n_prev, so a listed move is a real same-card, same-grade move. Up to 20 cards. Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
market_volume_leadersMost-traded graded Pokémon cards by verified sales count over a 24h / 7d / 30d window, filterable by language track (all / en / ja / zh-cn) and grading company (all / PSA / CCIC / …No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Most-traded graded Pokémon cards by verified sales count over a 24h / 7d / 30d window, filterable by language track (all / en / ja / zh-cn) and grading company (all / PSA / CCIC / PSA10). Windows anchor to the latest sale date on record (anchor_date in the response) — always present results with that date. median_usd is a mixed-grade reference; use card_price for a precise per-grade quote. Up to 50 leaders. Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
recent_salesMost recent verified sales for one card (up to 10): date, grading company + grade, price in USD, marketplace name.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Most recent verified sales for one card (up to 10): date, grading company + grade, price in USD, marketplace name. Sales span US, Japan-domestic and Chinese marketplaces — each sale is a real completed transaction, not a listing. Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
set_species_summaryPer-Pokémon breakdown for one set: how many card faces each species has and how they split across variants (base / Master Ball / Poké Ball / …).1 finding
Why it is in this group
- The name "set_species_summary" says "set": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "set_species_summary" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "set_species_summary" says "set": a word for a change.
Description, as the server wrote it Per-Pokémon breakdown for one set: how many card faces each species has and how they split across variants (base / Master Ball / Poké Ball / …). 中文用户: 这个系列里每只宝可梦有几张卡、各是什么版本(普卡/大师球闪/精灵球闪)一表拿全。Answers "which Pokémon has the most versions in this set". Counts are catalog facts, NOT pull-rate probabilities. Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
set_top_priced_cardsRank the highest-priced cards inside one Pokémon TCG set, on one language track (top N, max 20).1 finding
Why it is in this group
- The name "set_top_priced_cards" says "set": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "set_top_priced_cards" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "set_top_priced_cards" says "set": a word for a change.
Description, as the server wrote it Rank the highest-priced cards inside one Pokémon TCG set, on one language track (top N, max 20). 中文用户: 某个系列里最贵的前几张卡(如「M2A 前5最高价的卡」「151c 最贵的卡」)一次拿到, 不用逐张查价。Answers "most expensive / top 5 priciest cards in m2a". Each row carries exactly the price card_price returns for that card_id (its headline grade, usually PSA 10 or CCIC 10) with price_basis = verified_sales or reference. Cards with no usable price are not ranked, and the response says how many cards in the set have one. Returns only the top of the ranking — it is not a price-sorted checklist and has no paging. Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
Only reads 5Claude Code: allow
get_card_contextEverything around one card beyond the price: community nicknames (圈内叫法), counterfeit-risk flags with self-check steps, holder-turnover tier (locked vs high-churn), and a curated co…No findings
Why it is in this group
- The name "get_card_context" says "get": a word for reading.
Description, as the server wrote it Everything around one card beyond the price: community nicknames (圈内叫法), counterfeit-risk flags with self-check steps, holder-turnover tier (locked vs high-churn), and a curated context note — plus the headline price. Accepts card_id or an exact nickname via query (e.g. "凡高皮", "金拱门"). Absence of flags is not a clearance; coverage is curated and growing. Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
get_market_briefWhere the graded-Pokémon market stands in its cycle, per language track (all / en / ja): a one-line phase read backed by a fixed-basket same-card index (never vibes), peak/drawdown…No findings
Why it is in this group
- The name "get_market_brief" says "get": a word for reading.
Description, as the server wrote it Where the graded-Pokémon market stands in its cycle, per language track (all / en / ja): a one-line phase read backed by a fixed-basket same-card index (never vibes), peak/drawdown numbers, weekly verified-sale counts, and an upcoming release/event calendar. Not investment advice. Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
get_set_overviewWhole-set statistics for one Pokémon TCG set: total cards, per-language-track counts, breakdown by rarity (with EN star-system + JP-style display names) and by variant (Master Ball…No findings
Why it is in this group
- The name "get_set_overview" says "get": a word for reading.
Description, as the server wrote it Whole-set statistics for one Pokémon TCG set: total cards, per-language-track counts, breakdown by rarity (with EN star-system + JP-style display names) and by variant (Master Ball / Poké Ball mirror slots etc.), top featured Pokémon, plus a paginated card checklist. 中文用户: 一次拿到整个系列的卡表统计(总卡数/每稀有度几张/每变体几张/出场宝可梦), 不用逐张搜。Use for questions like "how many cards / SR cards are in 151c". Accepts internal set_code, official abbreviation (CEL) or set name. Catalog data only — for the most valuable cards in a set use set_top_priced_cards; per-card prices via card_price. Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
search_cardSearch graded Pokémon cards by name (Chinese / English / Japanese), community nickname (e.g.No findings
Why it is in this group
- The name "search_card" says "search": a word for reading.
Description, as the server wrote it Search graded Pokémon cards by name (Chinese / English / Japanese), community nickname (e.g. "鬼皮"), or set code + card number (e.g. "sv8a 喷火龙", "CEL 4"). 中文用户: 按官方卡名/圈内简称/系列码+卡号查任意宝可梦评级卡, 返回 card_id 供查价/走势/存世量工具使用。Returns up to 10 matching cards with card_id (incl. rarity/variant/species fields) — use card_id with the other tools. A bare set code or set name (e.g. "151c", "Celebrations") returns a set-level summary with guidance instead of a truncated card list — follow it to get_set_overview / set_species_summary for whole-set stats. Optional lang filters to one language track (en / ja / zh-cn); tracks are never mixed. Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
slang_lookupResolve a Chinese/Japanese/English community nickname (e.g.No findings
Why it is in this group
- The name "slang_lookup" says "lookup": a word for reading.
Description, as the server wrote it Resolve a Chinese/Japanese/English community nickname (e.g. "鬼皮", "老喷", "Zard") to the actual card(s): official names, set, number, card_id. 中文用户: 把圈内简称(鬼皮/老喷/大月…)解析成具体是哪张卡。Up to 10 cards. Reads POKEKA market data only; server-side request logging is disclosed in the privacy policy; does not modify user data.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http card-prices https://pokeka.xyz/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__card-prices__search_card",
"mcp__card-prices__get_set_overview",
"mcp__card-prices__slang_lookup",
"mcp__card-prices__get_card_context",
"mcp__card-prices__get_market_brief"
],
"ask": [
"mcp__card-prices__get_account_access",
"mcp__card-prices__set_top_priced_cards",
"mcp__card-prices__set_species_summary",
"mcp__card-prices__card_price",
"mcp__card-prices__card_price_history",
"mcp__card-prices__card_pop",
"mcp__card-prices__recent_sales",
"mcp__card-prices__market_movers",
"mcp__card-prices__market_volume_leaders"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as card-prices. Review it before you use it.