Lord Mechanical LTD
Server Details
North Vancouver plumbing, heating & drainage: business info, services, areas and quote requests.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 5 tools
Each tool has a distinct role: business metadata, raw page retrieval, two index listings, and a quote submission. The only mild overlap is get_business_info vs get_page (the home/about pages likely restate contact details), but the descriptions make the intended use of each clear.
All five tools follow a clean verb_noun snake_case pattern: get_business_info, get_page, list_services, list_service_areas, request_quote. No style mixing or vague verbs.
Five tools is well-matched to a small business website: two discovery indexes, one content fetcher, one contact-info shortcut, and one action tool. Nothing feels redundant or missing at this scale.
get_page provides a catch-all escape hatch so any page on the site (blog, about, service detail) is reachable, and the quote path plus emergency policy are covered. Minor gaps exist, such as no explicit blog/article listing or quote-status lookup, but these are workable via get_page and the phone number.
Available Tools
5 toolsget_business_infoBusiness infoARead-onlyIdempotentInspect
Contact details, hours, emergency policy, estimate policy, credentials and service area of Lord Mechanical LTD (plumbing, heating, gas fitting and drainage, North Vancouver, BC).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false, so the safety profile is clear. The description adds the scope of returned business information but does not add further operational behavior such as freshness, caching, auth requirements, or return format, which is acceptable given the annotations.
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?
The description is a single, front-loaded sentence that lists the returned information without filler. Every listed item contributes to understanding what the tool provides.
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 zero-parameter, read-only lookup tool with no output schema, the description supplies enough detail about the business and the categories of information returned. Combined with the annotations, an agent has sufficient context to select and invoke it correctly.
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 are no parameter semantics to document. The description therefore does not need to compensate for schema gaps, and the baseline score for a parameterless tool is appropriate.
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?
The description clearly identifies the resource and enumerates the business details returned: contact details, hours, policies, credentials, and service area. It is specific enough for an agent to recognize the tool, but it does not explicitly differentiate itself from siblings such as list_service_areas, which overlaps on service-area information.
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?
Usage is implied by the listed content: an agent can infer this is the tool for business contact, hours, policy, credentials, and service-area queries. However, the description gives no explicit when-to-use or when-not-to-use guidance relative to siblings like get_page, list_services, list_service_areas, or request_quote.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pageGet page (Markdown)ARead-onlyIdempotentInspect
Get the Markdown version of any page on lordmechanical.ca. Use a path from list_services, list_service_areas or llms.txt, e.g. "/", "/about/", "/services/plumbing/hot-water-tanks/", "/blog/hot-water-tank-cost-bc/".
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Page path: lowercase, starts and ends with "/" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered and the description is consistent with it ("any page on lordmechanical.ca" matches closed-world scope). The description adds only the Markdown return format, which the title already conveys, and says nothing about error behavior for a bad path or return size. Adequate but not value-adding.
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, front-loaded with the capability and followed by the path-sourcing constraint. No filler, no restatement of annotations, and the examples are compact enough to scan.
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 single-parameter read tool with no output schema, the definition covers what it returns (Markdown), which domain, and where valid paths come from. The remaining gaps, behavior on 404/invalid path and whether the full page is always returned, are minor for a simple fetch.
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%, and the schema already specifies the lowercase leading/trailing-slash pattern, so baseline expectations are met by structure. The description earns a step up by giving four concrete example paths, including a nested service URL and a blog URL, which makes the pattern and trailing-slash convention concrete in a way the regex alone does not.
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, resource, and output format: fetch the Markdown rendering of a page on a named domain. It also implicitly distinguishes itself from the sibling list_* tools, which supply paths rather than page content, so an agent can route between them without opening the 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?
The second sentence gives an explicit prerequisite workflow: use a path from list_services, list_service_areas, or llms.txt. That is clear positive guidance and names concrete alternatives. It stops short of stating exclusions or what to do when a path isn't in those sources, so it's not a full when/when-not treatment.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_service_areasList service areasARead-onlyIdempotentInspect
List the cities served (Metro Vancouver) and the city/neighbourhood pages, with the path to pass to get_page.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this as read-only, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description adds useful behavioral context by saying the result includes city/neighbourhood pages and a path intended for get_page.
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?
It is a single efficient sentence that front-loads the resource and immediately explains the useful output. No sentence is wasted.
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 simple no-parameter read-only listing tool with rich annotations, the description covers the essential scope and the key downstream use of the returned path. It does not describe the full return shape, but no output schema exists and the tool is simple enough that this is a minor 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?
There are zero parameters, so the baseline is 4. The description appropriately avoids inventing parameter semantics for a no-argument listing tool.
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?
The description gives a specific verb and resource (list service areas) and clarifies that it covers cities served in Metro Vancouver plus city/neighbourhood pages. It does not explicitly differentiate itself from the sibling list_services, which keeps it below a 5.
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?
It clearly indicates a usage pattern: obtain the path to pass to get_page. It does not spell out when not to use this tool or compare against list_services, so it is clear but not fully routing-oriented.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_servicesList servicesARead-onlyIdempotentInspect
List the service pages (plumbing, heating, drainage) with their URLs and the path to pass to get_page for full details and typical prices.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Optional filter |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare that this is a read-only, idempotent, non-destructive, closed-world operation. The description adds useful context about what the list contains and that full details and typical prices come from get_page, without contradicting the annotations.
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?
The definition is a single front-loaded sentence with no wasted language. It efficiently states what is listed, what is returned, and how it connects to get_page.
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 simple read-only list tool with one optional enum parameter and no output schema, the description is complete enough: it explains the resource, the returned URLs and path, and the handoff to get_page for details and prices.
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 description coverage is 100%, and the single optional category parameter is an enum for plumbing, heating, and drainage. The description mentions those categories but does not explicitly explain filtering behavior or the default when category is omitted, so the schema remains the primary source.
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?
The description uses a specific verb and resource: it lists service pages for plumbing, heating, and drainage, and says the result includes URLs and a path for get_page. This distinguishes it from get_page itself, though it does not explicitly contrast with list_service_areas.
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?
It clearly implies the workflow: call this to discover service pages and then pass the returned path to get_page for full details and typical prices. It does not explicitly state when to use it instead of list_service_areas, but the intended context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_quoteRequest a quoteAInspect
Send a quote / service request to Lord Mechanical LTD for a customer. Collect the details, show them to the customer, and call this only after the customer confirms. The team calls or texts the customer back. Not for emergencies: tell the customer to phone (604) 670-3737 directly.
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | City where the work is needed | |
| name | Yes | Customer's full name | |
| No | Optional. A confirmation email is sent here | ||
| phone | Yes | Customer's North American phone number, e.g. 604-555-0123 | |
| details | No | What the customer needs, in their words. No links. | |
| service | No | Closest matching service | |
| urgency | No | emergency = today, soon = within 1-2 days, this_week, flexible | |
| agent_name | No | Name of the AI assistant sending this, e.g. Claude | |
| customer_confirmed | Yes | Must be true: the customer has seen these details and asked you to send them | |
| preferred_language | No | Customer's preferred language, e.g. English |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false; the description adds value beyond these by disclosing the downstream effect ('the team calls or texts the customer back') and the human-confirmation gate. It does not warn about duplicate submissions or what happens if the same request is sent twice, which matters given idempotentHint=false.
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 short sentences, each carrying a distinct load: purpose, workflow, outcome, and exclusion. The purpose is front-loaded and the emergency exclusion is clearly separated at the end.
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 10-parameter submission tool with no output schema, the description tells the agent what the submit does and what happens next. The only missing piece is what the caller receives as a result (no output schema exists to cover it), so a full 5 is not warranted.
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 description coverage is already 100%, so the baseline is 3. The description nonetheless adds procedural meaning to the required customer_confirmed gate ('Collect the details, show them to the customer, and call this only after the customer confirms'), which the schema alone cannot express as a workflow.
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 ('Send a quote / service request to Lord Mechanical LTD for a customer') and identifies the recipient business by name. This clearly separates it from the read-only siblings (get_business_info, list_services), which only describe and never submit.
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 precondition ('call this only after the customer confirms'), an explicit exclusion ('Not for emergencies'), and names the alternative action ('tell the customer to phone (604) 670-3737 directly'). The when/when-not/alternative triad is fully present.
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.
5 tool updates
- First observed
get_business_info - First observed
get_page - First observed
list_service_areas - First observed
list_services - First observed
request_quote
Related MCP Connectors
Licensed electrician in Coquitlam & Greater Vancouver, BC: services, areas, free estimate requests.
Johnson Bros. Plumbing: check coverage, services, pricing, availability, and book by SMS.
Connect people with independent local home-service contractors. For plumbing, the person dials.
905 Trades, Hamilton ON residential trades referral network: facts, site search, quote requests.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables 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.-
- FlicenseNot gradedqualityCmaintenanceVerifies Texas plumbing contractor licenses in real time from official TSBPE data, supporting lookups by contractor name, license number, and county. It charges $0.05 USDC per paid query using the x402 protocol, with free discovery tools.-
- AlicenseAqualityCmaintenanceEnables read-only lookups of state septic licensing agencies with their official verification URLs, searches of license-matched septic contractors by state, city, county, zip or service, and retrieval of sourced septic cost guides. Every response carries a thesepticguide.com source link, requires no API key, and reports its snapshot date.4MIT
- AlicenseAqualityBmaintenanceMCP server providing 12 tools for Seattle-area home remodeling: real-time cost estimation across 8 project types, contractor business info, project portfolio, blog content, and quote submission. Connects via Streamable HTTP — no auth required.36MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.