Skip to main content

🔮 TCG Oracle Tools

PyPI License: BUSL-1.1 Python 3.10+

LangChain, CrewAI & OpenAI-compatible tools for trading card game intelligence.

Drop TCG search and daily market snapshots into any AI agent in under 60 seconds.

The packaged tools are tcg_search and tcg_market — both free, no key required. AI grading and conformal risk forecasts are paid endpoints on the same oracle and are called over HTTP (see the endpoint table below) or through the hosted MCP server at https://mcp.the-undesirables.com — they are not bundled as LangChain tools yet.

Install

pip install tcg-oracle-tools

With LangChain support:

pip install tcg-oracle-tools[langchain]

Quick Start (Standalone)

from tcg_oracle import TCGOracleClient

client = TCGOracleClient()

# Search 446K+ products
results = client.search("Charizard", limit=5)
for card in results.results:
    print(f"{card.name}: ${card.market_price}")

# Market snapshot
market = client.market("Pokemon")
print(f"Tracking {market.total_products} products")

LangChain Agent

from langchain.agents import initialize_agent, AgentType
from langchain_openai import ChatOpenAI
from tcg_oracle.langchain import TCGSearchTool, TCGMarketTool

tools = [TCGSearchTool(), TCGMarketTool()]
agent = initialize_agent(tools, ChatOpenAI(), agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION)
agent.run("What's the most expensive Pokemon card right now?")

OpenAI Function Calling

import openai
from tcg_oracle.openai_spec import tools, handle_tool_call

response = openai.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": "Find me Pikachu cards under $50"}],
    tools=tools(),
)

if response.choices[0].message.tool_calls:
    result = handle_tool_call(response.choices[0].message.tool_calls[0])
    print(result)

CrewAI

from crewai_tools import tool
from tcg_oracle import TCGOracleClient

client = TCGOracleClient()

@tool("Search TCG Products")
def search_tcg(query: str) -> str:
    """Search trading card products by name and get market prices."""
    result = client.search(query)
    return str([{"name": c.name, "price": c.market_price} for c in result.results])

AutoGPT Plugin

Point AutoGPT at the OpenAPI spec:

https://oracle.the-undesirables.com/openapi.json

API Endpoints

Endpoint Price Description
/api/v1/search FREE Search 446K+ TCG products
/api/v1/market $0.025 USDC Daily market snapshot
/api/v1/grade $0.10 USDC AI card grading (PSA/Beckett)
/api/v1/simulate $0.015 USDC Calibrated risk forecast (conformal default; Monte Carlo opt-in)

Agent-to-Agent (Virtuals ACP v2)

TCG Oracle is registered on Virtuals ACP. Autonomous agents can discover, hire, and pay for services using USDC on Base.

📝 License & Commercial Use

This project is licensed under the Business Source License 1.1 (BUSL-1.1).

We build in public and support the developer ecosystem — but we also protect the infrastructure and IP of The Undesirables LLC.

✅ What You CAN Do (Free)

  • Personal & Educational Use — Download, modify, and run locally for learning, research, or personal projects.
  • Non-Competing Applications — Integrate our packages into your app, provided your app does not offer TCG market intelligence, pricing aggregation, AI card grading, or on-chain price oracle services as its primary function.
  • MCP / Agent Integration — Connect your AI agent to our tools for non-commercial use.
  • Community Contributions — Security audits, bug fixes, and PRs are always welcome.

🚫 What You CANNOT Do (Use Limitation)

  • Competing Service — You may not use this code to operate a competing TCG market intelligence, pricing aggregation, AI card grading, or on-chain price oracle service.
  • Commercial Resale — You may not wrap our API, data pipelines, or AI models into a paid service without a commercial license.
  • Hosted SaaS — You may not host this software as a service for third parties without written permission.

🔓 Open-Source Conversion

On June 1, 2030 (or 4 years after the first public release of each version), this code automatically converts to the MIT License — fully open source, forever.

🤝 Commercial Licensing

Building a commercial product? Want guaranteed API access or white-label integration? Contact us:

📧 theundesirables7@gmail.com · 🐦 @undesirables_ai

© 2026 The Undesirables LLC

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tcg_oracle_tools-0.3.0.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tcg_oracle_tools-0.3.0-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file tcg_oracle_tools-0.3.0.tar.gz.

File metadata

  • Download URL: tcg_oracle_tools-0.3.0.tar.gz
  • Upload date:
  • Size: 11.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for tcg_oracle_tools-0.3.0.tar.gz
Algorithm Hash digest
SHA256 91d3c5ff970e77d2291c0cef49246b32125c74235e1e683f0d5e05b2d838bd4a
MD5 b0216c606fc97394aef1288f9f9a125b
BLAKE2b-256 833e30e971b6b5e53f2ff3e02c77ebc0a8f3eddadb993c5ac27176a6fab6f9cc

See more details on using hashes here.

File details

Details for the file tcg_oracle_tools-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for tcg_oracle_tools-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e4519988b494a62184596e5f179c96ff5271d2e87a457da5672f74218641df72
MD5 400914053192dfd55fc3d232a8bed773
BLAKE2b-256 a91e0f7289996d2453a828025251b73c6364de30429363c8430ed19edb229e9f

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page