ThinkerNotes
Search and read your own notes: insights, drafts, book and podcast notes. Read-only, OAuth.
Beschreibung vom Entwickler (englisches Original)
Pokemon TCG MCP server: PSA grading, collection management, and multi-provider pricing.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
PSA_API_TOKEN, POKEMONTCG_API_KEY, PRICECHARTING_TOKEN, TCG_DB_PATHAls geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"tcg": {
"command": "uvx",
"args": [
"tcg-mcp"
],
"env": {
"PSA_API_TOKEN": "your-value",
"POKEMONTCG_API_KEY": "your-value",
"PRICECHARTING_TOKEN": "your-value",
"TCG_DB_PATH": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add tcg --env PSA_API_TOKEN=your-value --env POKEMONTCG_API_KEY=your-value --env PRICECHARTING_TOKEN=your-value --env TCG_DB_PATH=your-value -- uvx tcg-mcpTrag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"tcg": {
"command": "uvx",
"args": [
"tcg-mcp"
],
"env": {
"PSA_API_TOKEN": "your-value",
"POKEMONTCG_API_KEY": "your-value",
"PRICECHARTING_TOKEN": "your-value",
"TCG_DB_PATH": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"tcg": {
"type": "stdio",
"command": "uvx",
"args": [
"tcg-mcp"
],
"env": {
"PSA_API_TOKEN": "your-value",
"POKEMONTCG_API_KEY": "your-value",
"PRICECHARTING_TOKEN": "your-value",
"TCG_DB_PATH": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
TCG_DB_PATH envDiese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 9. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto seanlok bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Das musst du eintragen: PSA_API_TOKEN, POKEMONTCG_API_KEY, PRICECHARTING_TOKEN
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (0.4.0) kam vor 6 Monaten in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Python (uv) auf deinem Computer.
In derselben Kategorie: ThinkerNotes, Tandoor Recipe MCP, Slotlock
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
Search and read your own notes: insights, drafts, book and podcast notes. Read-only, OAuth.
Recipes, meal plans, shopping lists and more for your local or self-hosted Tandoor instance.
Calendars for AI agents: free/busy, next free slot, and bookings PostgreSQL never double-books.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
A Pokemon TCG MCP server. Looks up graded cards (PSA today, CGC/BGS
stubbed), manages your owned collection in a local SQLite DB, queries
pricing providers (Pokemon TCG API + PriceCharting), tracks a watchlist
with target prices, and snapshots PSA pop counts so you can see trends
over time.
tcg-mcp is a Model Context Protocol server. Install it once, wire it into Claude Desktop / Claude Code / Cursor / any MCP client, and your assistant gains 25 tools for working with PSA cert data, your personal collection, and live market prices.
**PSA grading (tcg_psa_*)** — cert lookup, front/back images, snapshot pop data over time, plus a workflow tool that looks up a cert and records it as owned in one call.
**CGC / BGS (tcg_cgc_*, tcg_bgs_*)** — stubs in v0.2; no public API exists for either grader. Listed for routing parity; will route cleanly if either grader publishes an API.
**Collection (tcg_collection_*)** — add raw or graded cards (or sealed products: ETBs, booster boxes, UPCs, tins), list with filters, update cost basis, soft-delete (mark sold) or hard-delete, attach a card to a pricing listing, get a cost-basis summary or a live market valuation that joins against the most recent pricing snapshots.
**Pricing (tcg_pricing_*) — search a provider, get a full price quote (top-level market/low/high plus per-variant breakdown for Pokemon TCG API, plus per-grade levels for PriceCharting), persist snapshots into the local DB, bulk-snapshot every attached card in one call with per-provider rate-limit awareness, and query historical snapshots** as a time series for trend analysis.
**Watchlist (tcg_watchlist_*)** — add target buy prices with thesis text, list by horizon (flip / hold / sealed), update, and close with a reason (bought / thesis_invalidated / manual).
Meta (`tcg_list_providers`) — discovery tool that shows which grading + pricing providers are enabled, what env var each needs, and what tools are in the namespace.
For the full tool list run tcg_list_providers after install or read the architecture doc.
The server works without any tokens — Pokemon TCG API queries, collection, and watchlist tools all function on a fresh install with zero credentials.
uvx (recommended, zero install)# install uv if you don't have it
curl -LsSf https://astral.sh/uv/install.sh | sh
uvx tcg-mcp --help
pipxpipx install tcg-mcp
tcg-mcp --help
pippython3 -m pip install tcg-mcp
git clone https://github.com/seanlok/tcg-mcp.git
cd tcg-mcp python3 -m venv .venv source .venv/bin/activate pip install -e ".[dev]" pytest # run the test suite
Copy .env.example to .env and fill in any tokens you have:
cp .env.example .env
$EDITOR .env
Or set the env vars however your client supports it (most clients let you specify env per MCP server in the config).
| Env var | Required for | Notes |
|---|---|---|
PSA_API_TOKEN | PSA tools | Get one — free |
POKEMONTCG_API_KEY | Higher Pokemon TCG API rate limit (optional) | Get one — free |
PRICECHARTING_TOKEN | PriceCharting tools | Paid subscription required |
TCG_DB_PATH | Local DB location | Default ~/.tcg-mcp/tcg.db |
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS), %APPDATA%\Claude\claude_desktop_config.json (Windows), or ~/.config/Claude/claude_desktop_config.json (Linux):
{
"mcpServers": { "tcg-mcp": { "command": "uvx", "args": ["tcg-mcp"], "env": { "PSA_API_TOKEN": "your-token-here", "TCG_DB_PATH": "~/Documents/tcg-mcp.db" } } } }
Quit Claude Desktop fully (⌘Q on macOS — closing the window isn't enough) and relaunch.
claude mcp add tcg-mcp -- uvx tcg-mcp
Then export the tokens you have in the shell that runs claude.
Same shape — point the client at:
command: uvx
args: ["tcg-mcp"] env: PSA_API_TOKEN=... # optional
After wiring up the client, ask it:
"Use tcg-mcp to list providers."
You should see pokemontcg enabled, plus psa enabled if your token is set, and stubs for the others.
Then try a real lookup:
"Search Pokemon TCG API for Charizard ex from Obsidian Flames."
"Add a 1999 Pokemon Base Set Charizard #4 (raw) to my collection — paid $250 on 2026-04-15."
"Add Charizard ex Surging Sparks to my watchlist with a target buy price of $180."
"What's my collection cost basis?"
+----------------------+
| MCP client | Claude Desktop, Cursor, etc. +----------+-----------+ | stdio (JSON-RPC) +----------v-----------+ | server.py | FastMCP — tool registration, validation +----------+-----------+ | +-------+-------+----------------+ | | | +--v--+ +--v--+ +----v----+ | psa | ... |pricing| | storage | SQLite — collection, +--+--+ +--+----+ +----+----+ watchlist, pop trends, | httpx | httpx | pricing snapshots +--v---------------v----+ +----v----+ | PSA / Pokemon TCG | | tcg.db | | API / PriceCharting | +---------+ +-----------------------+
Provider abstractions (providers/base.py, pricing/base.py) make adding a new grader or pricing source a single-file change. See docs/adding-a-provider.md.
All your personal data — collection, watchlist, pricing snapshots, pop snapshots — lives in a single SQLite file. Default location is ~/.tcg-mcp/tcg.db. Point TCG_DB_PATH at any path you prefer.
The file format is plain SQLite, so you can inspect or back up the data directly:
sqlite3 ~/.tcg-mcp/tcg.db
.tables SELECT subject, grade, acquisition_price FROM owned_cards WHERE status='owned';
Schema is in src/tcg_mcp/storage/schema.sql. Migrations are forward-only and idempotent (safe to run on every startup).
set_name; for finer-grained set parsing, reach into the raw payload.NotSupportedError if called. Implementation depends on either grader publishing a public API or an explicit decision to support polite scraping.PRICECHARTING_TOKEN the provider is registered as disabled and graded-card prices aren't available — but Pokemon TCG API still gives you raw market prices.Standing constraint: every milestone below has a free path as the
default. Paid providers (GemRate, eBay Marketplace Insights, etc.) stay
optional add-ons that activate only when their key is configured.
tcg_pricing_snapshot_collection, tcg_pricing_get_history, rounded per-item valuation, clearer PSA 429 error message, CHANGELOG.md.tcg_catalog_*) backed by Pokemon TCG API, tcg_collection_set_completion with watchlist intersection, richer tcg_collection_search, smart-routed tcg_pricing_get_card.See CHANGELOG.md for the full version history.
Contributions welcome. To add a new grading or pricing provider, see docs/adding-a-provider.md. The contract is intentionally small: implement a Protocol method, register it conditionally based on credentials, write a mock-httpx test.
# Run tests + lint locally
pytest ruff check .
This project is independent. It is not affiliated with PSA, CGC, Beckett, The Pokemon Company, Nintendo, TCGPlayer, Cardmarket, PriceCharting, or any other organization. Each external API call is subject to that provider's Terms of Service.
MIT — see LICENSE.