Serveur MCP

Midpoint Card Prices

com.cardcenteringtool/card-prices
Commerce et retail Données et analytique Public et accessible MCP 2025-11-25

Ce que fait ce MCP

Searches trading-card catalogs and provides current prices, price histories, trends, set data, and grading return estimates.

best_cards_to_grade
Best cards to grade
Use this when the user asks which cards in a game, sport or set have the biggest payoff from grading. Ranks priced cards by expected net profit at a 50% gem rate (half PSA 10, half PSA 9, minus raw and the fee), requiring both PSA 9 and PSA 10 prices so thin-market outliers are excluded. Returns card ids for grading_roi. Do not use for a single named card.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['game'], 'properties': {'game': {'enum': ['pokemon', 'magicthegathering', 'yugioh', 'onepiece', 'lorcana', 'riftbound', 'gundam', 'dragonball', 'digimon', 'baseball', 'basketball', 'football', 'hockey', 'soccer', 'wrestling', 'ufc', 'racing', 'tennis', 'golf', 'boxing', 'marvel', 'starwars', 'gpk', 'entertainment', 'othertcg'], 'type': 'string', 'description': 'Game or sport to rank.'}, 'limit': {'type': 'integer', 'default': 12, 'maximum': 50, 'minimum': 1}, 'set_slug': {'type': 'string', 'pattern': '^[a-z0-9-]*$', 'maxLength': 80, 'description': 'Optional set slug (as used on /sets/<game>/<slug>) to rank inside one set.'}, 'grading_fee_usd': {'type': 'number', 'maximum': 5000, 'minimum': 0, 'description': 'Grading fee to assume. Defaults to $25.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['game', 'criteria', 'assumed_fee_usd', 'count', 'cards', 'links'], 'properties': {'game': {'type': 'string'}, 'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'set', 'number', 'raw_market_usd', 'psa9_usd', 'psa10_usd', 'expected_net_usd_at_50pct_gem', 'gem_premium_multiple', 'url'], 'properties': {'id': {'type': 'string'}, 'set': {'type': ['string', 'null']}, 'url': {'type': 'string'}, 'name': {'type': 'string'}, 'number': {'type': ['string', 'null']}, 'psa9_usd': {'type': 'number'}, 'psa10_usd': {'type': 'number'}, 'raw_market_usd': {'type': 'number'}, 'gem_premium_multiple': {'type': ['number', 'null'], 'description': 'PSA 10 ÷ raw'}, 'expected_net_usd_at_50pct_gem': {'type': 'number', 'description': '0.5 Ã\x97 PSA 10 + 0.5 Ã\x97 PSA 9 â\x88\x92 raw â\x88\x92 fee'}}, 'additionalProperties': False}}, 'count': {'type': 'integer'}, 'links': {'type': 'object', 'required': ['worth_grading_index'], 'properties': {'worth_grading_index': {'type': 'string'}}, 'additionalProperties': False}, 'criteria': {'type': 'string'}, 'assumed_fee_usd': {'type': 'number'}}, 'additionalProperties': False}
get_card_prices
Get card price ladder
Use this when the user wants the full current value of a specific card: ungraded prices by condition (NM/LP/MP/HP) and graded prices for every company and grade on record (PSA, CGC, BGS, SGC, TAG). Requires a card id from search_cards. Prices are USD market values from real sold listings, refreshed daily. Do not use to search by name.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['card_id'], 'properties': {'card_id': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Catalog card id from search_cards, e.g. "swsh7-215" or "pricecharting-1821843".'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['card', 'currency', 'captured_on', 'variant', 'raw_note', 'raw', 'graded', 'other_variants', 'summary', 'links'], 'properties': {'raw': {'type': 'array', 'items': {'type': 'object', 'required': ['condition', 'market_usd', 'low_usd', 'high_usd'], 'properties': {'low_usd': {'type': ['number', 'null']}, 'high_usd': {'type': ['number', 'null']}, 'condition': {'type': 'string'}, 'market_usd': {'type': ['number', 'null']}}, 'additionalProperties': False}}, 'card': {'type': 'object', 'required': ['id', 'name', 'game', 'set', 'number', 'rarity', 'set_release_date'], 'properties': {'id': {'type': 'string'}, 'set': {'type': ['string', 'null']}, 'game': {'type': 'string'}, 'name': {'type': 'string'}, 'number': {'type': ['string', 'null']}, 'rarity': {'type': ['string', 'null']}, 'set_release_date': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'links': {'type': 'object', 'required': ['card_page', 'worth_grading'], 'properties': {'card_page': {'type': 'string'}, 'worth_grading': {'type': 'string'}}, 'additionalProperties': False}, 'graded': {'type': 'array', 'items': {'type': 'object', 'required': ['company', 'grade', 'market_usd'], 'properties': {'grade': {'type': 'string'}, 'company': {'type': 'string'}, 'market_usd': {'type': ['number', 'null']}}, 'additionalProperties': False}}, 'summary': {'type': 'object', 'required': ['raw_market_usd', 'psa9_usd', 'psa10_usd', 'best_graded_usd', 'change_30d_pct'], 'properties': {'psa9_usd': {'type': ['number', 'null']}, 'psa10_usd': {'type': ['number', 'null']}, 'change_30d_pct': {'type': ['number', 'null']}, 'raw_market_usd': {'type': ['number', 'null']}, 'best_graded_usd': {'type': ['number', 'null']}}, 'additionalProperties': False}, 'variant': {'type': ['string', 'null'], 'description': 'The printing the raw and graded rungs refer to (e.g. "holofoil", "1st edition"). Other printings are listed under other_variants.'}, 'currency': {'type': 'string', 'const': 'USD'}, 'raw_note': {'type': ['string', 'null'], 'description': 'Set when the raw condition ladder is out of order (thin data): treat raw prices as low confidence.'}, 'captured_on': {'type': ['string', 'null'], 'description': 'Date of the latest price capture (UTC)'}, 'other_variants': {'type': 'array', 'items': {'type': 'object', 'required': ['variant', 'raw', 'graded'], 'properties': {'raw': {'type': 'array', 'items': {'type': 'object', 'required': ['condition', 'market_usd', 'low_usd', 'high_usd'], 'properties': {'low_usd': {'type': ['number', 'null']}, 'high_usd': {'type': ['number', 'null']}, 'condition': {'type': 'string'}, 'market_usd': {'type': ['number', 'null']}}, 'additionalProperties': False}}, 'graded': {'type': 'array', 'items': {'type': 'object', 'required': ['company', 'grade', 'market_usd'], 'properties': {'grade': {'type': 'string'}, 'company': {'type': 'string'}, 'market_usd': {'type': ['number', 'null']}}, 'additionalProperties': False}}, 'variant': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'Other printings of the same card id (reverse holo, 1st editionâ\x80¦) with their own prices. Never mix these with the main ladder.'}}, 'additionalProperties': False}
get_price_history
Get price history
Use this when the user asks how a card's price has changed over weeks or months, or wants a trend for the raw or a PSA-graded series. Returns dated USD market values for the last 7 to 180 days. Requires a card id from search_cards. Do not use for forecasts.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['card_id'], 'properties': {'days': {'type': 'integer', 'default': 90, 'maximum': 180, 'minimum': 7}, 'grade': {'type': 'string', 'maxLength': 10, 'description': 'PSA grade for a graded series, e.g. "10" or "9". Omit for the raw (ungraded) series.'}, 'card_id': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Catalog card id from search_cards.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['card_id', 'name', 'series', 'variant', 'days', 'coverage', 'currency', 'points', 'first_usd', 'last_usd', 'change_pct', 'change_note', 'source', 'links'], 'properties': {'days': {'type': 'integer'}, 'name': {'type': 'string'}, 'links': {'type': 'object', 'required': ['card_page'], 'properties': {'card_page': {'type': 'string'}}, 'additionalProperties': False}, 'points': {'type': 'array', 'items': {'type': 'object', 'required': ['date', 'market_usd'], 'properties': {'date': {'type': 'string'}, 'market_usd': {'type': ['number', 'null']}}, 'additionalProperties': False}, 'description': 'Oldest first. Graded series only contain days with sales; gaps are normal.'}, 'series': {'type': 'string', 'description': '"raw" or "PSA <grade>"'}, 'source': {'type': 'string'}, 'card_id': {'type': 'string'}, 'variant': {'type': ['string', 'null'], 'description': 'The printing the series follows (e.g. "holofoil"); other printings are separate markets and are never mixed in.'}, 'coverage': {'type': 'object', 'required': ['days_with_data', 'note'], 'properties': {'note': {'type': 'string'}, 'days_with_data': {'type': 'integer'}}, 'description': 'How many of the requested days have a capture, and how to read repeated or sparse values.', 'additionalProperties': False}, 'currency': {'type': 'string', 'const': 'USD'}, 'last_usd': {'type': ['number', 'null']}, 'first_usd': {'type': ['number', 'null']}, 'change_pct': {'type': ['number', 'null'], 'description': 'First-to-last change; null when change_note is set because a single step carries it.'}, 'change_note': {'type': ['string', 'null'], 'description': 'Set when one step between consecutive captures accounts for the change: usually a data correction, not a market move. change_pct is null in that case.'}}, 'additionalProperties': False}
get_set_cards
Cards in a set with prices
Use this when the user wants the most valuable cards in a specific set or a priced checklist of a set. Requires a set id from list_sets. Returns raw and PSA 10 USD prices per card. Do not use for a single named card; use search_cards instead.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['game', 'set_id'], 'properties': {'game': {'enum': ['pokemon', 'magicthegathering', 'yugioh', 'onepiece', 'lorcana', 'riftbound', 'gundam', 'dragonball', 'digimon', 'baseball', 'basketball', 'football', 'hockey', 'soccer', 'wrestling', 'ufc', 'racing', 'tennis', 'golf', 'boxing', 'marvel', 'starwars', 'gpk', 'entertainment', 'othertcg'], 'type': 'string'}, 'sort': {'enum': ['value', 'number'], 'type': 'string', 'default': 'value', 'description': '"value" = most valuable first; "number" = checklist order.'}, 'limit': {'type': 'integer', 'default': 25, 'maximum': 100, 'minimum': 1}, 'set_id': {'type': 'string', 'pattern': '^[a-zA-Z0-9_.-]+$', 'maxLength': 60, 'minLength': 1, 'description': 'Expansion id from list_sets.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['game', 'set_id', 'set_name', 'total_cards', 'count', 'cards'], 'properties': {'game': {'type': 'string'}, 'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'game', 'set', 'number', 'raw_market_usd', 'url'], 'properties': {'id': {'type': 'string', 'description': 'Catalog card id. Pass to get_card_prices, grading_roi or get_price_history.'}, 'set': {'type': ['string', 'null']}, 'url': {'type': 'string', 'description': 'Card page with the full price ladder and history'}, 'game': {'type': 'string'}, 'name': {'type': 'string'}, 'number': {'type': ['string', 'null']}, 'rarity': {'type': ['string', 'null']}, 'raw_market_usd': {'type': ['number', 'null'], 'description': 'Ungraded (raw) market price in USD'}, 'psa10_market_usd': {'type': ['number', 'null'], 'description': 'PSA 10 market price in USD'}}, 'additionalProperties': False}}, 'count': {'type': 'integer'}, 'set_id': {'type': 'string'}, 'set_name': {'type': ['string', 'null']}, 'total_cards': {'type': 'integer'}}, 'additionalProperties': False}
grading_roi
Is this card worth grading?
Use this when the user asks whether a card is worth grading, submitting to PSA/CGC/BGS/SGC/TAG, or what a PSA 10 adds. Returns raw vs PSA 9 vs PSA 10 market prices, the gem premium, net profit after grading fees per outcome, expected value by gem probability, the break-even gem rate, which company pays most, and a plain-language verdict. Requires a card id from search_cards. It does not assess the condition of the user's copy.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['card_id'], 'properties': {'card_id': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Catalog card id from search_cards.'}, 'grading_fee_usd': {'type': 'number', 'maximum': 5000, 'minimum': 0, 'description': 'Grading fee to assume. Defaults to a $25 economy tier; the table also shows $50 and $150.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['card', 'currency', 'captured_on', 'raw_market_usd', 'psa9_usd', 'psa10_usd', 'gem_premium_multiple', 'verdict', 'top_grade_by_company', 'net_after_fee', 'expected_value', 'break_even_gem_probability', 'assumed_fee_usd', 'links'], 'properties': {'card': {'type': 'object', 'required': ['id', 'name', 'game', 'set', 'number'], 'properties': {'id': {'type': 'string'}, 'set': {'type': ['string', 'null']}, 'game': {'type': 'string'}, 'name': {'type': 'string'}, 'number': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'links': {'type': 'object', 'required': ['worth_grading', 'card_page', 'measure_centering'], 'properties': {'card_page': {'type': 'string'}, 'worth_grading': {'type': 'string'}, 'measure_centering': {'type': 'string'}}, 'additionalProperties': False}, 'verdict': {'anyOf': [{'type': 'object', 'required': ['tone', 'headline', 'body'], 'properties': {'body': {'type': 'string'}, 'tone': {'enum': ['strong', 'conditional', 'weak'], 'type': 'string'}, 'headline': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'currency': {'type': 'string', 'const': 'USD'}, 'psa9_usd': {'type': ['number', 'null']}, 'psa10_usd': {'type': ['number', 'null']}, 'captured_on': {'type': ['string', 'null']}, 'net_after_fee': {'type': 'array', 'items': {'type': 'object', 'required': ['outcome', 'sale_usd', 'net_usd_by_fee'], 'properties': {'outcome': {'type': 'string'}, 'sale_usd': {'type': 'number'}, 'net_usd_by_fee': {'type': 'array', 'items': {'type': 'object', 'required': ['fee_usd', 'net_usd'], 'properties': {'fee_usd': {'type': 'number'}, 'net_usd': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}}, 'expected_value': {'type': 'array', 'items': {'type': 'object', 'required': ['gem_probability', 'expected_sale_usd', 'expected_net_usd'], 'properties': {'gem_probability': {'type': 'number'}, 'expected_net_usd': {'type': 'number'}, 'expected_sale_usd': {'type': 'number'}}, 'additionalProperties': False}}, 'raw_market_usd': {'type': ['number', 'null']}, 'assumed_fee_usd': {'type': 'number'}, 'gem_premium_multiple': {'type': ['number', 'null'], 'description': 'PSA 10 price ÷ raw price'}, 'top_grade_by_company': {'type': 'array', 'items': {'type': 'object', 'required': ['company', 'grade', 'value_usd', 'centering_tolerance_front', 'centering_tolerance_back'], 'properties': {'grade': {'type': 'string'}, 'company': {'type': 'string'}, 'value_usd': {'type': 'number'}, 'centering_tolerance_back': {'type': 'string'}, 'centering_tolerance_front': {'type': 'string'}}, 'additionalProperties': False}}, 'break_even_gem_probability': {'type': ['number', 'null'], 'description': 'Chance of a PSA 10 needed to break even at the assumed fee; null when grading never breaks even'}}, 'additionalProperties': False}
liquid_movers
Liquid movers (rising cards that actually sell)
Use this when the user wants cards that are both rising in price and easy to sell: recent gainers filtered to cards with at least 25 recorded sales a year and a raw price of at least $5, across all games and sports. Better than trending_cards for flipping or selling decisions. Do not use for a single named card.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'game': {'enum': ['pokemon', 'magicthegathering', 'yugioh', 'onepiece', 'lorcana', 'riftbound', 'gundam', 'dragonball', 'digimon', 'baseball', 'basketball', 'football', 'hockey', 'soccer', 'wrestling', 'ufc', 'racing', 'tennis', 'golf', 'boxing', 'marvel', 'starwars', 'gpk', 'entertainment', 'othertcg'], 'type': 'string', 'description': 'Restrict to one game or sport; omit for all.'}, 'limit': {'type': 'integer', 'default': 15, 'maximum': 50, 'minimum': 1}, 'include_unknown_volume': {'type': 'boolean', 'default': False, 'description': 'Also include cards whose yearly sales count is not tracked (mostly Pokémon from the Scrydex source). Off by default so every result has a verifiable sales figure.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['as_of', 'criteria', 'count', 'volume_verified', 'excluded_unstable', 'cards'], 'properties': {'as_of': {'type': 'string', 'description': 'When this ranking was computed (ISO 8601)'}, 'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'game', 'set', 'number', 'raw_market_usd', 'url', 'change_pct', 'sales_per_year'], 'properties': {'id': {'type': 'string', 'description': 'Catalog card id. Pass to get_card_prices, grading_roi or get_price_history.'}, 'set': {'type': ['string', 'null']}, 'url': {'type': 'string', 'description': 'Card page with the full price ladder and history'}, 'game': {'type': 'string'}, 'name': {'type': 'string'}, 'number': {'type': ['string', 'null']}, 'rarity': {'type': ['string', 'null']}, 'change_pct': {'type': ['number', 'null']}, 'raw_market_usd': {'type': ['number', 'null'], 'description': 'Ungraded (raw) market price in USD'}, 'sales_per_year': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'description': 'Recorded sales in the last year; null only when include_unknown_volume is on and the source does not track volume.'}, 'psa10_market_usd': {'type': ['number', 'null'], 'description': 'PSA 10 market price in USD'}}, 'additionalProperties': False}}, 'count': {'type': 'integer'}, 'criteria': {'type': 'string'}, 'volume_verified': {'type': 'boolean', 'description': 'False when the list had to include cards whose yearly sales count is not tracked (Pokémon and other Scrydex-sourced games have no volume data).'}, 'excluded_unstable': {'type': 'integer', 'description': 'Candidates dropped because their own 40-day raw series did not hold together.'}}, 'additionalProperties': False}
list_sets
List sets / expansions
Use this to find the set id for a game or sport (e.g. "Evolving Skies", "2019 Panini Prizm") before calling get_set_cards, or when the user asks which sets exist. Newest first. Do not use to price a single card.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['game'], 'properties': {'game': {'enum': ['pokemon', 'magicthegathering', 'yugioh', 'onepiece', 'lorcana', 'riftbound', 'gundam', 'dragonball', 'digimon', 'baseball', 'basketball', 'football', 'hockey', 'soccer', 'wrestling', 'ufc', 'racing', 'tennis', 'golf', 'boxing', 'marvel', 'starwars', 'gpk', 'entertainment', 'othertcg'], 'type': 'string'}, 'limit': {'type': 'integer', 'default': 30, 'maximum': 100, 'minimum': 1}, 'query': {'type': 'string', 'maxLength': 60, 'description': 'Optional substring to filter set names, e.g. "evolving" or "2019 prizm".'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['game', 'count', 'sets', 'links'], 'properties': {'game': {'type': 'string'}, 'sets': {'type': 'array', 'items': {'type': 'object', 'required': ['set_id', 'name', 'release_date', 'card_count'], 'properties': {'name': {'type': ['string', 'null']}, 'set_id': {'type': 'string', 'description': 'Pass to get_set_cards or search_cards.set_id'}, 'card_count': {'type': 'integer'}, 'release_date': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'count': {'type': 'integer'}, 'links': {'type': 'object', 'required': ['sets_index'], 'properties': {'sets_index': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
search_cards
Search card prices
Use this first when the user names a trading card and wants its value, price, or whether to grade it. Searches 1.5M+ Pokémon, Magic, Yu-Gi-Oh!, One Piece, Lorcana, sports (baseball, basketball, football, hockey, soccer, wrestling, UFC and more) and entertainment cards by name, set, number and year, returning ungraded and PSA 10 market prices in USD from real sold listings. Returns card ids for get_card_prices, grading_roi and get_price_history. Do not use for sealed product, for cards you already have an id for, or for price prediction.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'game': {'enum': ['pokemon', 'magicthegathering', 'yugioh', 'onepiece', 'lorcana', 'riftbound', 'gundam', 'dragonball', 'digimon', 'baseball', 'basketball', 'football', 'hockey', 'soccer', 'wrestling', 'ufc', 'racing', 'tennis', 'golf', 'boxing', 'marvel', 'starwars', 'gpk', 'entertainment', 'othertcg'], 'type': 'string', 'description': 'Restrict to one game or sport. Omit when unsure.'}, 'limit': {'type': 'integer', 'default': 10, 'maximum': 50, 'minimum': 1}, 'query': {'type': 'string', 'maxLength': 80, 'minLength': 2, 'description': 'Card name, optionally with set, number or year. Examples: "Umbreon VMAX Evolving Skies", "1986 Fleer Jordan", "Charizard base set 4/102".'}, 'set_id': {'type': 'string', 'pattern': '^[a-zA-Z0-9_.-]*$', 'maxLength': 60, 'description': 'Expansion id from list_sets, to search inside one set.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query', 'matched_on', 'count', 'cards'], 'properties': {'note': {'type': 'string'}, 'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'game', 'set', 'number', 'raw_market_usd', 'url'], 'properties': {'id': {'type': 'string', 'description': 'Catalog card id. Pass to get_card_prices, grading_roi or get_price_history.'}, 'set': {'type': ['string', 'null']}, 'url': {'type': 'string', 'description': 'Card page with the full price ladder and history'}, 'game': {'type': 'string'}, 'name': {'type': 'string'}, 'number': {'type': ['string', 'null']}, 'rarity': {'type': ['string', 'null']}, 'raw_market_usd': {'type': ['number', 'null'], 'description': 'Ungraded (raw) market price in USD'}, 'psa10_market_usd': {'type': ['number', 'null'], 'description': 'PSA 10 market price in USD'}}, 'additionalProperties': False}}, 'count': {'type': 'integer'}, 'query': {'type': 'string'}, 'matched_on': {'type': 'string', 'description': 'The search term that produced the results'}}, 'additionalProperties': False}
trending_cards
Trending cards (30-day price movers)
Use this when the user asks which cards are rising, hot, spiking, crashing or trending, in one game or across all games. Returns the biggest 30-day gainers (or drops) with the percentage change, measured on the PSA 10 price where the card has one and on the raw price otherwise; moves over 300% are excluded as bad data. Do not use for a single named card or for long-term history.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'game': {'enum': ['pokemon', 'magicthegathering', 'yugioh', 'onepiece', 'lorcana', 'riftbound', 'gundam', 'dragonball', 'digimon', 'baseball', 'basketball', 'football', 'hockey', 'soccer', 'wrestling', 'ufc', 'racing', 'tennis', 'golf', 'boxing', 'marvel', 'starwars', 'gpk', 'entertainment', 'othertcg'], 'type': 'string', 'description': 'Restrict to one game or sport; omit for all.'}, 'limit': {'type': 'integer', 'default': 15, 'maximum': 50, 'minimum': 1}, 'direction': {'enum': ['up', 'down'], 'type': 'string', 'default': 'up', 'description': '"up" = biggest gainers, "down" = biggest drops.'}, 'min_market_usd': {'type': 'number', 'default': 5, 'maximum': 1000, 'minimum': 0.5, 'description': 'Ignore cards whose raw price is below this.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['window_days', 'direction', 'game', 'count', 'excluded_unstable', 'criteria', 'cards'], 'properties': {'game': {'type': ['string', 'null']}, 'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'game', 'set', 'number', 'basis', 'price_30d_ago_usd', 'price_now_usd', 'change_30d_pct', 'raw_market_usd', 'psa10_market_usd', 'url'], 'properties': {'id': {'type': 'string'}, 'set': {'type': ['string', 'null']}, 'url': {'type': 'string'}, 'game': {'type': 'string'}, 'name': {'type': 'string'}, 'basis': {'enum': ['PSA 10', 'raw'], 'type': 'string', 'description': 'Which price series the change refers to'}, 'number': {'type': ['string', 'null']}, 'price_now_usd': {'type': 'number'}, 'change_30d_pct': {'type': 'number'}, 'raw_market_usd': {'type': ['number', 'null']}, 'psa10_market_usd': {'type': ['number', 'null']}, 'price_30d_ago_usd': {'type': 'number'}}, 'additionalProperties': False}}, 'count': {'type': 'integer'}, 'criteria': {'type': 'string'}, 'direction': {'enum': ['up', 'down'], 'type': 'string'}, 'window_days': {'type': 'number', 'const': 30}, 'excluded_unstable': {'type': 'integer', 'description': 'Candidates dropped because their own 40-day series did not hold together (too few captures, a baseline that swings >2Ã\x97, a >6Ã\x97 range, or a one-capture jump).'}}, 'additionalProperties': False}
Modifié
get_set_cards
23 September 2026 02:52
Modifié
list_sets
23 September 2026 02:52
Modifié
liquid_movers
23 September 2026 02:52
Modifié
trending_cards
23 September 2026 02:52
Modifié
best_cards_to_grade
23 September 2026 02:52
Modifié
get_price_history
23 September 2026 02:52
Modifié
grading_roi
23 September 2026 02:52
Modifié
get_card_prices
23 September 2026 02:52
Modifié
search_cards
23 September 2026 02:52
Modifié
liquid_movers
21 September 2026 02:59
Modifié
trending_cards
21 September 2026 02:59
Modifié
get_price_history
21 September 2026 02:59
Modifié
get_card_prices
21 September 2026 02:59
Ajouté
get_set_cards
17 September 2026 12:34
Ajouté
list_sets
17 September 2026 12:34
Ajouté
liquid_movers
17 September 2026 12:34
Ajouté
trending_cards
17 September 2026 12:34
Ajouté
best_cards_to_grade
17 September 2026 12:34
Ajouté
get_price_history
17 September 2026 12:34
Ajouté
grading_roi
17 September 2026 12:34
Ajouté
get_card_prices
17 September 2026 12:34
Ajouté
search_cards
17 September 2026 12:34