t2000: Pay for MPP API Service
Status
Active — requires t2000 CLI with @suimpp/mpp installed.
Purpose
Make a paid HTTP request to any MPP-protected endpoint. Handles the 402 challenge, pays via Sui USDC, and returns the API response.
Service Discovery
Before calling t2000 pay, discover available services:
# CLI
t2000 pay https://mpp.t2000.ai/api/services
# MCP
t2000_services
All services are hosted at https://mpp.t2000.ai/.
Command
t2000 pay <url> [options]
Options
| Option | Description | Default |
|---|
--method <method> | HTTP method (GET, POST, PUT) | POST |
--data <json> | Request body for POST/PUT | — |
--max-price <amount> | Max USDC per request | $1.00 |
--header <key=value> | Additional HTTP header (repeatable) | — |
--timeout <seconds> | Request timeout in seconds | 30 |
--dry-run | Show what would be paid without paying | — |
Available Services (41 services, 90 endpoints)
For the live, canonical list use t2000_services (MCP) or GET https://mpp.t2000.ai/api/services. The table below is a quick reference.
AI Models
| Service | Endpoint | Price |
|---|
| OpenAI Chat | /openai/v1/chat/completions | $0.01 |
| OpenAI Embeddings | /openai/v1/embeddings | $0.005 |
| OpenAI Audio Transcription | /openai/v1/audio/transcriptions | $0.01 |
| OpenAI Text-to-Speech | /openai/v1/audio/speech | $0.02 |
| Anthropic | /anthropic/v1/messages | $0.01 |
| Google Gemini Flash | /gemini/v1beta/models/gemini-2.5-flash | $0.005 |
| Google Gemini Pro | /gemini/v1beta/models/gemini-2.5-pro | $0.01 |
| Google Gemini Embeddings | /gemini/v1beta/models/embedding-001 | $0.005 |
| DeepSeek | /deepseek/v1/chat/completions | $0.005 |
| Groq Chat | /groq/v1/chat/completions | $0.005 |
| Groq Audio Transcription | /groq/v1/audio/transcriptions | $0.005 |
| Together AI Chat | /together/v1/chat/completions | $0.005 |
| Together AI Embeddings | /together/v1/embeddings | $0.005 |
| Perplexity | /perplexity/v1/chat/completions | $0.01 |
| Mistral Chat | /mistral/v1/chat/completions | $0.005 |
| Mistral Embeddings | /mistral/v1/embeddings | $0.005 |
| Cohere Chat | /cohere/v1/chat | $0.005 |
| Cohere Embed | /cohere/v1/embed | $0.005 |
| Cohere Rerank | /cohere/v1/rerank | $0.005 |
Media & Generation
| Service | Endpoint | Price |
|---|
| OpenAI DALL-E | /openai/v1/images/generations | $0.05 |
| Fal.ai Flux Dev | /fal/fal-ai/flux/dev | $0.03 |
| Fal.ai Flux Pro | /fal/fal-ai/flux-pro | $0.05 |
| Fal.ai Flux Realism | /fal/fal-ai/flux-realism | $0.05 |
| Fal.ai Recraft 20B | /fal/fal-ai/recraft-20b | $0.05 |
| Fal.ai Whisper | /fal/fal-ai/whisper | $0.01 |
| Together AI Images | /together/v1/images/generations | $0.03 |
| ElevenLabs TTS | /elevenlabs/v1/text-to-speech/:voiceId | $0.05 |
| ElevenLabs SFX | /elevenlabs/v1/sound-generation | $0.05 |
| Replicate (any model) | /replicate/v1/predictions | $0.02 |
| Replicate (check status) | /replicate/v1/predictions/status | $0.005 |
| Stability AI (generate) | /stability/v1/generate | $0.03 |
| Stability AI (edit) | /stability/v1/edit | $0.03 |
| AssemblyAI (transcribe) | /assemblyai/v1/transcribe | $0.02 |
| AssemblyAI (get result) | /assemblyai/v1/result | $0.005 |
Search
| Service | Endpoint | Price |
|---|
| Brave Web Search | /brave/v1/web/search | $0.005 |
| Brave Image Search | /brave/v1/images/search | $0.005 |
| Brave News Search | /brave/v1/news/search | $0.005 |
| Brave Video Search | /brave/v1/videos/search | $0.005 |
| Brave Summarizer | /brave/v1/summarizer/search | $0.01 |
| Exa (semantic search) | /exa/v1/search | $0.01 |
| Exa (content extract) | /exa/v1/contents | $0.01 |
| Serper (Google search) | /serper/v1/search | $0.005 |
| Serper (image search) | /serper/v1/images | $0.005 |
| SerpAPI (Google search) | /serpapi/v1/search | $0.01 |
| SerpAPI (Google Flights) | /serpapi/v1/flights | $0.01 |
| SerpAPI (locations) | /serpapi/v1/locations | $0.005 |
| NewsAPI (headlines) | /newsapi/v1/headlines | $0.005 |
| NewsAPI (article search) | /newsapi/v1/search | $0.005 |
Data
| Service | Endpoint | Price |
|---|
| OpenWeather Current | /openweather/v1/weather | $0.005 |
| OpenWeather Forecast | /openweather/v1/forecast | $0.005 |
| Google Maps Geocode | /googlemaps/v1/geocode | $0.01 |
| Google Maps Places | /googlemaps/v1/places | $0.01 |
| Google Maps Directions | /googlemaps/v1/directions | $0.01 |
| CoinGecko (price) | /coingecko/v1/price | $0.005 |
| CoinGecko (markets) | /coingecko/v1/markets | $0.005 |
| CoinGecko (trending) | /coingecko/v1/trending | $0.005 |
| Alpha Vantage (quote) | /alphavantage/v1/quote | $0.005 |
| Alpha Vantage (daily) | /alphavantage/v1/daily | $0.005 |
| Alpha Vantage (search) | /alphavantage/v1/search | $0.005 |
Web & Documents
| Service | Endpoint | Price |
|---|
| Firecrawl Scrape | /firecrawl/v1/scrape | $0.01 |
| Firecrawl Crawl | /firecrawl/v1/crawl | $0.02 |
| Firecrawl Map | /firecrawl/v1/map | $0.01 |
| Firecrawl Extract | /firecrawl/v1/extract | $0.02 |
| Jina Reader | /jina/v1/read | $0.005 |
| ScreenshotOne | /screenshot/v1/capture | $0.01 |
| PDFShift (HTML to PDF) | /pdfshift/v1/convert | $0.01 |
| QR Code | /qrcode/v1/generate | $0.005 |
Translation
| Service | Endpoint | Price |
|---|
| DeepL (translate) | /deepl/v1/translate | $0.005 |
| Google Translate | /translate/v1/translate | $0.005 |
| Google Detect Language | /translate/v1/detect | $0.005 |
Intelligence
| Service | Endpoint | Price |
|---|
| Hunter.io (domain search) | /hunter/v1/search | $0.02 |
| Hunter.io (verify email) | /hunter/v1/verify | $0.02 |
| IPinfo (IP lookup) | /ipinfo/v1/lookup | $0.005 |
Tools & Compute
| Service | Endpoint | Price |
|---|
| Judge0 Code Exec | /judge0/v1/submissions | $0.005 |
| Judge0 Languages | /judge0/v1/languages | $0.005 |
| Resend Email | /resend/v1/emails | $0.005 |
| Resend Batch Email | /resend/v1/emails/batch | $0.01 |
Commerce
| Service | Endpoint | Price |
|---|
| Lob Postcards | /lob/v1/postcards | $1.00 |
| Lob Letters | /lob/v1/letters | $1.50 |
| Lob Address Verify | /lob/v1/verify | $0.01 |
| Printful (browse) | /printful/v1/products | $0.005 |
| Printful (estimate) | /printful/v1/estimate | $0.005 |
| Printful (order) | /printful/v1/order | dynamic |
Messaging
| Service | Endpoint | Price |
|---|
| Pushover | /pushover/v1/push | $0.005 |
Security
| Service | Endpoint | Price |
|---|
| VirusTotal (URL/file scan) | /virustotal/v1/scan | $0.01 |
Finance
| Service | Endpoint | Price |
|---|
| ExchangeRate (rates) | /exchangerate/v1/rates | $0.005 |
| ExchangeRate (convert) | /exchangerate/v1/convert | $0.005 |
Utility
| Service | Endpoint | Price |
|---|
| Short.io (URL shortener) | /shortio/v1/shorten | $0.005 |
Example Commands
Ask an AI model
t2000 pay https://mpp.t2000.ai/openai/v1/chat/completions \
--data '{"model":"gpt-4o","messages":[{"role":"user","content":"Explain quantum computing in 3 sentences"}]}'
Search the web
t2000 pay https://mpp.t2000.ai/brave/v1/web/search \
--data '{"q":"latest Sui blockchain news"}'
Generate an image
t2000 pay https://mpp.t2000.ai/fal/fal-ai/flux/dev \
--data '{"prompt":"a futuristic city at sunset, cyberpunk style"}'
Check weather
t2000 pay https://mpp.t2000.ai/openweather/v1/weather \
--data '{"q":"Tokyo"}'
Send an email
t2000 pay https://mpp.t2000.ai/resend/v1/emails \
--data '{"from":"agent@t2000.ai","to":"user@example.com","subject":"Hello","text":"Sent by an AI agent"}'
Execute code
t2000 pay https://mpp.t2000.ai/judge0/v1/submissions \
--data '{"source_code":"print(42)","language_id":71}'
Send physical mail
# Send a postcard
t2000 pay https://mpp.t2000.ai/lob/v1/postcards \
--max-price 2 \
--data '{
"to":{"name":"Jane Doe","address_line1":"123 Main St","address_city":"San Francisco","address_state":"CA","address_zip":"94105"},
"from":{"name":"AI Agent","address_line1":"456 Oak Ave","address_city":"Palo Alto","address_state":"CA","address_zip":"94301"},
"front":"https://example.com/front.png",
"back":"https://example.com/back.png",
"use_type":"operational"
}'
# Send a letter
t2000 pay https://mpp.t2000.ai/lob/v1/letters \
--max-price 2 \
--data '{
"to":{"name":"Jane Doe","address_line1":"123 Main St","address_city":"San Francisco","address_state":"CA","address_zip":"94105"},
"from":{"name":"AI Agent","address_line1":"456 Oak Ave","address_city":"Palo Alto","address_state":"CA","address_zip":"94301"},
"file":"https://example.com/letter.pdf",
"use_type":"operational",
"color":false
}'
# Verify a US address
t2000 pay https://mpp.t2000.ai/lob/v1/verify \
--data '{"primary_line":"123 Main St","city":"San Francisco","state":"CA","zip_code":"94105"}'
Get directions
t2000 pay https://mpp.t2000.ai/googlemaps/v1/directions \
--data '{"origin":"San Francisco, CA","destination":"Palo Alto, CA"}'
Get crypto prices
t2000 pay https://mpp.t2000.ai/coingecko/v1/price \
--data '{"ids":"sui,bitcoin,ethereum","vs_currencies":"usd"}'
Get a stock quote
t2000 pay https://mpp.t2000.ai/alphavantage/v1/quote \
--data '{"symbol":"AAPL"}'
Get breaking news
t2000 pay https://mpp.t2000.ai/newsapi/v1/headlines \
--data '{"country":"us","category":"technology"}'
Translate text
t2000 pay https://mpp.t2000.ai/deepl/v1/translate \
--data '{"text":["Hello, how are you?"],"target_lang":"ES"}'
Semantic search
t2000 pay https://mpp.t2000.ai/exa/v1/search \
--data '{"query":"best practices for AI agent payments","numResults":5}'
Read a URL as markdown
t2000 pay https://mpp.t2000.ai/jina/v1/read \
--data '{"url":"https://docs.sui.io/concepts/tokenomics"}'
Google search (structured)
t2000 pay https://mpp.t2000.ai/serper/v1/search \
--data '{"q":"Sui blockchain TVL 2026"}'
Screenshot a webpage
t2000 pay https://mpp.t2000.ai/screenshot/v1/capture \
--data '{"url":"https://example.com","format":"png","viewport_width":"1280"}'
Generate a QR code
t2000 pay https://mpp.t2000.ai/qrcode/v1/generate \
--data '{"data":"https://t2000.ai","size":"400x400"}'
Convert HTML to PDF
t2000 pay https://mpp.t2000.ai/pdfshift/v1/convert \
--data '{"source":"https://t2000.ai/docs"}'
Run a Replicate model
t2000 pay https://mpp.t2000.ai/replicate/v1/predictions \
--data '{"model":"meta/llama-3-70b-instruct","input":{"prompt":"Explain DeFi in 3 sentences"}}'
Find emails for a domain
t2000 pay https://mpp.t2000.ai/hunter/v1/search \
--data '{"domain":"mystenlabs.com"}'
Look up an IP address
t2000 pay https://mpp.t2000.ai/ipinfo/v1/lookup \
--data '{"ip":"8.8.8.8"}'
Order print-on-demand merchandise
t2000 pay https://mpp.t2000.ai/printful/v1/order \
--max-price 30 \
--data '{"recipient":{"name":"Jane Doe","address1":"123 Main St","city":"SF","state_code":"CA","country_code":"US","zip":"94105"},"items":[{"variant_id":4012,"quantity":1,"files":[{"url":"https://example.com/design.png"}]}]}'
Search for flights
t2000 pay https://mpp.t2000.ai/serpapi/v1/flights \
--data '{"departure_id":"LAX","arrival_id":"NRT","outbound_date":"2026-05-01","type":"2"}'
Convert currency
t2000 pay https://mpp.t2000.ai/exchangerate/v1/convert \
--data '{"from":"USD","to":"EUR","amount":100}'
Scan a URL for malware
t2000 pay https://mpp.t2000.ai/virustotal/v1/scan \
--data '{"url":"https://suspicious-site.com"}'
Shorten a URL
t2000 pay https://mpp.t2000.ai/shortio/v1/shorten \
--data '{"url":"https://example.com/very/long/url/path"}'
Send a push notification
t2000 pay https://mpp.t2000.ai/pushover/v1/push \
--data '{"user":"USER_KEY","message":"Your agent has a message!"}'
Flow (automatic)
- Makes initial HTTP request to the URL
- If 402: reads MPP challenge for amount and terms
- If price <= --max-price: pays via Sui USDC
- Retries with credential header
- Returns the API response body
Safety
- If requested price exceeds --max-price, payment is refused (no funds spent)
- Default max-price: $1.00 USDC per request
- For commerce (mail, merch), set --max-price higher
- Payment only broadcast after 402 terms are validated
Errors
PRICE_EXCEEDS_LIMIT: API asking more than --max-priceINSUFFICIENT_BALANCE: not enough available USDCUNSUPPORTED_NETWORK: MPP requires a network other than SuiPAYMENT_EXPIRED: payment challenge has expiredDUPLICATE_PAYMENT: nonce already used on-chain
MCP
Via MCP: use t2000_services to discover services, then t2000_pay to call them.