agentlookups.ai / docs / Plumbline

Plumbline documentation

Plumbline checks a contractor's license, by license number or business name, in official licensing-board records. Use it before you hire someone, to see what the board's record says about the license on the bid. It works on its website, through an AI assistant over MCP, and as a plain HTTPS API.

What it is and where the data comes from

Every record comes from the agency that issued it: state licensing boards, plus some city and county licensing offices, that publish their rosters as public data. Plumbline covers business licenses and the licenses tradespeople hold in their own name, such as master and journeyman plumbers. Each result names the agency, gives the status in the agency's own words, and dates the record.

Most sources are fetched again every day; a few boards publish on their own nightly or weekly schedule. A failed download can leave an older record in place, so each record carries the date we collected it. Plumbline keeps each downloaded file unchanged, and each record carries the SHA-256 fingerprint (hash) of the file it came from, so it can be checked against its source. The methodology page has the details.

Cost and access

Plumbline is in beta. Lookups are free during beta, with no account and no API key. Features, limits and pricing may change. Rate limits apply.

Connect it

Claude (web and desktop)

  1. Open Settings > Connectors and choose Add custom connector.
  2. Name it Plumbline and paste https://contractors.agentlookups.ai/mcp as the URL.
  3. Leave authentication empty. Plumbline needs none.

Claude Code

claude mcp add --transport http plumbline https://contractors.agentlookups.ai/mcp

ChatGPT and other MCP clients

Add a remote MCP server with the URL https://contractors.agentlookups.ai/mcp, transport Streamable HTTP, no authentication. Menu names differ by client and plan. The server keeps no session and replies with plain JSON. It takes POST only, one JSON-RPC request per POST, with the headers content-type: application/json and accept: application/json, text/event-stream. To test it by hand:

curl -X POST https://contractors.agentlookups.ai/mcp \
  -H 'content-type: application/json' \
  -H 'accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
       "params":{"name":"check_contractor",
                 "arguments":{"license":"602331","jurisdiction":"CA"}}}'

Plain HTTPS API

No MCP needed. This URL returns California license 602331 as JSON:

https://contractors.agentlookups.ai/v1/check?license=602331&jurisdiction=US-CA

To search by name, send name= in place of license=, with an optional city=. To pick one record from a list of candidates, send entity_id=. /v1/coverage lists every source we index, with its latest snapshot. /llms.txt sums up the service for AI agents.

The tool

Example prompts

Each prompt was run live on September 28, 2026, with the arguments an assistant would send. Board records change, so your answer may differ.

"Is The Home Depot licensed as a contractor in California?"

Call: check_contractor {"name": "The Home Depot", "jurisdiction": "CA"}

Came back: a match. The California Contractors State License Board (CSLB) record for license 602331, a business record, with status "CLEAR" (which Plumbline groups as active), its license classifications, issue and expiry dates, the snapshot date, and a link to CSLB's own license check.

"My plumber is Roto-Rooter in Florida. Are they licensed?"

Call: check_contractor {"name": "Roto-Rooter", "jurisdiction": "FL"}

Came back: candidates. 18 records from the Florida Department of Business and Professional Regulation (DBPR), listed in several cities, and the message "More than one record matched. Use the license number from the bid or contract to disambiguate."

Follow-up: "It's the Orlando office." Call: check_contractor {"name": "Roto-Rooter", "jurisdiction": "FL", "city": "Orlando"}

Came back: a match. DBPR credential record CFC057359 with status "A" (grouped as active), classification CFC, and its expiry date. The answer asks you to check what the classification covers with the agency.

"Check Maryland home improvement license 164285."

Call: check_contractor {"license": "164285", "jurisdiction": "MD"}

Came back: a match. The Maryland Home Improvement Commission (MHIC) record for Transform Sears Home Services LLC, listed in the board's public list of active licenses, with the record's snapshot date (August 30, 2026 for this record). For today's status, use the MHIC lookup the answer links.

"Is Roto-Rooter licensed in Georgia?"

Call: check_contractor {"name": "Roto-Rooter", "jurisdiction": "GA"}

Came back: not covered, with the message "We do not yet cover GA. We do not have its official lookup URL on file; check the jurisdiction's licensing agency directly. Absence from our index is NOT a determination of licensure."

How to read results

The four answer types

Every answer has a result_type:

Fields worth reading

The service's honesty rules

Plumbline asks every assistant to pass these on and not override them. From its llms.txt, word for word:

A no_match_in_index result is NOT a determination that a business is unlicensed.

We report what the public record says, with its date; the issuing agency's live page is authoritative for today.

We report occupational-license records, including licenses individuals hold in their own name (journeyman/master trades). We NEVER build person dossiers: an individual's page is their one license record as the board publishes it, with no aggregation beyond it, and it is never for any FCRA purpose.

Limits

Troubleshooting

Privacy and terms

One privacy page and one set of terms cover all six agentlookups.ai services. In short: no accounts, no cookies, no trackers. The web server logs requests to /search/, /v1 and /mcp without the words you searched (a request that fails partway can leave them in an error line), and deletes its logs after 14 days. A contractor's record page names the contractor in its address, so a visit to one leaves that name in the page log. If you report a record error, we keep the report, and your email address only if you give it.

Plumbline is run by TopHat Monkey Software LLC.

Last updated: September 28, 2026