{
  "measuredBy": "https://brick.blue/agent/a70fe0b454a0c10f",
  "name": "bridge-watch",
  "description": "Pay-per-call on-chain intelligence for Base. 8 x402-priced REST endpoints and an MCP server exposing the same capabilities: entity labels for EVM addresses, plain-language transaction explanation, funding-cluster (sybil) detection, CCTP cross-chain USDC tracking, and historical bridge-risk alerts. Priced per call in USDC on Base; settlement is x402, so a caller pays without an account or an API key.",
  "version": "0.2.0",
  "documentationUrl": "https://agentsapi.top/llms.txt",
  "provider": {
    "organization": "agentsapi.top",
    "url": "https://agentsapi.top"
  },
  "supportedInterfaces": [
    {
      "url": "https://agentsapi.top/mcp",
      "protocolBinding": "HTTP+JSON",
      "protocolVersion": "2025-06-18"
    },
    {
      "url": "https://agentsapi.top/v1",
      "protocolBinding": "HTTP+JSON",
      "protocolVersion": "1.0"
    }
  ],
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "extendedAgentCard": false,
    "extensions": [
      {
        "uri": "https://modelcontextprotocol.io/",
        "description": "MCP server for the same capabilities: https://agentsapi.top/mcp",
        "required": false
      },
      {
        "uri": "https://x402.org/",
        "description": "Paid endpoints answer 402 with an x402 v2 requirement; payment settles on Base in USDC.",
        "required": false,
        "params": {
          "versions": [
            2
          ],
          "role": [
            "server"
          ],
          "networks": [
            "eip155:8453"
          ],
          "schemes": [
            "exact"
          ],
          "assets": [
            "USDC"
          ],
          "payTo": "0x381cdbb664608bf7b1dd4f9403a572c1c57332c2"
        }
      }
    ]
  },
  "defaultInputModes": [
    "application/json"
  ],
  "defaultOutputModes": [
    "application/json"
  ],
  "skills": [
    {
      "id": "get_label",
      "name": "Get Label",
      "description": "On-chain address identity label lookup on Base (100k+ curated entities: exchanges/bridges/protocols/scams).",
      "tags": [
        "onchain",
        "base",
        "mcp-tool",
        "onchain"
      ],
      "inputSchema": {
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "description": "0x-prefixed EVM address"
          }
        },
        "required": [
          "address"
        ],
        "additionalProperties": false
      },
      "endpoint": {
        "method": "GET",
        "url": "https://agentsapi.top/v1/label/{address}",
        "path": "/v1/label/{address}"
      },
      "pricing": {
        "access": "paid",
        "amount": "10000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "network": "eip155:8453",
        "note": "Per successful call, read from this endpoint’s own 402 payment requirement. Unpaid calls answer 402 with the x402 requirement."
      },
      "freeTier": {
        "note": "Anonymous free tier over MCP, no payment required.",
        "perIp": 3,
        "dailyCap": 500,
        "measuredAt": 1791529848698
      }
    },
    {
      "id": "explain_transaction",
      "name": "Explain Transaction",
      "description": "Plain-language explanation of a Base transaction: status, sender/receiver (with labels), transfers, bridge operations.",
      "tags": [
        "onchain",
        "base",
        "mcp-tool",
        "onchain"
      ],
      "inputSchema": {
        "type": "object",
        "properties": {
          "txHash": {
            "type": "string",
            "description": "0x-prefixed transaction hash"
          }
        },
        "required": [
          "txHash"
        ],
        "additionalProperties": false
      },
      "endpoint": {
        "method": "GET",
        "url": "https://agentsapi.top/v1/explain/{txHash}",
        "path": "/v1/explain/{txHash}"
      },
      "pricing": {
        "access": "paid",
        "amount": "20000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "network": "eip155:8453",
        "note": "Per successful call, read from this endpoint’s own 402 payment requirement. Unpaid calls answer 402 with the x402 requirement."
      }
    },
    {
      "id": "detect_cluster",
      "name": "Detect Cluster",
      "description": "Sybil / funding-cluster analysis: addresses funded by the same funder on Base.",
      "tags": [
        "onchain",
        "base",
        "mcp-tool",
        "onchain"
      ],
      "inputSchema": {
        "type": "object",
        "properties": {
          "funder": {
            "type": "string",
            "description": "0x-prefixed funder address"
          }
        },
        "required": [
          "funder"
        ],
        "additionalProperties": false
      },
      "endpoint": {
        "method": "GET",
        "url": "https://agentsapi.top/v1/cluster/{funder}",
        "path": "/v1/cluster/{funder}"
      },
      "pricing": {
        "access": "paid",
        "amount": "50000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "network": "eip155:8453",
        "note": "Per successful call, read from this endpoint’s own 402 payment requirement. Unpaid calls answer 402 with the x402 requirement."
      }
    },
    {
      "id": "query_alerts",
      "name": "Query Alerts",
      "description": "Query historical bridge/treasury monitor alerts, filterable by address, rule kind, severity, time range.",
      "tags": [
        "onchain",
        "base",
        "mcp-tool",
        "alerts"
      ],
      "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
      },
      "endpoint": {
        "method": "GET",
        "url": "https://agentsapi.top/v1/alerts",
        "path": "/v1/alerts"
      },
      "pricing": {
        "access": "paid",
        "amount": "10000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "network": "eip155:8453",
        "note": "Per successful call, read from this endpoint’s own 402 payment requirement. Unpaid calls answer 402 with the x402 requirement."
      }
    },
    {
      "id": "alert_stats",
      "name": "Alert Stats",
      "description": "Alert statistics overview: totals, distribution by kind/severity/address, latest alert time.",
      "tags": [
        "onchain",
        "base",
        "mcp-tool",
        "alerts"
      ],
      "inputSchema": {
        "type": "object",
        "properties": {
          "hours": {
            "type": "integer",
            "minimum": 1,
            "maximum": 720
          }
        },
        "additionalProperties": false
      },
      "endpoint": {
        "method": "GET",
        "url": "https://agentsapi.top/v1/alerts/stats",
        "path": "/v1/alerts/stats"
      },
      "pricing": {
        "access": "paid",
        "amount": "10000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "network": "eip155:8453",
        "note": "Per successful call, read from this endpoint’s own 402 payment requirement. Unpaid calls answer 402 with the x402 requirement."
      }
    },
    {
      "id": "track_cctp",
      "name": "Track Cctp",
      "description": "CCTP cross-chain USDC tracking: given a source-chain tx hash, returns burn/mint status and whether funds arrived on Base.",
      "tags": [
        "onchain",
        "base",
        "mcp-tool",
        "cctp"
      ],
      "inputSchema": {
        "type": "object",
        "properties": {
          "txHash": {
            "type": "string",
            "description": "0x-prefixed source-chain transaction hash"
          }
        },
        "required": [
          "txHash"
        ],
        "additionalProperties": false
      },
      "endpoint": {
        "method": "GET",
        "url": "https://agentsapi.top/v1/track/cctp/{txHash}",
        "path": "/v1/track/cctp/{txHash}"
      },
      "pricing": {
        "access": "paid",
        "amount": "30000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "network": "eip155:8453",
        "note": "Per successful call, read from this endpoint’s own 402 payment requirement. Unpaid calls answer 402 with the x402 requirement."
      }
    }
  ]
}
