Trading card prices: daily TCGplayer market, history since 2024, sold comps, PSA 10 floors. 6 games.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Use this when the user asks which cards in one game are at a record price. Returns cards that set an all-time high market price (since February 2024) in the last 7 days and still hold it, with the date of the high, in USD.
Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam.
1 to 200.
Use this when the user asks which cards in one game are at a record price. Returns cards that set an all-time high market price (since February 2024) in the last 7 days and still hold it, with the date of the high, in USD.
| Argument | Type | Description |
|---|---|---|
| game | string | Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam. |
| limit | integer | 1 to 200. |
{
"type": "object",
"title": "all_time_highsArguments",
"properties": {
"game": {
"enum": [
"pokemon",
"one-piece",
"lorcana",
"riftbound",
"yugioh",
"gundam"
],
"type": "string",
"title": "Game",
"default": "pokemon",
"description": "Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 25,
"description": "1 to 200."
}
}
}Use this when the user asks which cards in one game are at their lowest price or have crashed. Returns cards worth $5+ sitting at their all-time low market price after falling at least 50% from their high, with the high and the percent below it, in USD.
| Argument | Type | Description |
|---|---|---|
| game | string | Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam. |
| limit | integer | 1 to 200. |
{
"type": "object",
"title": "all_time_lowsArguments",
"properties": {
"game": {
"enum": [
"pokemon",
"one-piece",
"lorcana",
"riftbound",
"yugioh",
"gundam"
],
"type": "string",
"title": "Game",
"default": "pokemon",
"description": "Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 25,
"description": "1 to 200."
}
}
}Use this when the user asks what one specific card or sealed product is worth today. Returns the latest daily TCGplayer market price and lowest listed price per printing (Normal, Holofoil, Reverse Holofoil, 1st Edition...) with the date of the price, in USD, plus the page URL. Raw (ungraded) prices only; not an appraisal of a particular copy. Needs a product_id from search_cards.
| Argument | Type | Description |
|---|---|---|
| product_id* | integer | TickerMint product_id from search_cards. |
{
"type": "object",
"title": "card_priceArguments",
"required": [
"product_id"
],
"properties": {
"product_id": {
"type": "integer",
"title": "Product Id",
"description": "TickerMint product_id from search_cards."
}
}
}Use this after `search` to read one product: today's market price per printing (USD), its move over the last 90 days and the page URL.
| Argument | Type | Description |
|---|---|---|
| id* | string | Product id from `search` results. |
{
"type": "object",
"title": "fetchArguments",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"title": "Id",
"description": "Product id from `search` results."
}
}
}Use this when the user asks for the most expensive or most valuable cards in one game right now. Returns up to 25 singles ranked by today's raw market price (USD) with set and printing. Raw prices only, not graded values.
| Argument | Type | Description |
|---|---|---|
| game | string | Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam. |
| limit | integer | 1 to 25. |
{
"type": "object",
"title": "most_valuableArguments",
"properties": {
"game": {
"enum": [
"pokemon",
"one-piece",
"lorcana",
"riftbound",
"yugioh",
"gundam"
],
"type": "string",
"title": "Game",
"default": "pokemon",
"description": "Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 25,
"description": "1 to 25."
}
}
}Use this when the user asks which cards in one game rose or fell the most recently. Returns the biggest percentage moves over the last `days` (1 to 90) for cards worth $5 or more, with the start and end market price in USD. Describes past moves only; not a prediction.
| Argument | Type | Description |
|---|---|---|
| days | integer | Look-back window, 1 to 90 days. |
| game | string | Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam. |
| limit | integer | 1 to 100. |
{
"type": "object",
"title": "moversArguments",
"properties": {
"days": {
"type": "integer",
"title": "Days",
"default": 7,
"description": "Look-back window, 1 to 90 days."
},
"game": {
"enum": [
"pokemon",
"one-piece",
"lorcana",
"riftbound",
"yugioh",
"gundam"
],
"type": "string",
"title": "Game",
"default": "pokemon",
"description": "Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 20,
"description": "1 to 100."
}
}
}Use this when the user asks whether a card's price is going up or down, how it moved over a period, or what it was worth on a past date. Returns the daily market price per printing for the last `days` days (7 to 1000; history starts February 2024, later for newer cards) in USD. Past prices only, no forecasts.
| Argument | Type | Description |
|---|---|---|
| days | integer | How many recent days, 7 to 1000. |
| product_id* | integer | TickerMint product_id from search_cards. |
{
"type": "object",
"title": "price_historyArguments",
"required": [
"product_id"
],
"properties": {
"days": {
"type": "integer",
"title": "Days",
"default": 90,
"description": "How many recent days, 7 to 1000."
},
"product_id": {
"type": "integer",
"title": "Product Id",
"description": "TickerMint product_id from search_cards."
}
}
}Use this when the user asks about sealed product prices in one game: booster boxes, elite trainer boxes, bundles, packs, tins and cases. Returns today's market price (USD) and 30-day percent change per product, most expensive first. For one named product, search_cards plus card_price is more direct.
| Argument | Type | Description |
|---|---|---|
| game | string | Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam. |
| limit | integer | 1 to 300. |
{
"type": "object",
"title": "sealed_pricesArguments",
"properties": {
"game": {
"enum": [
"pokemon",
"one-piece",
"lorcana",
"riftbound",
"yugioh",
"gundam"
],
"type": "string",
"title": "Game",
"default": "pokemon",
"description": "Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 50,
"description": "1 to 300."
}
}
}Use this to look up trading cards or sealed products (Pokemon, One Piece, Disney Lorcana, Riftbound, Yu-Gi-Oh and Gundam) by name. Returns up to 10 matches with ids to pass to `fetch`.
| Argument | Type | Description |
|---|---|---|
| query* | string | Card or sealed product name. |
{
"type": "object",
"title": "searchArguments",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"title": "Query",
"description": "Card or sealed product name."
}
}
}Use this when the user names a trading card or sealed product and you need its TickerMint product_id (required by card_price and price_history) or its set id (group_id, required by set_prices). Returns up to 25 matches with name, set, collector number, the latest raw market price in USD and the page URL. Covers Pokemon, One Piece, Disney Lorcana, Riftbound, Yu-Gi-Oh and Gundam only.
| Argument | Type | Description |
|---|---|---|
| game | any | Limit to one game (pokemon, one-piece, lorcana, riftbound, yugioh, gundam). Omit to search every game. |
| limit | integer | Results to return, 1 to 25. |
| query* | string | Card or product name, optionally with set or collector number, e.g. 'charizard ex 199/165'. |
{
"type": "object",
"title": "search_cardsArguments",
"required": [
"query"
],
"properties": {
"game": {
"anyOf": [
{
"enum": [
"pokemon",
"one-piece",
"lorcana",
"riftbound",
"yugioh",
"gundam"
],
"type": "string"
},
{
"type": "null"
}
],
"title": "Game",
"default": null,
"description": "Limit to one game (pokemon, one-piece, lorcana, riftbound, yugioh, gundam). Omit to search every game."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 10,
"description": "Results to return, 1 to 25."
},
"query": {
"type": "string",
"title": "Query",
"description": "Card or product name, optionally with set or collector number, e.g. 'charizard ex 199/165'."
}
}
}Use this when the user asks what a set is worth, what it costs to complete, or which cards in one set are the most valuable. Returns the cost to complete the set in singles today (one copy of each collector number at its cheapest printing, USD, the same figure as the set page), the master set total (every printing we price, labeled separately), the 25 most valuable singles and the 10 priciest sealed products of the set, plus companion sets that ship in the same packs but are catalogued separately (for example a Classic Collection or Trainer Gallery subset) with their own totals. Needs a group_id from search_cards.
| Argument | Type | Description |
|---|---|---|
| group_id* | integer | Set id (group_id) from search_cards. |
{
"type": "object",
"title": "set_pricesArguments",
"required": [
"group_id"
],
"properties": {
"group_id": {
"type": "integer",
"title": "Group Id",
"description": "Set id (group_id) from search_cards."
}
}
}