California C-10 Contractor Check
Server Details
Paid source-linked California electrical contractor license preflight.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- impanyu/agentic_services
- GitHub Stars
- 0
- Server Listing
- Web Evidence
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: one performs the paid license lookup while the other returns pricing/scope metadata. There is minor overlap since pricing is already stated in check_c10_license's description, but an agent can easily choose between them.
Both names use snake_case and lead with a verb (check_, list_). The verb choices differ slightly (action vs. listing) but the pattern is predictable and readable.
Two tools is thin for any server, though the scope (a single CSLB C-10 license check plus its pricing) is narrow enough that it is defensible. It sits at the borderline of feeling under-provisioned.
The core operation (fetch CSLB detail and assess C-10 classification, bond, and workers comp) plus a pricing tool cover the primary flow. However, there is no batch lookup, no search by contractor name, and no historical or status-tracking operation, leaving notable gaps.
Available Tools
2 toolscheck_c10_licenseCheck C-10 contractor licenseAInspect
Fetch the current CSLB public detail and assess the C-10 classification, bond, and workers compensation fields. Costs $1.00 USDC on Base per call.
| Name | Required | Description | Default |
|---|---|---|---|
| licenseNumber | Yes | California CSLB license number. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations give only generic hints (readOnlyHint=false, openWorldHint=true, idempotentHint=false), so the description's disclosure of a $1.00 USDC charge on Base per call is genuinely additive and explains why the call is not free/read-only. It still omits payment mechanics and what happens if the license lookup fails (refund or not) — material for a paid call.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler, and the core action is front-loaded ahead of the cost note. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the operation, the assessed fields, and the cost, but with no output schema it never hints at the shape or reliability of the returned assessment (statuses, missing-field behavior), and it omits how the USDC payment is authorized. Adequate but with real gaps for a paid, single-purpose tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single parameter with 100% schema description coverage and a pattern constraint, so the schema fully documents it. The description adds nothing beyond that, which is the correct baseline when the schema does the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: it fetches CSLB public detail and assesses the C-10 classification, bond, and workers comp fields. An agent can distinguish it from the sibling 'list_contractor_check_prices' (which lists prices rather than performing the check), though the description never explicitly names that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or when-not-to-use guidance; the only routing information is implied by the verb 'check' versus the sibling's 'list'. The $1.00 cost is disclosed but not framed as a decision criterion (e.g., 'use the price tool first to confirm cost').
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_contractor_check_pricesList contractor check pricesBRead-onlyIdempotentInspect
Show the price and scope of the California C-10 check. This tool is free.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| scope | Yes | |
| network | Yes | |
| priceUsd | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and closed-world, so the safety profile is fully covered. The description adds one genuinely new behavioral fact, that the tool is free, which is useful for routing, but says nothing about response shape, pagination, or freshness of the price data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no filler, and the subject (price and scope of the C-10 check) is front-loaded. The trailing 'This tool is free' is short and useful, though it could be folded into a more informative routing statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters and an output schema present, the description need not explain return values. It covers the one thing an agent needs to choose this tool: that it yields C-10 price/scope information at no cost. The unresolved overlap with check_c10_license is the main remaining gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; baseline 4 applies. It correctly implies no input is needed to see the C-10 check pricing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb and resource ('Show the price and scope of the California C-10 check'), so the agent knows it returns pricing/scope data rather than license status. It does not, however, explain how it differs from the sibling check_c10_license, and the plural name ('check prices') sits awkwardly against the description's single C-10 scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage signal is 'This tool is free', which hints at a cost-driven reason to prefer it, but there is no explicit when-to-use, when-not-to-use, or reference to the sibling check_c10_license. The agent must infer the relationship between the two tools on its own.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- First observed
check_c10_license - First observed
list_contractor_check_prices
Related MCP Connectors
Verify contractor licenses: 50 states + DC + 8 cities — status, expiration, disciplinary history.
Verify a contractor, real estate or cosmetology license in 12 US states from the boards' own files.
Did this contractor's licence change? Observed lapses and reinstatements, not a snapshot.
Verified US licensed-contractor data: 879k+ state-board records, metered per record, free discovery.
Related MCP Servers
- AlicenseAqualityDmaintenanceReal-time contractor license verification across 45 US states. Verifies license status, expiration, and disciplinary history directly against state licensing board portals.457 npmMIT
- AlicenseAqualityCmaintenanceVerifies contractor license status mid-task, returning normalized JSON with active/expired/suspended/revoked status, bond details, and insurance for WA (reliable) and CA (beta) jurisdictions.255 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents and procurement systems to verify contractor licenses against official state boards, search contractors by trade and location, audit workers' comp, surety bonds and OSHA safety records, and check SAM.gov federal debarment status. It returns a deterministic ALLOW/WARN/BLOCK compliance decision plus registry health metrics for US trade contractors.MIT
- AlicenseAqualityDmaintenance50-state professional license verification for AI agents.322 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.