
Roofer Registry MCP server
Which MCP servers are Roofer Registry's own, from the official registry and from asking its own domain, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.
read 2026-10-29
- Registry namecom.rooferregistry/roofer-registryverified in the MCP registry
The registry name sits under rooferregistry.com. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.
- Stateanswerschecked 2026-10-29
- Tools9
- Server calls itselfRoofer Registry
- Server version0.2.0
- Protocol version2025-06-18
On 2026-10-29 the server answered initialize and tools/list without a sign-in. First answer in 128 ms.
- Its tools do every use case we checked: look up a roofer's license status by name; review a roofer's state discipline record before signing.
- Checked on 6 of the 7 days it takes to judge reliability.
Once connected
- For "look up a roofer's license status by name", the likely first call is search_licensees.
- For "review a roofer's state discipline record before signing", the likely first call is enforcement_actions.
- Parameters are untyped or undescribed in 8 of 9 tools: check arguments before calling.
Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.
- INITE MCP scoreafter a weeka score needs 7 daily checks: 6 so far
- What an agent can do with it2 of 2 use cases
- Answeredmeasuring6 of the 7 daily checks it takes to print a share
- Median first answer149 ms
- Space in an agent's context≈ 1,951 tokensthe definitions of all its tools (9), which an agent carries on every turn
- Tool definitionsC · 69 of 100
- Typed results0 of 9 toolsdeclared outputSchema: results come typed, read once
- Parameters without a description: in 8 of 9
- Not saying whether it only reads or can destroy: 9 of 9
What an agent can do with it
- can do · look up a roofer's license status by name
- can do · review a roofer's state discipline record before signing
- not sure · browse state-published unlicensed activity cases by job type
Each of the product's use cases, put to Jev against this server's tool list: can an agent do it with these tools?
Worth a look
None of the five warning signs in these definitions.
A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (25%), doing the product's job (25%), definitions (20%), context (10%), use (10%) and how readily a client connects (10%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →
check_licenseLook up one roofing contractor license by state and license number. Returns status as published by the state regulator, a machine-readable verdict (licensed-active | licensed-not-active | not-found), licensee name, city, expiration, and…
search_licenseesSearch roofing contractors by name, firm, or partial license number, optionally within a state and city. Returns up to 50 regulator-sourced records with a true total count. Use this when the user has a name but no license number.
state_rulesReturn what Roofer Registry has verified about a state's rules for roofing contractors: licensing, licenseTypes, deductibleWaiver, depositRule, permit, insurance, unlicensedPenalty, rightToCancel, aob — each { value, quote, citation, url…
unlicensed_activityList people and companies the state board cited for unlicensed contracting, filtered by county and/or name. Use when the user has a name or company from a truck or flyer but no license number, or asks who was caught working unlicensed…
enforcement_actionsBoard discipline and unlicensed-activity citations for a state, license number, name, or county. Merges licensed-activity discipline rows and unlicensed-activity citations, newest first. Republished as filed; a citation is an allegation…
compare_rulesCompare a specific rule field across 2–10 states. Only states with verified: true carry a rule. Treat null as "not verified", not "no rule". Input formats: states as two-letter codes (FL, GA, TX); field is one of licensing, licenseTypes…
changes_sinceLicense changes (new, lapsed, status change) since a given date, optionally filtered by state and change type. Changes are tracked starting from the first roster refresh after deploy — no backfill is available. Use when monitoring for new…
verify_liveFetch the current license status directly from the state regulator (FL only) and compare it with our roster copy. Uses a 24-hour cache; the second call within 24h returns cached: true. Other states return { supported: false, lookupUrl }…
request_contactSend a contact request to ONE specific licensee the user has chosen, by license number. This creates the same consent-recorded request a person submits on the profile page; it is not lead routing and we never pick the licensee for the…
How to connect
Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:
{
"mcpServers": {
"roofer-registry": {
"type": "http",
"url": "https://rooferregistry.com/api/mcp"
}
}
}Add it
Claude Code, in a terminal
claude mcp add --transport http rooferregistry https://rooferregistry.com/api/mcpclaude.ai, ChatGPT and other clients: add https://rooferregistry.com/api/mcp as a custom connector in the settings.
Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.
Before we count this visit
Analytics and ad measurement tell us which pages and which of our ads do their job: Google Analytics and Google Ads, the Meta pixel, Yandex Metrica, and one first-party id of our own. Nothing is stored until you answer, and declining changes nothing about the site.