Critical Raw Minerals & Urban Mining Oracle (x402)
Deterministic Web3 x402 Critical Minerals & Urban Mining Scrap Valuation Oracle for Autonomous AI Agents on Base (USDC)
README
Critical Raw Minerals & Urban Mining Oracle (minerals-oracle-x402)
High-performance deterministic micro-oracle service designed for autonomous trading, supply chain, and RWA (Real World Asset) agents on Base Network. Serves real-time spot pricing, COMEX/LME cross-exchange arbitrage spreads, and urban-mining scrap benchmark yield valuations for critical raw physical commodities.
- ๐ Live Cloud Run Service: https://minerals-oracle-x402-212942243360.asia-northeast3.run.app
- ๐ช Free Real-Time Alpha Hook: https://minerals-oracle-x402-212942243360.asia-northeast3.run.app/api/v1/oracle/alpha-signals
- ๐ Economics ROI Proof: https://minerals-oracle-x402-212942243360.asia-northeast3.run.app/api/v1/oracle/economics-roi
- ๐ LLM Agent Manifest: https://minerals-oracle-x402-212942243360.asia-northeast3.run.app/llms.txt
- ๐ Swagger API Docs: https://minerals-oracle-x402-212942243360.asia-northeast3.run.app/docs
โก Key Features
-
Normalized Critical Commodities Price Feeds:
- Silver (
Ag): LBMA & COMEX spot inUSD/troy_oz,USD/g,USD/kg. - Platinum (
Pt): LPPM & NYMEX spot inUSD/troy_oz,USD/g. - Copper (
Cu): LME Grade A Cathode & COMEX inUSD/mt,USD/lb,USD/kg. - Lithium (
Li): Battery Grade 99.5% $\text{Li}_2\text{CO}_3$ / $\text{LiOH}$ inUSD/mt,USD/kg. - Rare Earths (
NdDy): Permanent magnet grade Neodymium-Dysprosium ($\text{PrNd}/\text{DyFe}$) composite inUSD/kg.
- Silver (
-
Locational Arbitrage & Basis Spreads:
- COMEX vs. LME Copper arbitrage calculation factoring in trans-oceanic freight & import tariffs.
- COMEX vs. LBMA Loco London Silver spread.
- SMM Domestic China vs. Fastmarkets CIF Rotterdam Lithium premium/discount.
- NYMEX vs. LPPM Platinum spread.
-
Urban Mining & Circular Economy Valuation Engine:
EV_BATTERY_BLACK_MASS: Hydrometallurgical recovery of $\text{Li}$, $\text{Ni}$, $\text{Co}$, and $\text{Mn}$ with payable recovery yields and treatment charges (TC/RC).AUTO_CATALYST_CERAMIC: Spent catalytic converter PGM recovery ($\text{Pt}$, $\text{Pd}$, $\text{Rh}$) from ceramic monolith assays.E_WASTE_HIGH_GRADE_PCB: Precious and base metal extraction ($\text{Au}$, $\text{Ag}$, $\text{Cu}$) from shredded PCB feedstock.WIND_EV_PERMANENT_MAGNETS: NdFeB scrap recycling for separated rare earth oxides ($\text{Nd}$, $\text{Dy}$, $\text{Pr}$).
-
Web3 Monetization via x402 on Base:
- Enforces micro-payments (0.005 USDC per query) via HTTP 402 challenge-response on Base (Chain ID
8453). - Native Base USDC token:
0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913. - Supports EIP-712/EIP-191 cryptographic signatures and facilitator verification.
- Enforces micro-payments (0.005 USDC per query) via HTTP 402 challenge-response on Base (Chain ID
-
Multi-Agent Standards Native:
- Google AP2 (
/.well-known/ap2): Agent Protocol v2 manifest. - Model Context Protocol (MCP): Tool schema definitions (
mcp_tool_spec.json) and/mcp/invokedispatcher. - OpenAPI / Swagger (
/docs): Standard machine-readable and interactive API documentation.
- Google AP2 (
๐ Repository Structure
minerals-oracle-x402/
โโโ app/
โ โโโ __init__.py
โ โโโ main.py # FastAPI application, routing & MCP endpoints
โ โโโ feed_engine.py # Deterministic commodity pricing, spread & scrap engine
โ โโโ x402_verifier.py # HTTP 402 challenge & EIP-712 payment verifier
โ โโโ schemas.py # Pydantic data contracts & schemas
โโโ tests/
โ โโโ __init__.py
โ โโโ test_client.py # Autonomous agent payment test suite
โโโ .well-known/
โ โโโ ap2.json # Google Agent Protocol AP2 manifest
โโโ mcp_tool_spec.json # FastMCP tool definition for LLM agents
โโโ Dockerfile # Ultra-lightweight multi-stage container
โโโ requirements.txt # Python dependencies
โโโ README.md # Documentation & quickstart
๐ Quick Start
1. Local Setup
# Clone and enter directory
cd minerals-oracle-x402
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Run development server
uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload
Interactive documentation will be available at http://localhost:8000/docs.
2. Running via Docker
# Build lightweight container
docker build -t minerals-oracle-x402 .
# Run container
docker run -p 8000:8000 minerals-oracle-x402
๐ณ x402 Payment Flow Specification
sequenceDiagram
autonumber
actor Agent as Autonomous AI Agent
participant Oracle as minerals-oracle-x402
participant Base as Base Network (USDC)
Agent->>Oracle: GET /api/v1/oracle/prices
Oracle-->>Agent: HTTP 402 Payment Required<br/>(Nonce, Price: 0.005 USDC, Base Chain ID: 8453)
Note over Agent: Agent signs payment challenge<br/>using private key (EIP-712/EIP-191)
Agent->>Oracle: GET /api/v1/oracle/prices<br/>Header: Authorization: x402 <base64_payload>
Oracle->>Oracle: Verify signature / Facilitator settle
Oracle-->>Agent: HTTP 200 OK<br/>Certified Oracle Feeds & Attestation Hashes
Payment Authorization Header Format
Authorization: x402 eyJub25jZSI6ICIxYTIz...IiwgInNpZ25hdHVyZSI6ICIweDk5...In0=
Where the decoded JSON payload contains:
{
"nonce": "7f8b92c4a90184b2ef019a823b102938",
"signature": "0x...",
"signer": "0xYourAgentWalletAddress"
}
๐ค MCP (Model Context Protocol) Integration
To use with Claude Desktop, Cursor, Gemini or Antigravity agents, load mcp_tool_spec.json.
Available tools:
get_mineral_prices: Retrieve all current spot prices and unit conversions.get_arbitrage_spreads: Fetch COMEX/LME/SMM basis spreads and margins.calculate_urban_mining_value: Calculate batch recovery yields for EV Black Mass, Auto Catalysts, E-Waste, or Permanent Magnets.
Example Python Agent MCP tool call:
import httpx
resp = httpx.post(
"http://localhost:8000/mcp/invoke",
json={
"name": "calculate_urban_mining_value",
"arguments": {
"scrap_category": "EV_BATTERY_BLACK_MASS",
"quantity_metric_tons": 5.0,
"custom_assay_overrides": {"Li": 4.1, "Co": 6.5}
}
},
headers={"X-Dev-Bypass": "true"} # Or with valid x402 signature
)
print(resp.json())
๐งช Running Tests
Execute the automated test suite verifying 402 challenge flow, EIP-712 cryptographic verification, scrap calculations, and AP2 endpoints:
pytest -v tests/test_client.py
๐ License
MIT License. Built for Autonomous Agent Commerce and Critical Mineral Resilience.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.