Skip to main content
Glama

Request a home service

request_home_service

Submit a home-service request (a lead, not a booking).

Every service, plumbing included, works the same way: the request is passed along when a participating provider covers the ZIP code, so do not promise a callback. Requires name, phone, ZIP, and the person's explicit consent. Tell the person details may be shared with Polyares and its service-provider partners, and Polyares, those partners, or Zaptu may call or text about this request. Never place a call for them.

Input Schema

NameRequiredDescriptionDefault
cityNo
notesNoWhat the person needs, in their words.
stateNo2-letter US state code.
dry_runNoValidate only; nothing is saved or passed along.
bedroomsNo
zip_codeYesUS 5-digit ZIP for the job site.
bathroomsNo
frequencyNoone_time
home_typeNo
square_feetNo
address_lineNo
service_typeYesType of local service requested.
source_agentNoYour agent or product name.mcp
customer_nameYesCustomer's full name.
customer_emailNo
customer_phoneYesUS phone number for follow-up contact about this request.
flexible_datesNo
preferred_dateNoPreferred date as YYYY-MM-DD, if any.
consent_to_contactYesMust be true: the person agreed that details may be shared with Polyares and its service-provider partners, and that Polyares, those partners, or Zaptu may call or text about this request.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / consent_to_contact / description
      Previous value: -"Must be true for non-plumbing services: the person agreed that details may be shared with Polyares and its service-provider partners, and that Polyares, those partners, or Zaptu may call or text about this request."New value: +"Must be true: the person agreed that details may be shared with Polyares and its service-provider partners, and that Polyares, those partners, or Zaptu may call or text about this request."
    • changedInput schema / properties / service_type / description
      Previous value: -"Type of local service requested. For plumbing, prefer get_plumbing_call_number."New value: +"Type of local service requested."
  2. Changed1 schema field changed
    • changedInput schema / properties / consent_to_contact / description
      Previous value: -"Must be true for non-plumbing services: the person agreed to a call or text about this request."New value: +"Must be true for non-plumbing services: the person agreed that details may be shared with Polyares and its service-provider partners, and that Polyares, those partners, or Zaptu may call or text about this request."
  3. Changed1 schema field changed
    • changedInput schema / properties / service_type / enum
      Previous value: -[
      -  "house_cleaning",
      -  "deep_cleaning",
      -  "move_in_out_cleaning",
      -  "recurring_cleaning",
      -  "pest_control",
      -  "plumbing",
      -  "hvac",
      -  "handyman",
      -  "other"
      -]New value: +[
      +  "house_cleaning",
      +  "deep_cleaning",
      +  "move_in_out_cleaning",
      +  "recurring_cleaning",
      +  "pest_control",
      +  "garage_door",
      +  "plumbing",
      +  "hvac",
      +  "handyman",
      +  "other"
      +]
  4. First observed

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds substantial context beyond the annotations: the request is only passed along when a participating provider covers the ZIP, so no callback can be promised, and details are shared with third parties. These are material behavioral facts (conditional routing, downstream disclosure) that the readOnly/openWorld/idempotent hints 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the key fact (lead, not booking) in the first sentence and then layers the operational constraints in short, scannable clauses. No filler; every sentence carries a rule the agent must follow.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 19-parameter, non-idempotent write tool with an output schema, the description covers the high-risk dimensions (consent, disclosure, no callback guarantee) well. It is thin on the optional scheduling and property-detail parameters, which an agent must infer from the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 53%, so the description should compensate but only partially does: it names the four required inputs (name, phone, ZIP, consent) and restates the consent disclosure. It says nothing about service_type, notes, dry_run, frequency, or the optional home attributes, leaving about half the parameters to the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Submit a home-service request') and immediately clarifies the output semantics ('a lead, not a booking'). It does not differentiate itself from the sibling request_cleaning, which appears to overlap for cleaning services, so it falls just short of 5.

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 strong operational guidance: don't promise a callback, requires explicit consent, must disclose data sharing with Polyares/partners/Zaptu, and never place a call on the person's behalf. It does not tell the agent when to prefer this over request_cleaning or how to verify ZIP coverage first (e.g., via list_supported_services).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources