{
  "$schema": "https://agentsapi.top/.well-known/mcp/server-card.schema.json",
  "version": "1.0",
  "protocolVersion": "2025-06-18",
  "serverInfo": {
    "name": "bridge-watch",
    "title": "Bridge Watch — Base on-chain intelligence MCP",
    "version": "0.3.1",
    "description": "Base on-chain intelligence over MCP: address labels, transaction explanation, sybil clusters, alerts and CCTP tracking. 7 tools, pay-per-call via x402 (USDC on Base).",
    "documentationUrl": "https://agentsapi.top/openapi.json"
  },
  "transport": {
    "type": "streamable-http",
    "endpoint": "/mcp"
  },
  "capabilities": {
    "tools": {
      "listChanged": true
    }
  },
  "authentication": {
    "required": false,
    "schemes": [],
    "note": "Anonymous access exists but is limited to the free tier described in `instructions`; every other tools/call requires an x402 payment. A paid call without credentials returns HTTP 402 with a machine-readable payment challenge."
  },
  "instructions": "bridge-watch MCP server (Base mainnet). initialize and tools/list are free and never charged; only tools/call is billed. Anonymous free tier (no wallet, no key): all 7 tools - get_label, explain_transaction, detect_cluster, query_alerts, alert_stats, track_cctp, list_paid_endpoints - are callable 1 time per tool per IP per day (7 calls per IP per day, 500 calls per day site-wide); calls beyond that return HTTP 402. Wallet free trial: call with your Base wallet address as a Bearer token on any paid endpoint to receive 10 credits once per address. Paid access (x402): transfer USDC on Base to payTo 0x381cdbb664608bf7b1dd4f9403a572c1c57332c2 and keep using the same address as the Bearer identity; 100 credits per USDC. Per-tool prices are in _meta['top.agentsapi/x402'].pricing; the live billing card is https://agentsapi.top/mcp.",
  "tools": [
    {
      "name": "get_label",
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": false
      },
      "description": "On-chain address identity label lookup on Base: entries from the open eth-labels dataset, mostly category tags (token-contract/stablecoin/burn/exchange) rather than named entities. Unknown addresses return label:null and are still charged. Call with no arguments for a free demo result.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "description": "0x-prefixed EVM address"
          }
        },
        "additionalProperties": false
      }
    },
    {
      "name": "explain_transaction",
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": true
      },
      "description": "Plain-language explanation of a Base transaction: status, sender/receiver (with labels), transfers, bridge operations.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "txHash": {
            "type": "string",
            "description": "0x-prefixed transaction hash"
          }
        },
        "required": [
          "txHash"
        ],
        "additionalProperties": false
      }
    },
    {
      "name": "detect_cluster",
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": true
      },
      "description": "Sybil / funding-cluster analysis: addresses funded by the same funder on Base.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "funder": {
            "type": "string",
            "description": "0x-prefixed funder address"
          }
        },
        "required": [
          "funder"
        ],
        "additionalProperties": false
      }
    },
    {
      "name": "query_alerts",
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": false
      },
      "description": "Query historical bridge/treasury monitor alerts, filterable by address, rule kind, severity, time range.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "address": {
            "type": "string"
          },
          "kind": {
            "type": "string",
            "enum": [
              "large_outflow",
              "large_inflow",
              "balance_drain",
              "startup"
            ]
          },
          "severity": {
            "type": "string",
            "enum": [
              "info",
              "warn",
              "critical"
            ]
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "default": 20
          },
          "hours": {
            "type": "integer",
            "minimum": 1,
            "maximum": 720
          }
        },
        "additionalProperties": false
      }
    },
    {
      "name": "alert_stats",
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": false
      },
      "description": "Alert statistics overview: totals, distribution by kind/severity/address, latest alert time.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "hours": {
            "type": "integer",
            "minimum": 1,
            "maximum": 720
          }
        },
        "additionalProperties": false
      }
    },
    {
      "name": "track_cctp",
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": true
      },
      "description": "CCTP cross-chain USDC tracking: given a source-chain tx hash, returns burn/mint status and whether funds arrived on Base.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "txHash": {
            "type": "string",
            "description": "0x-prefixed source-chain transaction hash"
          }
        },
        "required": [
          "txHash"
        ],
        "additionalProperties": false
      }
    },
    {
      "name": "list_paid_endpoints",
      "description": "List every paid HTTP endpoint of this service with its live per-call price in USDC on Base. Takes no arguments. Call this first to discover what you can buy and what it costs.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "annotations": {
        "readOnlyHint": true,
        "openWorldHint": false
      }
    }
  ],
  "resources": [],
  "prompts": [],
  "_meta": {
    "top.agentsapi/registry": {
      "id": "top.agentsapi/bridge-watch",
      "latestVersion": "0.3.1",
      "isLatest": true,
      "note": "version published in the official MCP Registry; serverInfo.version is the runtime software version reported by initialize (0.3.1). npm twin package: bridge-watch-mcp@0.1.1."
    },
    "top.agentsapi/x402": {
      "protocol": "x402 v2 (v1 X-PAYMENT compatible)",
      "network": "base",
      "asset": "USDC",
      "assetContract": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "creditPerUsdc": 100,
      "payTo": "0x381cdbb664608bf7b1dd4f9403a572c1c57332c2",
      "freeTier": {
        "enabled": true,
        "tools": [
          "get_label",
          "explain_transaction",
          "detect_cluster",
          "query_alerts",
          "alert_stats",
          "track_cctp",
          "list_paid_endpoints"
        ],
        "perIp": 7,
        "dailyCap": 500,
        "perTool": 1
      },
      "pricing": {
        "get_label": {
          "credits": 1,
          "usdc": "0.01"
        },
        "explain_transaction": {
          "credits": 2,
          "usdc": "0.02"
        },
        "detect_cluster": {
          "credits": 5,
          "usdc": "0.05"
        },
        "query_alerts": {
          "credits": 1,
          "usdc": "0.01"
        },
        "alert_stats": {
          "credits": 1,
          "usdc": "0.01"
        },
        "track_cctp": {
          "credits": 3,
          "usdc": "0.03"
        },
        "list_paid_endpoints": {
          "credits": 1,
          "usdc": "0.01"
        }
      }
    },
    "top.agentsapi/links": {
      "landing": "https://agentsapi.top/",
      "billingCard": "https://agentsapi.top/mcp",
      "wellKnownX402": "https://agentsapi.top/.well-known/x402",
      "statusz": "https://agentsapi.top/statusz",
      "npm": "https://www.npmjs.com/package/bridge-watch-mcp",
      "repository": "https://github.com/LakeSky/bridge-watch"
    }
  }
}
