{
  "$schema": "https://ai.tatum.io/schemas/tatum-agent.schema.json",
  "version": "1.2.0",
  "name": "AI.tatum.io",
  "description": "Machine-readable Tatum layer for AI agents: MCP, Skills.md, workflows, and JSON APIs.",
  "url": "https://ai.tatum.io",
  "snapshotAt": "2026-06-04T07:42:00.276Z",
  "instructions": "AI.Tatum.IO is a machine-readable operating manual for Tatum, not a copy of docs.tatum.io.\n\nRouting (read in order):\n1. Start here for shape, counts, and endpoint list.\n2. User gave a concrete goal (monitor payments, wallet balance, NFT check, RPC debug) → fetch /api/workflows and the matching /workflows/{slug}.md. Workflows are canonical: goal, steps, failures, recovery.\n3. Need product vocabulary or which MCP tools apply → fetch /api/capabilities. Each capability embeds its linked workflows and points to OpenAPI + docs.\n4. Runtime tool calls in an MCP client → connect Tatum MCP (see entrypoints.mcp), then /api/mcp-tools.\n5. Generate code into a repo → Integration Skill (entrypoints.integrationSkill) + /auth for x-api-key.\n6. Chain or endpoint lookup: /api/chains (flat, one row per chain x network x interface, includes URLs) or /api/blockchain-registry (nested tree). HTTP shapes via /api/openapi-index and /openapi/{id}.json.\n\nDefaults: read-only. Validate addresses per chain. Prefer webhooks over polling. Human approval for mutations. Never expose private keys or API keys to the model. Use TATUM_API_KEY from the environment.",
  "routing": {
    "summary": "Workflows are end-to-end procedures for user goals. Capabilities map product areas to tools and APIs. MCP and Integration Skill are how you execute.",
    "rules": [
      {
        "if": "The user gave a concrete task or goal (monitor payments, check wallet, diagnose RPC)",
        "then": "Fetch /api/workflows first, then the matching /workflows/{slug}.md",
        "priority": 1
      },
      {
        "if": "You need to know what Tatum offers or which tools apply to a domain",
        "then": "Fetch /api/capabilities or browse /workflows#capabilities. Each entry links MCP tools, OpenAPI, docs, and embedded workflows",
        "priority": 2
      },
      {
        "if": "You will call Tatum at runtime inside an MCP client",
        "then": "Install MCP, then /api/mcp-tools",
        "priority": 3
      },
      {
        "if": "You will generate integration code into a repository",
        "then": "Use the Integration Skill (/integration-skill) and /auth for the API key",
        "priority": 4
      },
      {
        "if": "You need a specific RPC URL or to confirm Tatum supports a chain or network",
        "then": "Use /api/chains. One row per chain x network x interface, includes URLs. For the full nested tree use /api/blockchain-registry. For HTTP operation shapes use /api/openapi-index",
        "priority": 5
      }
    ]
  },
  "upstream": {
    "blockchainsRegistry": "https://blockchains.tatum.io/blockchains2.json",
    "openapiBlockchainData": "https://docs.tatum.io/openapi/blockchain-data-1.json",
    "openapiNotifications": "https://docs.tatum.io/openapi/notifications-1.json",
    "mcpRepo": "https://github.com/tatumio/blockchain-mcp",
    "mcpRepoReadme": "https://raw.githubusercontent.com/tatumio/blockchain-mcp/main/README.md",
    "skillRepo": "https://github.com/tatumio/tatum-integration-skill",
    "skillRepoReadme": "https://raw.githubusercontent.com/tatumio/tatum-integration-skill/master/README.md",
    "docs": "https://docs.tatum.io",
    "dashboard": "https://dashboard.tatum.io"
  },
  "entrypoints": {
    "manifest": "https://ai.tatum.io/.well-known/tatum-agent.json",
    "workflows": {
      "description": "Workflows (procedures) and capabilities (product map). Combined HTML index at /workflows",
      "index": "https://ai.tatum.io/api/workflows",
      "htmlIndex": "https://ai.tatum.io/workflows",
      "markdownIndex": "https://ai.tatum.io/workflows.md",
      "slugs": [
        "wallet-portfolio-assistant",
        "incoming-payment-monitor",
        "nft-ownership-checker",
        "rpc-diagnostic-agent"
      ]
    },
    "capabilities": {
      "description": "Product primitives as JSON API. HTML index merged into /workflows#capabilities",
      "index": "https://ai.tatum.io/api/capabilities",
      "markdownIndex": "https://ai.tatum.io/workflows.md"
    },
    "mcp": {
      "repo": "https://github.com/tatumio/blockchain-mcp",
      "npm": "@tatumio/blockchain-mcp",
      "install": "npm install -g @tatumio/blockchain-mcp",
      "toolCount": 13,
      "toolsManifest": "https://ai.tatum.io/api/mcp-tools",
      "configExample": {
        "mcpServers": {
          "tatumio": {
            "command": "npx",
            "args": [
              "@tatumio/blockchain-mcp"
            ],
            "env": {
              "TATUM_API_KEY": "$TATUM_API_KEY"
            }
          }
        }
      }
    },
    "integrationSkill": {
      "repo": "https://github.com/tatumio/tatum-integration-skill",
      "install": "npx skills add https://github.com/tatumio/tatum-integration-skill --skill tatum",
      "invokeWith": "/tatum <goal>"
    },
    "docs": "https://docs.tatum.io",
    "dashboard": "https://dashboard.tatum.io",
    "llmsIndex": "https://ai.tatum.io/llms.txt",
    "llmsFull": "https://ai.tatum.io/llms-full.txt"
  },
  "counts": {
    "chains": 68,
    "networks": 140,
    "mcpTools": 13,
    "workflows": 4,
    "capabilities": 6,
    "openapiSchemas": 2,
    "openapiOperations": 126
  },
  "endpoints": [
    {
      "path": "/.well-known/tatum-agent.json",
      "label": "Agent manifest (start here)",
      "kind": "manifest",
      "url": "https://ai.tatum.io/.well-known/tatum-agent.json"
    },
    {
      "path": "/api/workflows",
      "label": "Workflows",
      "kind": "json",
      "url": "https://ai.tatum.io/api/workflows"
    },
    {
      "path": "/api/capabilities",
      "label": "Capabilities (+ linked workflows)",
      "kind": "json",
      "url": "https://ai.tatum.io/api/capabilities"
    },
    {
      "path": "/api/mcp-tools",
      "label": "MCP tools",
      "kind": "json",
      "url": "https://ai.tatum.io/api/mcp-tools"
    },
    {
      "path": "/api/chains",
      "label": "Chain endpoints (flat, one row per interface)",
      "kind": "json",
      "url": "https://ai.tatum.io/api/chains"
    },
    {
      "path": "/api/blockchain-registry",
      "label": "Blockchain registry (nested tree)",
      "kind": "json",
      "url": "https://ai.tatum.io/api/blockchain-registry"
    },
    {
      "path": "/api/openapi-index",
      "label": "OpenAPI index",
      "kind": "json",
      "url": "https://ai.tatum.io/api/openapi-index"
    },
    {
      "path": "/llms.txt",
      "label": "LLM-friendly URL index (llmstxt.org convention)",
      "kind": "text",
      "url": "https://ai.tatum.io/llms.txt"
    },
    {
      "path": "/llms-full.txt",
      "label": "Every page concatenated as one Markdown document",
      "kind": "text",
      "url": "https://ai.tatum.io/llms-full.txt"
    }
  ],
  "markdownVariants": {
    "pattern": "{path}.md",
    "examples": [
      "/workflows/wallet-portfolio-assistant.md",
      "/capabilities.md",
      "/mcp.md"
    ]
  },
  "agents": [
    {
      "name": "Claude Desktop",
      "mcp": "native",
      "skill": false,
      "crawl": "full",
      "notes": "MCP via claude_desktop_config.json."
    },
    {
      "name": "Claude Code",
      "mcp": "native",
      "skill": true,
      "crawl": "full",
      "notes": "MCP via .mcp.json; reads /llms.txt."
    },
    {
      "name": "Cursor",
      "mcp": "native",
      "skill": true,
      "crawl": "full",
      "notes": "MCP via .cursor/mcp.json; /tatum skill."
    },
    {
      "name": "Windsurf",
      "mcp": "native",
      "skill": false,
      "crawl": "full",
      "notes": "MCP via Cascade."
    },
    {
      "name": "Zed",
      "mcp": "native",
      "skill": false,
      "crawl": "partial",
      "notes": "MCP via Assistant."
    },
    {
      "name": "OpenHands",
      "mcp": "native",
      "skill": true,
      "crawl": "full",
      "notes": "Integration Skill via npx skills add."
    },
    {
      "name": "ChatGPT (web)",
      "mcp": false,
      "skill": false,
      "crawl": "full",
      "notes": "Browse /api/workflows and .md twins."
    },
    {
      "name": "Gemini Code Assist",
      "mcp": false,
      "skill": false,
      "crawl": "partial",
      "notes": "Browse JSON and markdown."
    },
    {
      "name": "GitHub Copilot",
      "mcp": false,
      "skill": false,
      "crawl": "partial",
      "notes": "Browse markdown twins."
    }
  ],
  "examplePrompts": [
    {
      "id": "workflow-first",
      "targetRuntime": "any LLM with web browse",
      "body": "Fetch https://ai.tatum.io/api/workflows and pick the recipe for checking what a wallet holds on Ethereum. Follow that workflow slug and list the MCP tools and failure modes.",
      "expects": {
        "httpFetch": [
          "/api/workflows",
          "/workflows/wallet-portfolio-assistant.md"
        ]
      }
    },
    {
      "id": "mcp-runtime",
      "targetRuntime": "Claude Desktop, Cursor, Windsurf (after MCP install)",
      "body": "Using @tatumio/blockchain-mcp, call gateway_execute_rpc with chain=\"ethereum-mainnet\", method=\"eth_blockNumber\". Report block height as a decimal integer.",
      "expects": {
        "mcpToolCall": [
          "gateway_execute_rpc"
        ]
      }
    },
    {
      "id": "skill-codegen",
      "targetRuntime": "Cursor, Claude Code, OpenHands",
      "body": "/tatum add a GET /balance/:address endpoint to my Express app that returns the ETH balance of an Ethereum mainnet address using Tatum. Wire TATUM_API_KEY from .env.",
      "expects": {
        "fileWrites": [
          "routes/balance.*",
          ".env.example"
        ]
      }
    }
  ],
  "safetyDefaults": {
    "readOnlyByDefault": true,
    "humanApprovalForMutations": true,
    "validateAddressesAgainstChain": true,
    "preferNotificationsOverPolling": true,
    "neverExposePrivateKeysToModel": true
  }
}