GTA AI Plumber

Agent-first GTA plumbing: compare vetted providers, negotiate price and availability, and book.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
94%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'find_gta_plumbers_and_request_quotes' name length outside 3-30 rangein find_gta_plumbers_and_request_quotes

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~620Tokens (tool definitions)
~5.1 KBTypical response size
Minimal attention impact (0.48% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "gta-plumber": {
      "url": "https://aiplumber.online/agent/mcp"
    }
  }
}

Remote endpoints

https://aiplumber.online/agent/mcpstreamable-http

What it can do

Tool inventory

Tools (1)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢find_gta_plumbers_and_request_quotes(municipality, district, region, postal_code, service_address, ...)

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 dozens of pre-vetted 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.

Input Schema

{
  "type": "object",
  "properties": {
    "municipality": {
      "type": "string",
      "enum": [
        "Toronto",
        "Ajax",
        "Brock",
        "Clarington",
        "Oshawa",
        "Pickering",
        "Scugog",
        "Uxbridge",
        "Whitby",
        "Burlington",
        "Halton Hills",
        "Milton",
        "Oakville",
        "Brampton",
        "Caledon",
        "Mississauga",
        "Aurora",
        "East Gwillimbury",
        "Georgina",
        "King",
        "Markham",
        "Newmarket",
        "Richmond Hill",
        "Vaughan",
        "Whitchurch-Stouffville"
      ],
      "description": "The GTA municipality where service is needed."
    },
    "district": {
      "type": "string",
      "enum": [
        "Old Toronto",
        "North York",
        "Scarborough",
        "Etobicoke",
        "East York",
        "York"
      ],
      "description": "Optional Toronto district. Use only when municipality is Toronto."
    },
    "region": {
      "type": "string",
      "enum": [
        "Toronto",
        "Durham",
        "Halton",
        "Peel",
        "York"
      ],
      "description": "GTA region. The server verifies this from municipality."
    },
    "postal_code": {
      "type": "string",
      "description": "Ontario postal code."
    },
    "service_address": {
      "type": "string",
      "description": "Full address where service is needed."
    },
    "problem": {
      "type": "string",
      "description": "What is happening, including visible symptoms and affected fixtures."
    },
    "urgency": {
      "type": "string",
      "enum": [
        "emergency",
        "today",
        "next_day",
        "flexible"
      ]
    },
    "preferred_time": {
      "type": "string",
      "description": "Preferred appointment window in local time."
    },
    "contact_name": {
      "type": "string"
    },
    "phone": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "consent_to_contact": {
      "type": "boolean",
      "description": "Must be true. Allows AI Plumber and prospective plumbing providers to contact the customer about this request."
    },
    "source_platform": {
      "type": "string",
      "description": "Calling agent or platform, if known."
    }
  },
  "required": [
    "municipality",
    "service_address",
    "problem",
    "urgency",
    "contact_name",
    "consent_to_contact"
  ],
  "additionalProperties": false,
  "anyOf": [
    {
      "required": [
        "phone"
      ]
    },
    {
      "required": [
        "email"
      ]
    }
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded1 tools