Skip to main content
Glama

Tolca: Québec contractor check

Server Details

Check Québec construction contractors against official registries in one call: active RBQ licence, RENA public-contract ban and environmental penalties. Clear verdict with dated sources. Free, read-only, no account.

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.3/5.0

Scored across 2 tools

Disambiguation4/5

The two tools overlap on the RBQ licence check, but the descriptions explicitly differentiate them: qc_licence is a fast single-source active-status lookup, while qc_contractor_check is the full four-source verdict. The guidance ('Good for checking several contractors one after another... For RENA and penalties, use qc_contractor_check') makes selection straightforward.

Naming Consistency4/5

Both names use the same qc_ prefix and snake_case, giving a predictable namespace. The minor deviation is that qc_contractor_check uses a verb-style action while qc_licence is a noun, but both remain readable and clearly scoped.

Tool Count3/5

Two tools for a narrow, single-domain integration is on the thin side; one could argue the fast lookup is just a subset of the comprehensive check. However, the two granularities serve genuinely different use cases (single verdict vs. rapid multi-contractor scanning), so it is defensible.

Completeness4/5

The comprehensive tool covers all four named sources (RBQ, RENA, MELCCFP penalties, SEAO contracts) with a verdict, reasons, and dates, which is strong lifecycle coverage for the stated purpose. Gaps are minor: no batch/bulk lookup endpoint and no historical or appeal-detail operations.

Available Tools

2 tools
qc_contractor_checkQuébec contractor checkA
Read-onlyIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
neqNoQuébec enterprise number (NEQ), 10 digits
langNoAnswer language, default fr
nameNoBusiness name, exact or partial
licenceNoRBQ licence number, e.g. 8315-8105-31

Output Schema

ParametersJSON Schema
NameRequiredDescription
rbqYesRBQ licence record: licence, neq, name, status, restriction, bond, municipality, subcategory_labels, candidates
renaYesMatching RENA entries (public-contract ban)
queryYesWhat was searched and how it matched
noticeNo
reasonsYesPlain-language reasons for the verdict
sourcesYesOfficial sources with extraction dates
verdictYesok = active licence, no RENA, no penalty; review = something to look at; blocking = RENA listing or no active licence; not_found = no match
verdict_labelYes
public_contractsNoPublic 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_penaltiesYesMatching environmental administrative penalties

TDQS

A4.4/5.0
Behavior4/5

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.

Conciseness4/5

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.

Completeness5/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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 lookupA
Read-onlyIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
neqNoQuébec enterprise number (NEQ), 10 digits
langNoAnswer language, default fr
nameNoBusiness name, exact or partial
licenceNoRBQ licence number, e.g. 8315-8105-31

Output Schema

ParametersJSON Schema
NameRequiredDescription
neqYes
nameYes
noteNo
queryYes
activeYestrue if an ACTIVE RBQ licence was found
sourceYes
licenceYes
candidatesYesOther possible matches when the name is ambiguous
categoriesYesAuthorized RBQ work subcategories
restrictedNo
municipalityYes

TDQS

A4.7/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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.

  1. 1 tool update
    • Changedqc_contractor_check1 field changed
      • addedOutput schema / properties / public_contracts
        Added value: +{
        +  "additionalProperties": {},
        +  "description": "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",
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
  2. 2 tool updates
    • First observedqc_contractor_check
    • First observedqc_licence

Publisher details

Operator
Tolca · Publisher source
Vendor relationship
First-party · Publisher source
Trust center
Not available
Restrictions
Free and read-only, no account. Daily quota: 10 contractor checks per day. · Publisher source

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Perplexity for social: ask what competitors are running across social and get answers grounded in real ad and creative data, not guesses.
    2
    Apache 2.0
  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    11 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources