Tolca
Server Details
Know who you are paying before you pay: Québec contractor and company checks, plus web search. x402.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- yayabough/tolca
- GitHub Stars
- 0
- Server Listing
- Tolca
TDQS
Scored across 2 tools
The two tools overlap in that both return RBQ licence status, but the descriptions clearly delineate qc_licence as a fast single-field lookup and qc_contractor_check as the comprehensive multi-source screening (RENA, penalties, SEAO). The qc_licence description explicitly redirects to qc_contractor_check for bans and penalties, which mitigates misselection.
Both share the 'qc_' prefix and snake_case, but one is noun_verb (qc_contractor_check) and the other is a bare noun (qc_licence), so the action pattern isn't uniform. It remains readable but is not a predictable verb_noun scheme throughout.
Two tools is thin for a due-diligence domain, and the fast/full split makes one look close to a subset of the other. It's defensible as a deliberately minimal surface, but borderline under-scoped.
For a contractor screening purpose the pair covers licence validity, public-contract bans, environmental penalties and SEAO award history with a verdict, which is solid lifecycle coverage for the stated task. Missing operations like listing/searching contractors by category or region are minor gaps an agent can work around.
Available Tools
2 toolsqc_contractor_checkQuébec contractor checkARead-onlyIdempotentInspect
Check a Québec construction contractor against four official public data sources in one call: active RBQ licence (status, restrictions, bond, authorized work categories), RENA (businesses barred from public contracts and public subcontracts), environmental administrative penalties (MELCCFP) and public contracts awarded on SEAO (count, total amount, main public buyers, last 12 months). Returns a verdict ok / review / blocking / not_found with reasons, sources and extraction dates. Use when the user asks whether a Québec contractor, subcontractor or renovation company is licensed, trustworthy or eligible for public contracts. Provide neq, licence or name.
| Name | Required | Description | Default |
|---|---|---|---|
| neq | No | Québec enterprise number (NEQ), 10 digits | |
| lang | No | Answer language, default fr | |
| name | No | Business name, exact or partial | |
| licence | No | RBQ licence number, e.g. 8315-8105-31 |
Output Schema
| Name | Required | Description |
|---|---|---|
| rbq | Yes | RBQ licence record: licence, neq, name, status, restriction, bond, municipality, subcategory_labels, candidates |
| rena | Yes | Matching RENA entries (public-contract ban) |
| query | Yes | What was searched and how it matched |
| notice | No | |
| reasons | Yes | Plain-language reasons for the verdict |
| sources | Yes | Official sources with extraction dates |
| verdict | Yes | ok = active licence, no RENA, no penalty; review = something to look at; blocking = RENA listing or no active licence; not_found = no match |
| verdict_label | Yes | |
| public_contracts | No | Public contracts awarded on SEAO in the last 12 months: contracts, total_cad, first_award, last_award, buyers, by_category, recent (up to 5), matched_by |
| environmental_penalties | Yes | Matching environmental administrative penalties |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, open-world and non-destructive behavior, so the bar is lower; the description still adds real value by naming the four sources queried, the 12-month contract window, and that extraction dates accompany the verdict. It does not mention latency, rate limits, or what happens when no source matches.
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, both front-loaded with the key facts (sources first, then when-to-use and inputs). The first sentence is clause-dense, but no sentence is wasted or redundant.
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?
An output schema exists, so return-value detail is not needed, and the description still summarizes the verdict model. Sources, trigger conditions, identifier options and freshness are all covered, which is complete for an agent deciding whether and how to call this multi-source lookup.
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?
Schema coverage is 100%, so the baseline is 3, but the description adds a disjunction not expressed in the schema (zero required params): the caller must supply neq, licence or name. It does not explain acceptable name-matching fuzziness or the effect of lang, though the schema documents both.
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 specific verb (check) plus resource (Québec construction contractor) and enumerates the four data sources and their scope. It clearly differentiates itself from the sibling qc_licence by covering RBQ licence plus RENA, MELCCFP penalties and SEAO contracts in one call, and names the verdict values returned.
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?
Gives an explicit trigger ('Use when the user asks whether a Québec contractor, subcontractor or renovation company is licensed, trustworthy or eligible for public contracts') and tells the agent which identifier to supply. It does not state when to prefer the sibling qc_licence over this broader check, so the alternative-route guidance is incomplete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
qc_licenceQuébec RBQ licence lookupARead-onlyIdempotentInspect
Fast lookup: does this Québec business hold an ACTIVE RBQ (Régie du bâtiment du Québec) construction licence right now? Returns active true/false, licence number, legal name, NEQ, municipality, restriction flag and authorized work categories. Good for checking several contractors one after another. For the RENA public-contract ban and environmental penalties, use qc_contractor_check. Provide neq, licence or name.
| Name | Required | Description | Default |
|---|---|---|---|
| neq | No | Québec enterprise number (NEQ), 10 digits | |
| lang | No | Answer language, default fr | |
| name | No | Business name, exact or partial | |
| licence | No | RBQ licence number, e.g. 8315-8105-31 |
Output Schema
| Name | Required | Description |
|---|---|---|
| neq | Yes | |
| name | Yes | |
| note | No | |
| query | Yes | |
| active | Yes | true if an ACTIVE RBQ licence was found |
| source | Yes | |
| licence | Yes | |
| candidates | Yes | Other possible matches when the name is ambiguous |
| categories | Yes | Authorized RBQ work subcategories |
| restricted | No | |
| municipality | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds genuinely non-structured behavior: the result reflects current status ('right now', ACTIVE), which implies a live external lookup rather than a cached record, and enumerates the returned fields including the restriction flag.
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?
Four tight sentences with the core capability, return shape, batch hint, sibling exclusion and parameter guidance front-loaded in that order. No filler and nothing repeated from the schema or annotations.
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?
For a read-only lookup with an output schema, an alternative sibling and 100% parameter coverage, the description supplies everything needed: what it answers, what comes back, which identifier to pass, and when to prefer the other 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?
Schema coverage is 100%, so the baseline would be 3. The closing 'Provide neq, licence or name' adds meaning the schema does not: despite zero required parameters, at least one identifier must be supplied, and any of the three is acceptable. That is useful disambiguation beyond the per-field descriptions, though it does not explain precedence when several are supplied.
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 specific verb and resource ('does this Québec business hold an ACTIVE RBQ construction licence right now'), plus the exact return payload. It also names the sibling it is not for (RENA ban / environmental penalties), so an agent can distinguish it from qc_contractor_check without opening either schema.
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?
Explicitly routes the agent: use this for live RBQ licence status, use qc_contractor_check for the RENA public-contract ban and environmental penalties. It also flags the batch use case ('good for checking several contractors one after another'), which is exactly the kind of when-to-use context that is otherwise invisible.
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
qc_contractor_check - First observed
qc_licence
Related MCP Connectors
Verify a company before your agent pays, onboards or contracts it. One call returns one verdict (ok / review / blocking / not found) from official public sources: US restricted-party lists (Consolidated Screening List incl. OFAC SDN, refreshed daily), UK Companies House, Canadian federal corporations, GLEIF legal entity status, and contractor licences in Québec (RBQ, RENA), Washington and Oregon. Also: npm/PyPI package safety check. Free tools: qc_contractor_check, qc_licence, pkg_check (daily quota). Paid tools: pay per call in USDC on Base (x402), no account.
Check contractor quotes for red flags and pricing risks. Free scan, paid reports, RFP tools.
Hire evidence-verified home-service contractors. Confirmed-job reviews only; rank is never buyable.
Free contractor-license checks from official state records; a no-match never proves unlicensed.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceEnables searching and retrieving 126 Canadian contractor forms with verified regulatory citations, determining needed forms from plain-language situations, and estimating 2026 provincial trades taxes, required hourly rates, and HST quick method comparisons.-
- AlicenseAqualityDmaintenanceReal-time contractor license verification across 45 US states. Verifies license status, expiration, and disciplinary history directly against state licensing board portals.434 npmMIT
- AlicenseNot gradedqualityBmaintenanceFrench company data for AI agents: directors with probable business email, people search, counterparty checks (KYB) and hiring signals from official registries. Paid per call with x402 (USDC on Base or Solana), charged only when found.1,321 npmMIT
- FlicenseAqualityCmaintenanceProvides tools to verify x402/MCP transactions before payment and fact-check claims, with verdicts and sources.2-
Glama MCP Gateway
Add one secure layer between your agents and this server.