io.github.sailorpepe/undesirables-mcp-server
pkg:pypi:undesirables-mcp-server
TCG oracle: calibrated prices & risk, AI grading, loan terms, fantasy souls - proven on-chain. 23 to
- transport:
- remote + stdio
- credential class:
- self-provisionable
Owner verification
Not yet verified. Verifying proves you control this server and is free, permanently — it never changes a published score.
Start verification →Tools
- card_forecastshallow
Get the conformal-calibrated 30-day price forecast AND letter grades for a single card in ONE free call. Pass either a card_name (resolved to the best match) or a TCGplayer product_id. FREE — no payment required. Returns an agent-complete object: price, as_of, regime, point (median 30d), move_pct, prob_up, band50_pct, band90_pct, var95_pct, var99_pct, low90, high90, safe_hold grade (A+..F), momentum grade (A+..F or "NA" on a drift spike), drift_spike, image_url, card_url, and a one-line plain_english read (e.g. "~12% chance it's below $Y in 30 days; Safe-Hold B, Momentum A"). Use this when a user asks "is this card a safe hold?", "what's the 30-day outlook?", "how risky is X?", or wants a quick grade on a card. Tip: GET /api/v1/forecast (no args) returns the free board of the top ~200 cards if the user wants a market overview.
- census_summaryshallow
The observed graded-slab CENSUS as totals: how many PSA/BGS/CGC/TAG slabs the oracle tracks circulating on the open market (cert-verified — what is listed and pressing on price, NOT a pop report), unique certs, cards covered, grader mix, active-30d counts. FREE, daily, census leaves committed on-chain. The per-card census with median asks is the paid /api/v1/census ($0.05). Use this when: sizing supply behind a grade, or judging how thin a slab market is before trusting an ask.
- check_accuracyshallow
View TCG Oracle's public prediction accuracy dashboard. Shows mean absolute error, hit rates, grade distribution, and recent prediction reports. FREE — no payment required. Use this when: a user asks "how accurate is the grading AI?" or wants to verify the model's track record.
- fantasy_leagueshallow
The Undesirables fantasy league — 4,444 AI personalities draft weekly fantasy lineups (MLB live; more sports at kickoff) over the oracle's calibrated player forecasts. FREE. Lineups are merkle-committed to Base + LiteForge (stream fantasy_souls) BEFORE games score; points come from the daily-committed stat panels. No token_id: the league feed — standings, this week's commit txs, every minted soul ranked by projected fantasy points with drafting style. With token_id (1..minted): that soul's full card — lineup with per-player floor/mid/ceiling fantasy points, teams, personality traits and its drafting strategy. Sealed souls return 404 until minted. Use this when: an agent wants "which AI personality is winning fantasy", a soul's lineup and strategy, or a provable AI-agents-play-fantasy feed. Human page: https://oracle.the-undesirables.com/fantasy
- grade_cardshallow
AI-grade a trading card image using a 3-stage pipeline: (1) Qwen Vision LLM analyzes corners, edges, surface defects (2) OpenCV measures exact centering ratios programmatically (3) BGS professional capping algorithm adjusts the final grade Returns PSA/Beckett-calibrated subgrades and an overall condition score. Also includes a free ROI verdict (should you grade this card?). PAID: $0.10 per call via x402. THREE rails are accepted, not just Base: - USDC on Base (eip155:8453) - USDC on Solana (solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp) - USDG on Robinhood Chain (eip155:4663) Solana settlement is verified working end to end. (Audit 2026-07-30, BUG-12.) Use this when: a user has a card image and wants to know what grade it would receive from PSA or Beckett.
- grade_or_notshallow
Answers: "Should I grade this card? Will I make money?" Combines AI grade prediction with PSA fee schedules, shipping costs, and graded market values to calculate expected ROI. Returns a clear GO/NO-GO verdict with best-case, predicted, and worst-case profit. PAID: $0.10 USDC per call. Use this when: a user is deciding whether to submit a card for professional grading and wants to know if it's financially worth it.
- graded_asksshallow
GRADED SLAB asking prices for one card — PSA/BGS/CGC medians by grade with listing counts, low/high, an as-of date per grade and the explicit price_basis (these are eBay ASKS, not sold prices; asks are a ceiling). FREE, refreshed daily by the eBay enrichment, merkle-committed on GradedPriceOracle. The LIVE value layer while the USD raw-card panel is frozen — and the basis the graded- slab loan terms are built on. product_id = TCGplayer id from search. Use this when: "what does a PSA 10 of this go for?", "raw vs graded premium?", or before loan_terms_preview / the paid /api/v1/loan-terms quote.
- jp_summaryshallow
The JAPANESE card market today, as numbers — no card names or prices. How many cards the dealer panel priced this morning (365K+ across 24 games, ~167K carrying BOTH an ask and a buyback bid), the dealer bid as a share of ask at each price band (a bulk floor under ~¥300, a real quote above), depth per game, how much of the board actually moved since yesterday and a week ago, and the day's Merkle root with both chain txs. FREE, refreshes once per ingest day. The only Japanese panel that is LIVE while the USD panel is frozen. Use this when: "what did the Japanese market do today?", "is the dealer paying more or less for cards this week?", or before reasoning about any single Japanese card — the per-card page is /jp/card/{game}/{set_code}/{card_id} (HTML, one card per request; there is deliberately no listing route).
- loan_terms_previewshallow
FREE worked derivation of safe lending terms for a trading card on today's published free board (250 cards): value -> calibrated 99% tail -> liquidation buffer -> liquidity cap -> max LTV, all six steps shown with the price source and merkle proof links. term_days: 7, 14 or 30. Cards off the free board return 404 with a pointer to the paid quote: /api/v1/loan-terms ($0.10 x402) covers all 2,000 rated cards plus graded slabs and a suggested APR premium. The rated universe is public at /api/v1/loan-terms/universe. Informational only — not financial advice. Use this when: an agent wants collateral math for a card, or to explain how the Loan-Terms Oracle derives an LTV before paying for a full quote. Human page: https://oracle.the-undesirables.com/lending
- loan_universeshallow
Every graded slab the Loan-Terms Oracle will quote — ~1,100 slabs with grade, live ask median, census depth, liquidity tier (deep/moderate/thin/illiquid), rank and a free_board flag (top 250 by census depth carry a free worked derivation via loan_terms_preview). FREE. v2 (2026-09-12): graded slabs only — raw-card quotes are no longer issued because the USD level froze 2026-09-07. Use this when: an agent needs a product_id + grade to ask for terms, or wants to know which collateral is deep enough to lend against at all.
- market_snapshotshallow
Daily TCG market snapshot with top movers, biggest gainers/losers, and volume leaders across all 25 supported card games. PAID: $0.025 USDC per call (x402 — USDC on Base or Solana, or USDG on Robinhood Chain). Previously documented as FREE, which was wrong: the server has always returned a 402 for this route. An autonomous caller budgeting off that docstring hit an unbudgeted paywall. (External audit 2026-07-30, BUG-2.) Use this when: a user asks "what's trending in the card market?" or "what cards are going up/down in value?"
- optimize_portfolioshallow
Optimize a trading card portfolio using Markowitz mean-variance analysis with Merton jump-diffusion Monte Carlo simulations. Provide comma-separated card names, budget, and risk tolerance to receive optimal position sizing, per-card allocation weights, Sharpe ratios, and rebalancing recommendations. PAID: $0.50 USDC per call. Use this when: a user has a budget and wants to know "how should I allocate my money across these cards?"
- oracle_scorecardshallow
The oracle's HEADLINE scorecard, all games combined — check us before trusting us. FREE, no arguments. Returns the rolling 30-day conformal coverage on matured price forecasts (do the 90% bands actually cover 90%? recent: 93.3% over 181K+ graded predictions), the souls' on-chain scored track record, and the blind slab-grading study. Every scored prediction was merkle-committed to Base + LiteForge BEFORE its outcome existed, so this table cannot be curated after the fact. Use this when: an agent wants evidence the calibration claims are real, or a trust-but-verify check before paying for forecasts or loan terms.
- recommend_workflowshallow
Describe your goal in natural language and get a recommended sequence of TCG Oracle API calls to accomplish it. FREE — no payment required. Example goals: - "I have 50 raw Pokémon cards and $500 budget" - "Is this Charizard worth grading?" - "Find me undervalued cards to flip" - "Predict the price of a Black Lotus in 90 days" Use this when: you're not sure which tool to call first, or need a multi-step workflow recommendation.
- search_tcg_productsshallow
Search 449K+ TCG products across 25+ card games. Returns card names and IDs, plus current market prices. FREE — no payment required. Use this when: a user asks about a specific card, wants to find cards, or needs current pricing for any trading card game product. HOW TO SEARCH (card name AND set name are both searchable): • Card name alone casts the widest net: "Charizard", "Black Lotus". • Add the SET to pin down a printing: "Base Set Charizard" returns the Base Set, Base Set 2 and Shadowless Charizards as separate entries. This matters — printings of the "same" card differ wildly in value. • Every result carries a "set" field. Use it to choose, then pass that result's product_id to the other tools (card_forecast, grade_or_not, simulate_price) — exact, and avoids re-searching. • Do NOT include rarity or condition words: "Holo", "1st Edition", "Shadowless", "PSA 10" are not indexed and will sink an otherwise-good query. "Base Set Charizard Holo" → drop "Holo". • Got nothing? Remove the rarity words first, then fall back to the plain card name.
- simulate_priceshallow
Predict future trading card value. The default model is the conformal-calibrated risk forecast (deterministic drift + regime-aware split-conformal bands, honest VaR/CVaR, plus Safe-Hold & Momentum letter grades). Monte Carlo GBM and Merton jump-diffusion are available opt-in via model="gbm" or model="merton". Returns full forecast percentiles (5th–95th), model parameters, and confidence intervals with complete mathematical transparency. PAID: $0.015 USDC per call. Use this when: a user wants to know "what will this card be worth in 3 months?" or wants price trajectory predictions.
- soul_callsshallow
Full public record for ONE Undesirable soul: every open (locked) prediction and its recent scored results. FREE — no payment required. Use this when: a user wants to inspect a specific soul's calls in detail, or wants to verify one — each open call carries a lock_hash plus the week's merkle root and the on-chain tx it was committed in, BEFORE the outcome was known. That is what makes the record checkable rather than claimed. Args: token_id: minted soul, 1-273.
- souls_in_walletshallow
Show every Undesirable soul a wallet holds, with each soul's public prediction track record and its most recent calls. FREE — no payment, no signature, no wallet connection required. Use this when: someone asks what Undesirables they own, how their souls are performing, what calls their souls have made, or which of their souls is the most accurate. HOW IT WORKS • Ownership is read from Ethereum mainnet (ERC-721 0xA893648A701C03B14bF2FB767B72b2C55ed5c17A). Only the minted souls 1-273 have public records. • Nothing here is private, so you can look up ANY address — the caller does not have to prove they own it. Ask the user for their address. • Each minted soul locks 3 card predictions weekly, chosen deterministically from its on-chain personality traits. The oracle scores them 30 days later against real market prices. WHAT YOU GET BACK • souls[] — per soul: rating (A+..F / UNRATED), matured, hits, hit_rate, brier, open_calls, and recent_calls with each call's outcome (hit / miss / push) • wallet_totals — combined open + matured calls and overall hit rate • best_soul — the holder's most accurate soul, once any have matured HOLDERS WITH SEVERAL SOULS: this is a roster. Offer to compare them, or to speak as a specific one — each has different traits and its own record. IMPORTANT — ratings mature on a schedule. The first predictions mature 2026-07-31, so before then every soul reads UNRATED with open calls only. That is expected, not an error: the calls were committed on-chain BEFORE their outcomes, which is the entire point. Say so rather than implying the soul has no history. Args: address: 0x-prefixed EVM address to look up. calls: recent scored calls to include per soul (0-12, default 5).
- sports_boardshallow
Daily sports movers board — hot, high-volume players per live league with conformal 7-day forecast context, Heat/Form letter grades, and headshots. FREE. Off-season leagues report themselves dormant instead of serving frozen numbers, and every response carries the current out-of-sample calibration verdict (the bands are validated daily against a 90% target). Use this when: an agent wants "who's hot in MLB", player ids for the paid /api/v1/sports/forecast endpoint ($0.05 — full per-stat calibrated bands), or fantasy-adjacent market context. The underlying stat panel is merkle-committed on-chain daily (Base + LiteForge) — provable, not vibes.
- sports_playersshallow
The sports player directory — ids, names, teams and positions for the leagues currently ON THE BOARD (a league appears once it is in season with enough games for the panel; off-season leagues are absent, not stale), the ids the paid /api/v1/sports/forecast ($0.05) and the fantasy league key on. FREE. Filter by league (mlb, nba, ncaab, ncaaf, nfl, nhl) and/or a name fragment; an absent league returns zero players, which is the honest answer. Use this when: an agent has a player name and needs the id, or wants to enumerate a league's roster on the stat panel.
- syndicate_leaderboardshallow
The Syndicate's shared 'Biggest Scores' leaderboard — humans and AI agents on ONE board; agent entries carry {"agent": true} and a model label. Win a game (own the city) and your score posts automatically.
- syndicate_moveshallow
Submit one day of orders to your Syndicate game and get the resolved day back (events + new state). One order per crew member per day. orders: list of {"agentId": int, "targetId": int, "actionType": str} actionType is one of: raid, driveby, extort, garrison, rob, patrol, heal, pray, retain, injunction, cook_books, audit, hire, swat_raid, charity, intimidate, launder, rig_games, brawl, ambush, campaign, precinct_raid, lay_low, steal_car, fence. Empty orders list = pass the day (the world still moves: rivals act, rackets pay, heat decays). targetId comes from the `targets` and `territory` lists in syndicate_state.
- syndicate_stateshallow
The Syndicate — a FREE turn-based organized-crime strategy game you (the agent) can play. Same city, same rules, same leaderboard as the human game at play.the-undesirables.com. Call with NO session_id to start a new game (you get a sessionId, your 3-member crew, capital, and a target list). Call with your session_id to re-read the current state any time. Full rules: play.the-undesirables.com/SKILL.md Strategy tip: looted cards are priced by the REAL TCG market — use card_forecast / search_tcg_products to decide what to fence and when.
- technocore_infoshallow
Technocore.chat server documentation surface (llms.txt) plus what this integration is: read-only technocore access inside the TCG Oracle MCP. FREE. Use this when: an agent wants to learn the technocore API itself, or how to interact with the Flop Network agent ecosystem. Also returns proof_feed: this oracle's own verifiable price feed on technocore (/r/d-undsr-oracle — signed, chain-anchored, checkable by anyone).
- technocore_noteshallow
Read a shared key-value note from technocore.chat — the way agents publish state for other agents. FREE, read-only. Use this when: an agent needs a value another agent published to a technocore namespace (config, observations, coordination state).
- technocore_roomshallow
Read the recent messages in one technocore.chat room. FREE, read-only — this tool is structurally incapable of posting. Use this when: an agent wants to follow a technocore room's conversation (e.g. Flop Network testnet/faucet announcements) without joining.
- technocore_roomsshallow
List rooms on technocore.chat — the agent-to-agent chat/notes server for the upcoming Flop Network (agent economy L1). FREE, read-only. Use this when: an agent wants to discover where other agents are coordinating, or explore the technocore ecosystem.
- trending_cardsshallow
Top trading cards by PRICE VELOCITY (drift), highest absolute movement first. NOTE (corrected 2026-07-30): this previously claimed "30-day sales volume". Sales volume and view counts are NOT in the dataset and the API itself now explicitly disclaims them — see `ranked_by` in the response. Each row carries the same conformal risk model the free /api/v1/forecast board uses. Band and VaR PERCENTAGES are regime-level constants by design (regime-aware split conformal), so cards in the same regime share them; absolute values differ per card. Do not read it as a per-card fit. Covers all 25+ supported TCG games. PAID: $0.025 USDC per call. Use this when: a user asks "what cards are hot right now?" or "what's selling the most?"
Embed this server’s score
Tool count and median score across every tool in this server’s corpus — honest in a way a single cherry-picked tool’s badge wouldn’t be.
[](https://vouch.tools/servers/873e58b2-e0b8-4797-91c9-8704773308aa)