LitVM TCG Oracle
Server Details
On-chain TCG price oracle for the LitecoinVM ecosystem: 456K+ trading cards, raw and graded-slab Merkle proofs verified on LiteForge (chain 4441), conformal-calibrated forecasts with a public accuracy scorecard, card-collateral loan-terms previews, sports boards, the slab census, and the 4,444-soul fantasy league. 13 tools, all free, no keys.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
TDQS
Most tools target clearly distinct resources and actions: search, price, forecast, proof, status, and scorecard are all separable. The main overlaps are get_forecast vs. simulate_price and get_graded_proof vs. get_merkle_proof, but their descriptions explicitly differentiate the use cases.
The set is predominantly get_[noun], which creates a predictable pattern across 10 of 13 tools. Three exceptions — oracle_status, search_cards, and simulate_price — are still readable and use consistent snake_case, so the deviations are minor rather than chaotic.
Thirteen tools is well within the ideal range for a domain-specific oracle server. Each tool serves a distinct function, and the count feels appropriately scoped for a price oracle with search, forecasting, proof verification, and health-check capabilities.
The tool surface covers the full core workflow: discover cards, fetch prices, run forecasts, verify data on-chain, inspect oracle health, and review historical accuracy. Additional niche features like loan previews and sports/fantasy boards do not create gaps in the primary TCG oracle domain.
Available Tools
13 toolsget_census_summaryGet Census SummaryAInspect
Observed graded-slab census totals: how many PSA/BGS/CGC/TAG slabs the oracle tracks circulating on the open market (cert-verified; a census of what is listed and pressing on price — NOT a pop report). Census leaves are committed on-chain daily.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does well by noting that data is cert-verified, limited to open-market circulation, and committed on-chain daily. These details convey important timing and trust characteristics beyond the tool name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded, with the core census concept in the first clause. The second sentence adds meaningful update-cadence information. Minor jargon like 'pressing on price' slightly reduces clarity, but the overall length is appropriate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless tool with an output schema, the description covers the essential context: what is being counted, which grading companies are included, the market scope, and the update frequency. It does not discuss auth or rate limits, but no annotations suggest those are critical for this read-style tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description does not need to explain argument semantics. The input schema is empty and fully covered, and the description reinforces that this is a simple no-input query. This matches the baseline for parameterless tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool's purpose: returning open-market census totals for PSA/BGS/CGC/TAG slabs tracked by the oracle. It also draws an explicit distinction from a population report, which helps avoid misinterpretation. However, it does not directly differentiate from any sibling tool by name, so a small gap remains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when this tool is relevant—when you need market census totals rather than a population report—but it does not explicitly state conditions or point to alternatives. The 'NOT a pop report' phrase serves as a partial exclusion, but there is no direct guidance selecting this over related tools like get_market_snapshot or get_oracle_scorecard.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_fantasy_leagueGet Fantasy LeagueAInspect
The Undesirables fantasy league on LitecoinVM: 4,444 AI personalities draft weekly fantasy lineups over the oracle's calibrated forecasts. Every lineup is merkle-committed to the PredictionRegistry on LiteForge (stream fantasy_souls) BEFORE games score. No token_id: league feed with standings and the week's commit txs. With token_id: that soul's lineup, personality traits, and drafting strategy.
| Name | Required | Description | Default |
|---|---|---|---|
| token_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the transparency burden, and it does meaningful work: it discloses merkle-commit timing ('BEFORE games score'), the on-chain registry/stream involved, and what each invocation mode returns. It stops short of 5 because it omits details like auth requirements, error behavior, or rate limits, though none are clearly critical for a read-style lookup.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences, each earning its place: the first establishes what the league is, the second explains the merkle-commit transparency trait, and the third maps parameter variants to outputs. There is no redundant padding or repetition of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-optional-parameter tool with an output schema present, the description covers the key operative questions: what the tool is about, what the parameter means, and what each call variant returns. The only slight gap is that 'No token_id' vs the schema's default of 0 is not stated as an explicit equivalence, leaving a small edge-case ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema only defines token_id as an integer with default 0 and 0% schema description coverage. The description fully compensates by explaining exactly what the parameter controls: omitting it yields the league feed with standings and commit txs, while providing it yields a specific soul's lineup, traits, and strategy.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource ('The Undesirables fantasy league on LitecoinVM') and the retrieval behavior, splitting between a league feed and a token-specific soul lineup. The fantasy-league vocabulary is distinct enough that an agent can tell this from the loan, market, sports, and oracle sibling tools without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear conditional guidance for the token_id parameter ('No token_id' vs 'With token_id'), which is useful for invocation. However, it never explicitly says when to prefer this tool over a sibling alternative or lists exclusions, so cross-tool selection guidance is only implied by domain.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_forecastGet ForecastAInspect
Get the calibrated conformal risk forecast for a trading card.
This is the recommended, honest default forecast — distribution-free, deterministic, and never-under-protective. Unlike a Monte Carlo simulation it makes NO distributional assumption: the bands are calibrated on real cross-card price history, so the stated risk is honest out-of-sample (a "5% VaR" means a ~5% loss happens about 5% of the time). Each card also gets two plain-English letter grades.
| Name | Required | Description | Default |
|---|---|---|---|
| card_name | Yes | Card to forecast (e.g. "Charizard Base Set Holo") |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, and it delivers: it discloses that the forecast is distribution-free, deterministic, never-under-protective, calibrated on real cross-card price history, and honest out-of-sample, and it explains the meaning of the stated risk. It also notes the two plain-English letter grades, giving an agent a solid model of what to expect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three compact sentences front-load the core purpose, then add only high-signal behavioral detail. There is no filler, repetition, or schema duplication.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read-style tool with an output schema and strong behavioral description, the definition is nearly complete. It could be slightly stronger by naming simulate_price explicitly as the alternative and stating any prerequisites for using this forecast, but nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and there is only one parameter, card_name, already described with an example in the schema. The description adds no additional parameter-level meaning, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence names a specific verb and resource ('Get ... calibrated conformal risk forecast for a trading card') and the description goes on to contrast it with Monte Carlo simulation, distinguishing it from sibling simulate_price. This makes the tool's identity unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description positions this as 'the recommended, honest default forecast' and explicitly contrasts it with a Monte Carlo simulation, giving clear context for when it should be preferred. It stops short of explicitly naming the alternative tool or stating hard exclusion criteria, so it is not a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_graded_proofGet Graded ProofAInspect
Merkle proof for a GRADED-slab price on the GradedPriceOracle contract (LiteForge, Chain 4441). The graded price tree is committed on-chain daily — this proof lets any agent verify a slab price trustlessly, the same way get_merkle_proof verifies raw-card prices. Grades like 'PSA 10', 'PSA 9', 'BGS 9.5'.
| Name | Required | Description | Default |
|---|---|---|---|
| grade | No | PSA 10 | |
| product_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, but the description adds meaningful behavioral context: the proof enables trustless verification, the price tree is committed on-chain daily, and any agent can verify. It does not explicitly state read-only/no side effects, but the Merkle-proof framing and 'any agent' phrasing strongly imply a non-mutating, accessible operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences with no filler. The first sentence states the core purpose, the second adds verification context and sibling distinction, and the third gives concrete grade examples. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema covers return values, and the description covers the contract, chain, verification mechanism, and sibling relationship. However, the meaning of product_id remains ambiguous, which is a significant gap for correct invocation. Overall it is mostly complete but not fully self-sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It provides useful grade examples like 'PSA 10' and 'BGS 9.5', but it does not explain what product_id refers to or how it relates to grade. This leaves a critical parameter under-defined.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states a specific verb and resource: fetching a Merkle proof for a graded-slab price from the GradedPriceOracle on a specific chain. It also distinguishes itself from get_merkle_proof by clarifying that get_merkle_proof handles raw-card prices while this one handles graded prices.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied clearly: use this tool for graded slab prices, and use get_merkle_proof for raw-card prices. However, it does not explicitly state when not to use this tool or list exclusions/prerequisites beyond that analogy.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_loan_terms_previewGet Loan Terms PreviewAInspect
FREE worked derivation of card-collateral lending terms for cards on today's published free board: value -> calibrated 99% tail -> liquidation buffer -> liquidity cap -> max LTV, six steps shown with price source and merkle proof links. term_days: 7, 14 or 30. Off-board cards 404 with a pointer to the paid quote ($0.10 x402, all 2,000 rated cards). Informational only — not financial advice.
| Name | Required | Description | Default |
|---|---|---|---|
| term_days | No | ||
| product_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does so richly: it discloses the six derivation steps, price source and merkle proof links, allowed term_days values, off-board 404 behavior, paid-quote fallback, and the informational-only disclaimer. This gives the agent a strong model of what will happen and what to expect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but every clause earns its place, covering scope, output, parameters, error behavior, and disclaimers. It front-loads the core purpose and then adds supporting detail, though the long single sentence could be better structured for readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with an output schema present, this description is largely complete: it gives invocation context, parameter constraints, error handling, and caveats. The main missing piece is explicit guidance on selecting this tool over a specific sibling, but that is partially mitigated by the detailed scope statement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It does clarify that term_days can be 7, 14, or 30, which is useful beyond the schema's bare integer type, and it implies product_id identifies a card on the free board. However, product_id semantics are left implicit, and the description does not explicitly connect parameters to the workflow.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that this tool produces a free worked derivation of card-collateral lending terms, including the value chain from value to max LTV. It effectively distinguishes itself from generic price or proof tools by specifying its domain (loan terms on the free board) and output artifacts (merkle proof links), though it does not explicitly name sibling alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: use this for cards on today's published free board, and it explains that off-board cards return 404 with a pointer to a paid quote. It stops short of explicitly naming sibling tools for alternative use cases, but the conditionality is clear enough for an agent to decide when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_market_snapshotGet Market SnapshotBInspect
Get a market overview — top trading cards sorted by value.
Returns the highest-value cards for a specific game with current market prices and low (buy-it-now) prices.
Games: Pokemon, Magic, Yu-Gi-Oh, One Piece, Disney Lorcana, Flesh and Blood, Dragon Ball Super, Digimon, Star Wars, Union Arena, MetaZoo, Cardfight Vanguard, My Hero Academia.
| Name | Required | Description | Default |
|---|---|---|---|
| game | No | Game name (default "Pokemon") | Pokemon |
| limit | No | Number of cards to return (1-50, default 25) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry behavioral disclosure. It discloses the return content, value-based sorting, and included price types, but does not mention whether data is live/cached, how invalid game names are handled, or any rate limits. Adequate but with meaningful gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the main purpose and returns content in the first two sentences. The game list is long but necessary for parameter semantics, and there is no filler or repetition. It earns its length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward read-only snapshot with an output schema and fully documented optional parameters, the description covers core behavior, supported games, and price types. Minor omissions like error behavior and result ordering details are not critical given the output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 adds a concrete enumerated list of supported games, which the schema lacks, and clarifies that results are scoped to a specific game. The limit parameter's effect is implied by 'top trading cards' and is already fully described in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the resource (market overview), the action (get), and the specific output: top trading cards sorted by value with market and buy-it-now prices. It distinguishes itself from price-lookup or search siblings by focusing on highest-value cards per game, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus siblings like get_price, search_cards, or get_sports_board. The only usage context is implied by the phrase 'market overview'; there are no explicit conditions, exclusions, or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_merkle_proofGet Merkle ProofAInspect
Get a Merkle proof for on-chain price verification on LitecoinVM.
WHY THIS MATTERS FOR AI AGENTS: Regular API prices require trusting the server. Merkle proofs let you VERIFY the price on-chain without trusting anyone. The proof is a cryptographic guarantee that this exact price was committed to the LitecoinVM blockchain by the oracle operator.
The TCG Price Oracle commits 284K actively-priced products to a single Merkle root on LiteForge daily. This tool returns the proof array that can be submitted to the MerklePriceOracle smart contract to trustlessly verify any card's price.
NOTE: Only actively-priced products (market_price > 0) are included in the Merkle tree. Zero-price catalog entries cannot be proven.
| Name | Required | Description | Default |
|---|---|---|---|
| product_id | Yes | TCGPlayer product ID (e.g. 98580 for Shadowless Charizard) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It states the tool returns a proof array, describes the daily Merkle root commitment, and discloses that only actively-priced products are included. The behavior is clear for a simple read-only proof fetch, though it does not describe error behavior or proof expiration.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is longer than minimal, but it is well-structured with a clear opening, contextual 'WHY THIS MATTERS' section, and a note that highlights a critical limitation. Each section serves a purpose for an AI agent deciding whether this tool is appropriate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with an output schema, this description is complete: it explains what the proof is for, how it is produced, how to use it, and the key edge case where proof generation is impossible. Nothing essential is missing for correct invocation and selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage for product_id, so the baseline is 3. The description adds extra semantic value by explaining that the product must be actively priced (market_price > 0) to have a proof, which goes beyond the schema's generic 'TCGPlayer product ID' description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Get a Merkle proof for on-chain price verification on LitecoinVM.' It further clarifies the deliverable as a proof array committed to the LitecoinVM blockchain by the oracle operator, making the tool's purpose unambiguous and distinct from a normal price lookup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains why an agent would want this tool instead of trusting regular API prices, which is strong contextual guidance. It also includes an explicit constraint: zero-price catalog entries cannot be proven. It does not name sibling alternatives like get_price or get_graded_proof, so it falls just short of full when-to-use versus alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_oracle_scorecardGet Oracle ScorecardAInspect
The oracle's public accuracy record — verify before trusting. Rolling 30-day coverage on matured forecasts (recent: 90% bands covered 93%+ across 181K+ graded predictions), the souls' scored track record, and the blind slab study. Every scored prediction was committed to LiteForge
Base before its outcome existed, so the table cannot be curated.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It provides useful behavioral context: coverage is a rolling 30-day window over matured forecasts, and the data is claimed to be non-curatable because predictions were committed before outcomes existed. It does not explicitly state that the call is read-only or whether any access restrictions apply, but 'public accuracy record' and the get-style name make the safety profile reasonably clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core message: this is the oracle's accuracy record. The second sentence is dense and contains statistical detail, but it still earns its place by explaining the scoring scope and integrity guarantee. Minor jargon like 'souls' and 'blind slab study' slightly reduce clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with an output schema, the description is largely sufficient: it explains what the scorecard contains and why it should be trusted. It could be more complete by explicitly differentiating from sibling tools, especially get_graded_proof, but the agent can still invoke and interpret the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. The description does not need to explain parameter meanings, and its content about coverage and provenance adds contextual rather than semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a clear resource: the oracle's public accuracy record, and it specifies what it contains (rolling 30-day coverage, souls' scored track record, blind slab study). The purpose is implied through 'verify before trusting,' but there is no explicit action verb like 'returns' or 'retrieves.' It distinguishes from siblings like get_forecast and get_graded_proof conceptually, though not by name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'verify before trusting' gives an explicit use case: call this before relying on oracle predictions. It does not, however, mention alternatives or state when not to use it, such as pointing users to get_graded_proof for individual prediction evidence or get_forecast for current forecasts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_priceGet PriceAInspect
Get the latest market price and historical price data for a trading card.
Provide either a card name (fuzzy search) or a TCGPlayer product ID. Returns current market price, low (buy-it-now) price, and daily price history for the requested time window.
The price history is what powers the Monte Carlo simulation — it's the same data used to calibrate drift and volatility parameters.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Days of price history to include (1-365, default 30) | |
| card_name | No | Card name to search (e.g. "Charizard Base Set Holo") | |
| product_id | No | TCGPlayer product ID for exact lookup (e.g. 98580) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that this is a read-only lookup returning market price, low price, and price history, and adds valuable context that the history feeds Monte Carlo simulation. It does not mention rate limits or error handling, but this is acceptable for a data-retrieval tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured: the main purpose is stated first, then input options, then return contents, then a useful note about the data's role in simulation. Every sentence adds meaningful context without filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and only three optional-looking parameters, the description is mostly sufficient. It explains the required input pattern (either name or ID), the time window, and the returned data. A minor gap is not explicitly stating that at least one of card_name or product_id must be provided despite the schema marking both optional.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already covers all parameters at 100% with descriptions, so the baseline is 3. The description adds clarity by explaining that card_name is a fuzzy search and product_id is an exact lookup, and that days defines the window, but it does not add substantial new detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets price data for a trading card, listing specific outputs (current market price, low price, daily history). It is distinct from siblings like simulate_price or get_market_snapshot, but does not explicitly compare itself to them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly tells the agent to provide either a card name via fuzzy search or a TCGPlayer product ID, and that days controls the history window. It does not explicitly say when to prefer this over get_market_snapshot or search_cards, but the intent is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sports_boardGet Sports BoardBInspect
Daily sports movers — hot, high-volume players per live league with calibrated 7-day forecast context. The underlying stat panels are merkle-committed daily to SportsStatsRegistryV2 on LiteForge + Base. Off-season leagues report dormant instead of serving frozen numbers.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| league | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and it does disclose concrete behavior: daily cadence, live-league condition, merkle commitment, and off-season dormant reporting instead of stale numbers. This goes well beyond a generic getter, though it stops short of covering error cases or data volume limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences with no filler, front-loading the main output before adding provenance and off-season behavior. The second sentence's blockchain registry detail is niche but earns its place as behavioral context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple and has an output schema, so return details don't need description. But the missing parameter semantics and lack of sibling differentiation leave gaps an agent must resolve before confident invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description needed to explain both parameters. It only tangentially links 'league' via 'per live league' and says nothing about 'limit', its default, or the meaning of an empty string.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource as a daily sports movers board for hot, high-volume players per live league, which distinguishes it from siblings like get_forecast or get_market_snapshot. However, it lacks an explicit verb like 'returns' or 'lists', so it reads more like a product label than a clear operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when daily sports movers are needed and mentions live leagues, but it never states when to prefer this over sibling tools or names any alternatives/exclusions. An agent must infer the use case from the noun phrase 'daily sports movers.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
oracle_statusOracle StatusAInspect
Get live status of the TCG Price Oracle on LitecoinVM.
Reads DIRECTLY from the LiteForge blockchain (Chain ID 4441) via the Caldera RPC endpoint — this is NOT cached data, it's a live on-chain read at the moment you call it.
Returns: • MerklePriceOracle: current root, total products, freshness, update count • TCGPriceOracleV2: total TWAP updates, last update timestamp • Network: connection status, chain ID, RPC URL, explorer link • Database: card count, price rows, latest data date (from API)
No arguments required.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of explaining behavior. It does so by stating that it reads directly from the LiteForge blockchain via Caldera RPC on Chain ID 4441, and that the data is not cached. It also lists the returned objects, giving the agent a clear expectation of freshness and scope. It omits failure modes and latency, but these are secondary for a status read.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: purpose, key behavior, then bulleted return sections. Every sentence adds information, and the 'No arguments required' note cleanly wraps up the parameter story. It is easy to scan and parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-argument status tool, this description is complete. It explains the live on-chain nature, lists all four output groups, and references a chain ID and RPC endpoint. The presence of an output schema further covers the return structure, so nothing critical is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the input schema is an empty object, so no parameter explanations are needed. The description explicitly confirms 'No arguments required,' which aligns with the schema and removes any doubt for the agent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a clear action ('Get live status') and a specific resource ('TCG Price Oracle on LitecoinVM'). It enumerates the exact oracle components returned, distinguishing this from the data-retrieval sibling tools, which all have get_* names.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description frames this as a live on-chain status read and explicitly contrasts with cached data, making its intended use clear. It does not name sibling alternatives or state when not to use it, but the zero-argument signature and status-oriented wording leave little ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_cardsSearch CardsAInspect
Search 446K+ trading card products by name using full-text search.
The catalog contains 446K products total — 284K are actively priced with current market data. ~157K are catalog-only entries (tokens, promos, bundles) with no price history. Disney Lorcana, Flesh & Blood, Dragon Ball Super, Digimon, Star Wars, Union Arena, MetaZoo, Cardfight Vanguard, and My Hero Academia.
Returns product IDs (needed for get_price and get_merkle_proof), card names, games, and current market prices.
| Name | Required | Description | Default |
|---|---|---|---|
| game | No | Optional game filter (e.g. "Pokemon", "Magic", "Yu-Gi-Oh") | |
| limit | No | Number of results (1-50, default 10) | |
| query | Yes | Search term (e.g. "charizard base set", "black lotus", "luffy") |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral burden and does well by disclosing that only 284K of 446K products have current market data and ~157K are catalog-only entries with no price history. This prevents agents from assuming every result will have a price. It also notes the output includes product IDs, names, games, and prices, adding useful behavioral context beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose and then provides relevant catalog statistics, supported games, and output details. The game list is slightly long but valuable for an agent deciding whether the tool applies. No filler or redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists, the description doesn't need to document return shape. It covers the catalog caveat, supported games, and downstream integration with get_price/get_merkle_proof. Minor omissions like pagination behavior or zero-result handling are not critical for a search tool with a limit parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers all three parameters with descriptions (query, game, limit), so schema coverage is 100%. The description adds helpful examples like 'charizard base set' and 'black lotus' and clarifies that search is by name, but it does not substantially extend parameter meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Search') and resource ('446K+ trading card products by name using full-text search'), and clearly differentiates it from siblings by noting it returns product IDs needed by get_price and get_merkle_proof. It also names the supported games, removing ambiguity about catalog scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly positions search_cards as the lookup entry point for trading card products and explicitly connects it to downstream tools ('product IDs (needed for get_price and get_merkle_proof)'). It does not explicitly name alternatives or exclusion criteria, but the usage context is clear enough for an agent to select it over the get_* sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_priceSimulate PriceAInspect
Run a Monte Carlo price simulation for a trading card (opt-in).
For the honest DEFAULT forecast — conformal VaR + Safe-Hold/Momentum grades — use get_forecast. This tool is the stochastic Monte Carlo alternative (Merton/GBM).
HOW THE MATH WORKS: This is NOT fake data. The simulation calibrates parameters from REAL market prices stored in the oracle database (26.9M+ price observations):
Look up the card → get product_id via FTS5 search
Pull up to 365 days of daily price history
Resample to weekly buckets for stable drift estimates
Compute annualized drift (μ) and volatility (σ)
Detect price jumps via 2σ threshold on time-scaled returns
Run 10,000+ vectorized numpy simulation paths
Return percentile forecast bands + risk metrics
If insufficient price history exists (<5 data points), conservative TCG market priors are used (3% drift, 40% vol) and clearly labeled as "default_tcg_priors" in the response.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Forecast horizon in days (1-365, default 30) | |
| model | No | "gbm" or "merton" (default "merton") | merton |
| card_name | Yes | Card to simulate (e.g. "Charizard Base Set Holo") | |
| simulations | No | Number of Monte Carlo paths (100-50000, default 10000) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for disclosing behavior. It goes well beyond a shallow summary: it explains the simulation is calibrated from real market data, lists the algorithmic pipeline, specifies 10,000+ paths, and says fallback priors are clearly labeled. This is strong contextual disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is longer than average but well-structured with a clear lead sentence, an explicit alternative, and a numbered methodology. Every section contributes useful selection and behavior information, though some repetition of 'Monte Carlo' and 'not fake data' could be trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex stochastic simulation tool with no annotations, the description is unusually complete: it covers purpose, alternatives, data source, algorithm steps, fallback behavior, and response labeling. An output schema exists, so the lack of detailed return-value prose is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds extra meaning by explaining how the simulation horizon, model choice, and number of paths fit into the math: e.g., weekly resampling, annualized drift/volatility, Merton/GBM, and 10,000+ paths. This reinforces and extends the schema without fully re-documenting each parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource: 'Run a Monte Carlo price simulation for a trading card' and explicitly names it as the stochastic alternative to get_forecast. This clearly separates it from sibling pricing and forecast tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly tells the agent to use get_forecast for the default forecast and positions simulate_price as the Monte Carlo alternative. It also states the fallback behavior for insufficient price history, which helps the agent decide whether the tool can still return useful results.
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. Dates show when Glama detected each change.
13 tool updates
- First observed
get_census_summary - First observed
get_fantasy_league - First observed
get_forecast - First observed
get_graded_proof - First observed
get_loan_terms_preview - First observed
get_market_snapshot - First observed
get_merkle_proof - First observed
get_oracle_scorecard - First observed
get_price - First observed
get_sports_board - First observed
oracle_status - First observed
search_cards - First observed
simulate_price
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity – fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user, then choose Claim with GitHub. An organization namespace such asio.github.acme/serveralso needs that organization to have installed the Glama AI GitHub App and approved its permissions, because GitHub discloses organization membership only to apps it has installed. Use HTTP or DNS when it has not.HTTP challenge – works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge – works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables detection and analysis of pre-public product launches through web search, content extraction, AI-powered scoring, and automated alerting. Provides comprehensive tools for surfacing stealth startup signals before they trend publicly.MIT

industrylens-mcpofficial
AlicenseNot gradedqualityBmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.MIT- AlicenseNot gradedqualityCmaintenanceEnables AI chat clients to perform market research and competitive intelligence by gathering company overviews, competitor lists, product portfolios, pricing snapshots, and recent news via live Tavily search.MIT
- AlicenseAqualityAmaintenanceDetects hiring intent signals by scanning job boards for specific companies. Returns structured role data for outbound sales targeting.11961MIT