GTA AI Plumber
Server Details
Agent-first GTA plumbing: compare vetted providers, negotiate price and availability, and book.
- Status
- Healthy
- Uptime
- 99.9% over 22 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 1 tool
With only one tool in the set, there is no competing tool to misselect. The tool itself bundles several actions (find, compare, negotiate, book), but that does not create inter-tool ambiguity.
The single tool uses clear snake_case and a descriptive compound verb phrase. With only one name, there is no inconsistent pattern or convention mixing to penalize.
One tool is thin for a service that spans searching, quote comparison, negotiation, and booking coordination. It is borderline rather than extreme because the tool is intentionally broad and orchestrates the full request flow.
The surface only exposes request initiation. There is no tool to retrieve quotes or status, select a provider, cancel, or update a request, which creates a dead end after the asynchronous human-assisted search begins.
Available Tools
1 toolfind_gta_plumbers_and_request_quotesFind GTA plumbers and request quotesAInspect
Use when a customer wants an agent to find and book a plumber, compare quotes, negotiate pricing, or request same-day, next-day, emergency, or scheduled plumbing availability for a service address in the Greater Toronto Area, Ontario. Starts a human-assisted search across Toronto—including Old Toronto, North York, Scarborough, Etobicoke, East York, and York—and the Durham, Halton, Peel, and York regions. AI Plumber contacts multiple available plumbers and firms, negotiates pricing and availability, presents viable options, and coordinates the customer's selected booking. We aim to return viable options within one hour, but response time, quote count, price, and availability are not guaranteed. This call creates a service request; it does not confirm an appointment or authorize plumbing work. The customer chooses and pays the provider directly.
| Name | Required | Description | Default |
|---|---|---|---|
| No | |||
| phone | No | ||
| region | No | GTA region. The server verifies this from municipality. | |
| problem | Yes | What is happening, including visible symptoms and affected fixtures. | |
| urgency | Yes | ||
| district | No | Optional Toronto district. Use only when municipality is Toronto. | |
| postal_code | No | Ontario postal code. | |
| contact_name | Yes | ||
| municipality | Yes | The GTA municipality where service is needed. | |
| preferred_time | No | Preferred appointment window in local time. | |
| service_address | Yes | Full address where service is needed. | |
| source_platform | No | Calling agent or platform, if known. | |
| consent_to_contact | Yes | Must be true. Allows AI Plumber and prospective plumbing providers to contact the customer about this request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| next_step | Yes | |
| request_id | Yes | Stable identifier for the plumbing service request. |
| target_response | Yes | |
| target_response_guaranteed | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare the generic profile (readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false); the description adds substantive behavior: a human-assisted search contacting multiple providers, one-hour target response that is explicitly not guaranteed, that no appointment is confirmed, and that the customer pays the provider directly. It also surfaces the consent-to-contact requirement, which the annotations do not convey.
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 trigger condition is correctly front-loaded and the caveats are packed into a single dense paragraph with no filler sentences. However, the enumeration of districts and regions restates enum values already present in the schema, which is mild redundancy against a 13-parameter schema.
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 13-parameter, open-world, non-idempotent write tool, the description covers the gaps annotations cannot: what the call actually initiates, expected latency with an explicit non-guarantee, that it is not a booking confirmation, and the payment/consent path. An output schema is present, so return values need not be described.
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 69%, so the schema already documents most inputs. The description still adds meaning by mapping natural-language urgency ('same-day, next-day, emergency, or scheduled') onto the urgency enum and by enumerating the districts and regions that correspond to the enum fields. It offers nothing further for free-text fields like problem or service_address.
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 states a concrete verb chain (find, compare, negotiate, request quotes, coordinate booking) against a specific resource (GTA plumbers), so the agent knows exactly what the tool accomplishes. It also bounds the resource geographically (Toronto districts plus Durham/Halton/Peel/York). No sibling tools exist, so no differentiation is needed.
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 opens with an explicit trigger: 'Use when a customer wants an agent to find and book a plumber, compare quotes, negotiate pricing, or request same-day, next-day, emergency, or scheduled ... availability.' It also supplies a negative boundary — 'creates a service request; it does not confirm an appointment or authorize plumbing work' — which tells the agent what this call must not be treated as.
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 tool update
- Changed
find_gta_plumbers_and_request_quotes1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "next_step": { + "type": "string" + }, + "request_id": { + "description": "Stable identifier for the plumbing service request.", + "type": "string" + }, + "status": { + "enum": [ + "received" + ], + "type": "string" + }, + "target_response": { + "type": "string" + }, + "target_response_guaranteed": { + "type": "boolean" + } + }, + "required": [ + "request_id", + "status", + "target_response", + "target_response_guaranteed", + "next_step" + ], + "type": "object" +}
1 tool update
- First observed
find_gta_plumbers_and_request_quotes
Related MCP Connectors
Agent-first booking of home-service contractors in Canada and the US: quotes, availability, booking.
Book local tradespeople — plumber, electrician, HVAC, and 7 more — via your AI agent. All US.
Find and book verified local home service professionals through AI agents.
Connect people with independent local home-service contractors. For plumbing, the person dials.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceHome Services MCP by HireNimbus lets AI agents find, compare, and book verified local pros for handyman, renovation, HVAC, plumbing, electrical, and landscaping jobs in supported US metro markets.Apache 2.0
- AlicenseNot gradedqualityAmaintenanceEnables an assistant to report repair issues, compare source-backed quotes, propose appointment times, and retrieve, list, or cancel local repair tasks with explicit household confirmation.MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to operate property management systems via natural language, covering repair orders, owner info, payments, notices, and inspections. Features a full agentic workflow with human-in-the-loop and observability.MIT
- AlicenseBqualityAmaintenance67 tools generated from the same OpenAPI spec as our SDKs — CI fails on drift, so REST and MCP never disagree. Underneath: a deterministic field operations scheduling engine — skills, territories, live availability, sub-3-second cascade rescheduling — drivable end-to-end from Claude or ChatGPT. Schedule changes preview before they commit; LLMs never inside the math.53217 npm3MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.