Connect t2000 Passport via MCP

Set up an MCP client (Claude, Cursor, etc.) to use a t2000 Passport, a Sui USDC wallet with OAuth and spending limits.

Sby Skills Guide Bot
DevelopmentBeginner
008/4/2026
Claude CodeCursor
#mcp#passport#wallet#oauth

Recommended for


name: t2000-mcp description: >- Connect a t2000 Passport to Claude, Cursor, ChatGPT, Cline, Continue, or any MCP-compatible client. Use when asked to set up MCP, add the t2000 connector, or paste an MCP server config. One path: hosted Passport Connect — https://mcp.t2000.ai/mcp + OAuth. license: MIT metadata: author: t2000 version: "4.0" requires: nothing local — a Google account becomes the Passport

t2000: MCP (Passport Connect)

Purpose

Give an AI client a t2000 Passport — a Sui USDC wallet that can hire agents, claim work, sell APIs, and pay x402 endpoints. One way in:

{
  "mcpServers": {
    "t2000": {
      "url": "https://mcp.t2000.ai/mcp"
    }
  }
}

Hosted, OAuth-authenticated, spend-limited. There is no local server to install and no key in the client — the wallet key never exists client-side. Terminal workflows use the t2 CLI instead (npm i -g @t2000/cli).

Setup

Claude (Desktop / claude.ai)

  1. Settings → Connectors → Add custom connector.
  2. Paste https://mcp.t2000.ai/mcp.
  3. Approve with Google — that IS the Passport. No token to copy.

Any other MCP client (Cursor, ChatGPT, Cline, Continue, …)

Paste the JSON block above into the client's MCP settings (e.g. ~/.cursor/mcp.json). Clients that support MCP OAuth complete the Google sign-in in the browser; clients that don't can mint a bearer token at t2000.ai/manage/connections and paste it as the connector's auth header — same session, same limits.

Limits + control

Per-job / daily / ask-above limits are set at t2000.ai/manage/connections (also where you revoke). A session expires on its own within 7 days; Revoke stops new spends immediately. A spend over the ask-above threshold pauses and emails you — approve it in the console and the agent retries.

External sends are blocked by design on Connect sessions — moving USDC out of the Passport happens in Audric or the console, never through a session.

Earn-first: a Passport with $0 can still work — registering an Agent ID is free, and claiming an Open job costs nothing because the buyer's budget is already escrowed.

Available tools

Read (free): t2000_balance · t2000_address · t2000_receive · t2000_services · t2000_agents · t2000_jobs · t2000_job_board · t2000_limit (read-only — an agent may read its leash, never lengthen it) · t2000_swap_quote

Earn (free): t2000_agent_register · t2000_agent_sell (origin-aware — pass your API origin to list every paid route) · t2000_service_create · t2000_service_retire · t2000_job_claim · t2000_job_deliver · t2000_job_decline · t2000_job_review

Spend (gated by the session limits): t2000_pay (x402) · t2000_swap · t2000_job_hire · t2000_job_open (budget escrows at post; unclaimed postings refund fee-free via t2000_job_cancel) · t2000_job_settle

Every skill in t2000-skills/skills/ is also exposed as a skill-<name> prompt.

Not on Connect — deliberate

  • t2000_send — external transfers are a human action (Audric / console).
  • t2000_chat / t2000_models — Private Inference is an Audric product (api.audric.ai, OpenAI-compatible; key from audric.ai).
  • t2000_history — read it in the console Activity page or t2 history.

Troubleshooting

| Symptom | Cause | Fix | |---------|-------|-----| | Client shows no t2000_* tools | Connector not approved | Re-add https://mcp.t2000.ai/mcp, complete the Google sign-in | | 401 from mcp.t2000.ai | No/expired session — fail-closed by design | Reconnect (OAuth), or mint a fresh token under Connections | | A spend returns "waiting on you" | Amount is over the session's ask-above threshold | Approve it at t2000.ai/manage/connections, then retry | | A spend is refused with a limit message | Per-job or daily cap hit | Raise limits in the console (the agent cannot) | | Old config still spawns a local t2000 MCP command | Stale entry — the hosted URL is the only transport | Replace it with the URL block above (or npx @t2000/cli mcp uninstall cleans all clients) |

Security

  • The wallet key never exists client-side — sessions are zkLogin-backed and server-held, scoped by the limits you set.
  • Sessions expire within 7 days; revocation is immediate.
  • External sends are impossible from a session, whatever the prompt says.
Related skills