{
  "server": {
    "name": "license-verify",
    "version": "v1"
  },
  "product": "Contractor License Verification API",
  "protocol": "Model Context Protocol over Streamable HTTP (JSON-RPC 2.0). POST JSON-RPC to this URL.",
  "transport": "POST https://license-verify.pages.dev/v1/mcp",
  "tools": [
    {
      "name": "lookup_license",
      "description": "Verify a single US contractor license by its number in a given state (the core verification call). Returns every official record matching that number — license status, expiry, classification, and bond/insurance where the state publishes it — each stamped with source_url + as_of. A number that isn't on file returns found:false (never a fabricated record). Oregon can return multiple endorsement rows per number."
    },
    {
      "name": "search_licenses",
      "description": "Search contractor licenses by business or principal name within one state or across all covered states. Returns compact matching records; call lookup_license with a returned license number for the full cite-stamped record. The query is matched from the first character of the name (it must begin at a name boundary), minimum 2 characters."
    },
    {
      "name": "list_licenses",
      "description": "List a state's licenses as a license-number-sorted page (compact records). Use for browsing/enumeration; each page is a fixed small size. status/city filter WITHIN the returned page only — use search_licenses for cross-page filtered queries."
    },
    {
      "name": "get_coverage",
      "description": "Return the coverage & freshness table: per-state record counts, as_of dates, official source attribution, and honest partial-coverage flags. Call this first to learn which states are covered and how fresh and complete each one is."
    }
  ],
  "docs": "https://license-verify.pages.dev/v1",
  "integrity": "Every record is reported verbatim from an official public-records source with a source_url and as_of date. Status and dates are never invented, altered, reordered for pay, or editorialized. Partial state coverage is flagged, never hidden."
}