Skip to main content
Glama

Server Details

Trading card prices: daily TCGplayer market, history since 2024, set totals, movers. 6 games.

Ownership verified
Status
Healthy
Uptime
99.9% over 42 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.8/5.0

Scored across 11 tools

Disambiguation2/5

Two near-duplicate pairs dominate: `search` vs `search_cards` both do name lookup (differing only in result count and which downstream id they advertise, with `search` pointing to `fetch` and `search_cards` pointing to `card_price`/`price_history`), and `fetch` vs `card_price` both return today's per-printing market price plus a URL, with only the 90-day move vs lowest-listing/headline differing. The remaining tools (movers, all_time_highs, all_time_lows, most_valuable, price_history, set_prices, sealed_prices) are reasonably distinct, but the overlapping pairs make selection unreliable.

Naming Consistency3/5

All names are snake_case, but the convention is mixed: noun phrases (`card_price`, `price_history`, `set_prices`, `sealed_prices`), bare verbs (`search`, `fetch`), and adjective/other forms (`most_valuable`, `movers`, `all_time_highs`, `all_time_lows`). Readable, but no predictable verb_noun pattern, and the search/fetch naming reinforces the split between the two lookup chains.

Tool Count4/5

11 tools is well within the right range for a price-tracking server and each tool maps to an identifiable question type (current price, history, moves, records, set value, sealed). The count is only slightly inflated by the redundant search/search_cards and fetch/card_price pairs.

Completeness4/5

Coverage of the market-price domain is strong: lookup, per-printing current price, history, movers, all-time highs/lows, most valuable, set-level totals, and sealed products, with the raw-only scope stated. Minor gaps include no tool to resolve a product_id back to full card metadata or to list supported games/sets directly, but core workflows have no dead ends.

Available Tools

11 tools
all_time_highsAll-time highs
Read-onlyIdempotent
Inspect

Use this when the user asks which cards in one game are at a record price. Returns cards that set their highest market price since TickerMint began tracking the game (February 2024 for Pokemon, One Piece and Lorcana; later for the others, see tracked_since) in the last 7 days and still hold it, with the date of the high, in USD. For a card released before that day it is not an all-time high.

NameRequiredDescriptionDefault
gameNoCard game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam.pokemon
limitNo1 to 200.

Output Schema

NameRequiredDescription

No output parameters

all_time_lowsAll-time lowsA
Read-onlyIdempotent
Inspect

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.

NameRequiredDescriptionDefault
gameNoCard game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam.pokemon
limitNo1 to 200.

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description adds substantial non-annotation context: the $5 minimum, the 50% drop threshold, and the included fields (high price and percent below it) in USD.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the usage trigger, followed by the precise return criteria. No filler or repetition of structured fields.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, annotations cover safety, and the schema documents both parameters, so the description only needs purpose and filtering semantics—both of which it supplies precisely. Nothing an agent needs to invoke it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the game enum fully enumerated and the limit range documented, so the schema does the heavy lifting. The description adds no parameter-specific guidance beyond the scoping phrase 'one game,' which is baseline-level for fully documented params.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('which cards ... are at their lowest price or have crashed') and defines the exact filter criteria (worth $5+, at all-time low after ≥50% drop from high). It is clearly distinguishable from the sibling all_time_highs by the direction of the price extreme.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Opens with an explicit trigger condition ('Use this when the user asks...') covering both lowest-price and crashed scenarios. It does not explicitly name alternatives or state when not to use it, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

card_priceCard priceA
Read-onlyIdempotent
Inspect

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 headline (the printing and price the TickerMint page leads with) and the page URL. Raw (ungraded) prices only; not an appraisal of a particular copy. Needs a product_id from search_cards.

NameRequiredDescriptionDefault
product_idYesTickerMint product_id from search_cards.

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (readOnly, idempotent, non-destructive), it discloses that prices are raw/ungraded only, are not an appraisal of a specific copy, are denominated in USD, and carry a price date. It also names the returned `headline` field and the page URL, giving the agent real behavioral context the structured fields do not.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with the usage trigger, then the return shape, then the limitation and prerequisite. Every sentence carries distinct information with no repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, yet the description still usefully previews the key return fields and the raw-only caveat. Combined with the explicit prerequisite and the price-date disclosure, an agent has everything needed to call it correctly for a single-parameter read tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema already says the parameter is a 'TickerMint product_id from search_cards,' so the description's 'Needs a product_id from search_cards' mostly restates it. Baseline 3 applies since the schema does the heavy lifting; the description adds no format or edge-case detail beyond the origin.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource — pricing one specific card or sealed product for today — and immediately narrows the scope to the 'latest daily' TCGplayer market/lowest listed price per printing. It is readily distinguishable from siblings like price_history (historical), set_prices, and sealed_prices.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The trigger is explicit: 'Use this when the user asks what one specific card or sealed product is worth today,' and the prerequisite 'Needs a product_id from search_cards' routes the agent to the right preceding call. It lacks an explicit exclusion sentence (e.g., 'for trends over time use price_history'), leaving that contrast implied by the word 'today.'

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

fetchFetch cardA
Read-onlyIdempotent
Inspect

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.

NameRequiredDescriptionDefault
idYesProduct id from `search` results.

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, closed-world and non-destructive, so the safety profile is covered. The description adds useful scope detail beyond that: results are per-printing, prices are today's market in USD, and the move window is 90 days — the kind of context annotations cannot express.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with zero filler, front-loading the trigger condition ("after `search`") followed by the payload the tool returns. Nothing redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, annotations covering safety, and one required param, the description is complete enough to call the tool correctly. The only remaining gap is not clarifying how this differs from the `card_price` and `price_history` siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single `id` parameter is already documented as "Product id from `search` results." The description repeats the same provenance hint without adding format or edge-case detail, so the schema is doing the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (read) and resource (one product) and enumerates exactly what comes back: today's market price per printing in USD, 90-day move, and page URL. It clearly distinguishes itself from `search`, but does not distinguish itself from the sibling `card_price`, which sounds like it offers overlapping capability.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Use this after `search`" gives an explicit sequencing rule and tells the agent the id must come from a prior search. It stops short of any when-not guidance or pointing at `card_price`/`price_history` as alternatives for other price needs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

most_valuableMost valuable cardsA
Read-onlyIdempotent
Inspect

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.

NameRequiredDescriptionDefault
gameNoCard game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam.pokemon
limitNo1 to 25.

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the read-only annotations, the description discloses result composition ('up to 25 singles'), ranking method ('today's raw market price (USD)'), included fields ('set and printing'), and an important boundary ('Raw prices only, not graded values'). These details materially help an agent understand what the tool returns and what it does not cover.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences, front-loaded with the usage trigger, followed by return details and an exclusion. No sentence is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter, read-only list tool with an output schema, the description covers usage, ranking, included data, currency, and exclusions. An agent has enough information to invoke it correctly without needing further explanation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents both parameters, including the game enum and the 1–25 limit range. The description reinforces 'one game' and 'up to 25' but adds no syntax or selection guidance beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific resource (most expensive/most valuable cards), scope (one game), and temporal qualifier ('right now'). The phrase 'today's raw market price' distinguishes it from sibling tools like all_time_highs and price_history without ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives an explicit usage trigger: 'Use this when the user asks for the most expensive or most valuable cards in one game right now.' It also implicitly excludes historical comparisons and graded values, though it does not explicitly name alternatives such as all_time_highs or card_price.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

moversBiggest moversA
Read-onlyIdempotent
Inspect

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.

NameRequiredDescriptionDefault
daysNoLook-back window, 1 to 90 days.
gameNoCard game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam.pokemon
limitNo1 to 100.

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, idempotent and non-destructive behavior, so the description is not carrying the safety burden. It adds genuinely non-obvious behavior: results are filtered to cards worth $5 or more and ranked by percentage rather than absolute price change, which materially affects how the agent interprets results.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences: trigger first, then the returned metric and its filter, then the interpretive caveat. No restated title, no filler, and each sentence adds a distinct fact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-shape explanation is not required, and the description supplies the ranking basis, price threshold and scope caveat an agent needs to present results correctly. Minor gap: no indication of whether a game with too few qualifying cards yields an empty set.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with per-parameter descriptions and an enum, so the schema already documents days, game and limit. The description restates the day range without adding syntax or defaults, and never mentions the limit parameter's effect on result size. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific question the tool answers (which cards rose or fell the most) plus the exact metric returned: biggest percentage moves with start and end market price. That metric-based framing separates it cleanly from siblings like most_valuable and all_time_highs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Opens with an explicit trigger condition ('when the user asks which cards in one game rose or fell the most recently') and adds a scope exclusion ('describes past moves only; not a prediction'). It stops short of naming which sibling to use for alternate questions such as all-time extremes, which is why it is not a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

price_historyPrice historyA
Read-onlyIdempotent
Inspect

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.

NameRequiredDescriptionDefault
daysNoHow many recent days, 7 to 1000.
product_idYesTickerMint product_id from search_cards.

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive, and closed-world. The description adds genuinely new context beyond that: data granularity per printing, USD currency, the 7-1000 day window, and the February 2024 data-start caveat. The 'past prices only, no forecasts' line usefully prevents a wrong expectation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences: usage trigger first, return shape second, scope limit last. Every clause carries information an agent needs; nothing is repeated from the schema except a harmless restatement of the day range.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return formatting is covered, and annotations carry the safety profile. Combined with the explicit data-start, currency, and no-forecast notes, an agent has everything needed to call this correctly and set expectations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description earns an extra point by adding the data-availability caveat ('history starts February 2024, later for newer cards'), which tells the agent that a large `days` value may return a shorter series — information the schema does not carry.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb-and-resource pair: returns the daily market price per printing over the last `days` days in USD. The trigger framing ('going up or down', 'worth on a past date') separates it from snapshot tools like card_price, but no sibling is named explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Opens with an explicit when-to-use trigger list covering trend questions, period movement, and historical point-in-time lookups. It does not state when NOT to use it or name the alternative (e.g. card_price for the current price), so routing is inferred rather than spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sealed_pricesSealed product pricesA
Read-onlyIdempotent
Inspect

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.

NameRequiredDescriptionDefault
gameNoCard game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam.pokemon
limitNo1 to 300.

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds behavior not in the annotations: currency (USD), the 30-day percent-change metric, and the most-expensive-first sort order. It doesn't say what happens when limit is omitted or how the list is paginated, which keeps it from a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with no waste: the trigger comes first, then the return shape, then the alternative. Each sentence carries distinct information an agent needs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Output schema exists, so return values needn't be re-explained, and the game enum plus limit range are fully documented in the schema. What remains thin is list-size/pagination behavior at the default limit, a minor gap for a simple read tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with an enum on game and a documented limit range, so the schema carries the parameter burden. The description only echoes 'one game' and implies ordering; it adds no format or tuning guidance beyond structured fields. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource with clear scope: sealed product prices for one game, with the product categories (booster boxes, ETBs, bundles, packs, tins, cases) enumerated so the agent knows exactly what's covered. It also names what it returns (USD market price + 30-day change, sorted most expensive first), which separates it cleanly from card_price and set_prices.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit trigger: 'use this when the user asks about sealed product prices in one game,' plus an explicit alternative for the contrasting case ('for one named product, search_cards plus card_price is more direct'). The routing decision is fully resolved without opening a schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_cardsSearch cardsA
Read-onlyIdempotent
Inspect

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.

NameRequiredDescriptionDefault
gameNoLimit to one game (pokemon, one-piece, lorcana, riftbound, yugioh, gundam). Omit to search every game.
limitNoResults to return, 1 to 25.
queryYesCard or product name, optionally with set or collector number, e.g. 'charizard ex 199/165'.

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-open-world, so the description is free to focus on what annotations cannot express: the 25-match result cap, the exact fields returned, the USD price currency, and the six-game coverage boundary. That is meaningful added context beyond the structured hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with the trigger and the reason an agent would call it, then result shape, then coverage limits. No filler, though the return-field enumeration is slightly verbose given an output schema exists.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only search with full schema coverage and an output schema, the description supplies everything essential: trigger, purpose of results, result cap, currency, and supported games. The only gap is guidance on when its sibling `search` is the better choice.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so query/game/limit are already well documented, and the enum values and 1–25 range appear in the schema rather than the description. The description only indirectly reinforces the limit ('up to 25 matches') and adds no syntax guidance beyond the schema's own example. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource ('search_cards' for a card/product lookup) plus the explicit motivation — obtaining product_id or group_id for downstream calls. It also states scope (the six supported games) and output shape, which lets an agent distinguish it from card_price, set_prices, or search without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The opening clause gives a concrete trigger ('when the user names a trading card or sealed product') and names the downstream tools that consume its output, which is a genuine routing signal. It does not, however, say when to prefer the sibling `search` or `fetch` instead, leaving one comparison implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_pricesSet price listA
Read-onlyIdempotent
Inspect

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.

NameRequiredDescriptionDefault
group_idYesSet id (group_id) from search_cards.

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered. The description adds genuinely new behavioral context: USD currency, cheapest-printing basis per collector number, parity with the set page figure, the 25/10 result caps, and that master set totals are labeled separately from companion sets. Only return-shape and pagination/caching behavior are unstated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the use case, then the return contents, then the ID dependency — a sensible ordering with no filler sentences. It is dense and long-sentenced, though every clause (basis, currency, caps, subset handling) contributes distinct information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, read-only, idempotent tool with an output schema and full schema coverage, nothing an agent needs to call it correctly is missing: trigger conditions, ID source, and the exact scope of what is priced are all stated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and there is a single required integer parameter, so the schema already carries the load. The description still adds value by stating the parameter's origin ('Needs a group_id from search_cards'), confirming it is a set identifier rather than a card or product id.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a precise verb-plus-resource picture: it returns set-level price totals (completion cost, master set total, top 25 singles, 10 sealed products, companion subsets). That aggregate framing implicitly separates it from card-level siblings like card_price and sealed_prices, but it never names those siblings explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives concrete user-intent triggers: 'when the user asks what a set is worth, what it costs to complete, or which cards in one set are the most valuable,' plus the prerequisite that group_id comes from search_cards. There are no explicit exclusions (e.g., 'for a single card use card_price'), so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 11 tool updates
    • Changedall_time_highs3 fields changed
      • addedInput schema / properties / game / description
        Added value: +"Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam."
      • addedInput schema / properties / game / enum
        Added value: +[
        +  "pokemon",
        +  "one-piece",
        +  "lorcana",
        +  "riftbound",
        +  "yugioh",
        +  "gundam"
        +]
      • addedInput schema / properties / limit / description
        Added value: +"1 to 200."
    • Changedall_time_lows3 fields changed
      • addedInput schema / properties / game / description
        Added value: +"Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam."
      • addedInput schema / properties / game / enum
        Added value: +[
        +  "pokemon",
        +  "one-piece",
        +  "lorcana",
        +  "riftbound",
        +  "yugioh",
        +  "gundam"
        +]
      • addedInput schema / properties / limit / description
        Added value: +"1 to 200."
    • Changedcard_price1 field changed
      • addedInput schema / properties / product_id / description
        Added value: +"TickerMint product_id from search_cards."
    • Changedfetch1 field changed
      • addedInput schema / properties / id / description
        Added value: +"Product id from `search` results."
    • Changedmost_valuable3 fields changed
      • addedInput schema / properties / game / description
        Added value: +"Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam."
      • addedInput schema / properties / game / enum
        Added value: +[
        +  "pokemon",
        +  "one-piece",
        +  "lorcana",
        +  "riftbound",
        +  "yugioh",
        +  "gundam"
        +]
      • addedInput schema / properties / limit / description
        Added value: +"1 to 25."
    • Changedmovers4 fields changed
      • addedInput schema / properties / days / description
        Added value: +"Look-back window, 1 to 90 days."
      • addedInput schema / properties / game / description
        Added value: +"Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam."
      • addedInput schema / properties / game / enum
        Added value: +[
        +  "pokemon",
        +  "one-piece",
        +  "lorcana",
        +  "riftbound",
        +  "yugioh",
        +  "gundam"
        +]
      • addedInput schema / properties / limit / description
        Added value: +"1 to 100."
    • Changedprice_history2 fields changed
      • addedInput schema / properties / days / description
        Added value: +"How many recent days, 7 to 1000."
      • addedInput schema / properties / product_id / description
        Added value: +"TickerMint product_id from search_cards."
    • Changedsealed_prices3 fields changed
      • addedInput schema / properties / game / description
        Added value: +"Card game, one of: pokemon, one-piece, lorcana, riftbound, yugioh, gundam."
      • addedInput schema / properties / game / enum
        Added value: +[
        +  "pokemon",
        +  "one-piece",
        +  "lorcana",
        +  "riftbound",
        +  "yugioh",
        +  "gundam"
        +]
      • addedInput schema / properties / limit / description
        Added value: +"1 to 300."
    • Changedsearch1 field changed
      • addedInput schema / properties / query / description
        Added value: +"Card or sealed product name."
    • Changedsearch_cards4 fields changed
      • changedInput schema / properties / game / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "enum": [
        +      "pokemon",
        +      "one-piece",
        +      "lorcana",
        +      "riftbound",
        +      "yugioh",
        +      "gundam"
        +    ],
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedInput schema / properties / game / description
        Added value: +"Limit to one game (pokemon, one-piece, lorcana, riftbound, yugioh, gundam). Omit to search every game."
      • addedInput schema / properties / limit / description
        Added value: +"Results to return, 1 to 25."
      • addedInput schema / properties / query / description
        Added value: +"Card or product name, optionally with set or collector number, e.g. 'charizard ex 199/165'."
    • Changedset_prices1 field changed
      • addedInput schema / properties / group_id / description
        Added value: +"Set id (group_id) from search_cards."
  2. 11 tool updates
    • First observedall_time_highs
    • First observedall_time_lows
    • First observedcard_price
    • First observedfetch
    • First observedmost_valuable
    • First observedmovers
    • First observedprice_history
    • First observedsealed_prices
    • First observedsearch
    • First observedsearch_cards
    • First observedset_prices

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Provides access to TCGplayer trading card data, including search, product details, pricing, and market information, enabling natural language queries for card analysis.
    1
    -
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables AI assistants to look up trading-card market values across Pokémon, Magic, sports and other TCG catalogs, including raw prices by condition, graded ladders, price history, trending movers and set checklists. It also calculates grading ROI — gem premiums, net profit after fees, expected value and break-even gem rates — so collectors can decide whether a card is worth submitting.
    -
  • A
    license
    A
    quality
    C
    maintenance
    Search, browse, and analyze One Piece TCG cards with ground-truth data from the community-maintained card database. 4,348 cards across all sets (OP-01 through OP-14, Starter Decks, Event Boosters, and Promos).
    6
    106 npm
    2
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources