Skip to main content
Glama

Server Details

Pool service scheduling and lead management for Pool Pro Florida in St. Lucie County, Florida.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.1/5.0

Scored across 3 tools

Disambiguation4/5

The three tools have distinct primary actions: checking availability, booking an appointment, and creating a lead. However, both book_appointment and create_lead result in a lead in Pool Founder, and the warning against calling create_lead before book_appointment hints at potential overlap, creating slight ambiguity.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern in snake_case: book_appointment, create_lead, get_available_times. No mixing of conventions.

Tool Count5/5

Three tools form a minimal but complete set for the described initial booking and lead capture workflow. Each tool is necessary and there is no redundancy.

Completeness3/5

The surface covers availability checking, booking, and lead creation, but lacks any tools for managing existing appointments (cancel, reschedule) or updating/deleting leads. This is a notable gap for a booking system.

Available Tools

3 tools
book_appointmentBook Pool Pro Florida appointmentAInspect

Book a confirmed Pool Pro Florida appointment through Cal.com after the customer has selected an available time. Requires customer name, email, service address, and the exact start value returned by get_available_times. A successful booking triggers the existing Cal.com webhook, which creates the lead in Pool Founder.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesCustomer full name.
emailYesCustomer email address.
notesNoOptional notes about the pool or requested service.
phoneNoCustomer phone number. Normal U.S. formatting is accepted.
startYesExact ISO 8601 slot start returned by get_available_times.
addressYesPool service address; Cal.com uses this as the attendee address/location.
timeZoneNoIANA time zone. Defaults to America/New_York.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare it is a non-destructive write in an open world; the description adds the key side effect that a successful booking fires the existing Cal.com webhook and creates the lead in Pool Founder. That downstream consequence is not derivable from annotations or schema. It omits idempotency behavior and what happens on failure or double-booking.

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?

Three tight sentences: purpose first, then prerequisites/required inputs, then the downstream effect. No filler and no repetition that isn't load-bearing for invocation.

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 write tool with no output schema, the description covers the trigger condition, required inputs, and the resulting lead creation, which is what an agent most needs. It could still say what the tool returns on success (confirmation id, booked time) to close the remaining gap.

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 description coverage is 100%, so all seven parameters are already documented, including the 'start' constraint. The description repeats the four required fields and the exact-start requirement without adding new syntax, format, or default information beyond the schema (timeZone default, phone formatting, notes are all schema-only). Baseline 3 applies.

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 ('Book'), resource ('Pool Pro Florida appointment'), and provider ('through Cal.com'), plus the precondition that the customer has already selected a time. An agent can distinguish this from get_available_times and create_lead without opening any schema.

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?

Explicitly says when to call it ('after the customer has selected an available time') and ties the required 'start' value to the get_available_times output, which is strong context. It stops short of naming create_lead as an alternative or explicitly telling the agent not to call it, though the webhook note implies the lead is created automatically.

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

create_leadCreate Pool Pro Florida leadAInspect

Create a Pool Pro Florida service lead in Pool Founder when a customer is interested in service but is not yet booking an appointment. Do not call this before book_appointment for the same inquiry because a successful Cal.com booking creates the Pool Founder lead through the booking webhook.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesCustomer full name.
emailNoCustomer email address.
phoneNoCustomer phone number.
addressNoPool service address.
messageNoCustomer request or useful notes.
serviceYesRequested service, such as Pool Cleaning or Pool Consultation.

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does disclose the key side effect: it writes a lead into Pool Founder, and a duplicate is created if a booking already happened via the webhook. That is a genuinely valuable behavioral hazard. It does not mention permission/auth requirements or what the response contains, so it stops short of a 5.

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?

Two sentences, no filler. The positive scope comes first and the critical 'do not call before book_appointment' warning is front-loaded in the second sentence where it will be read.

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 six-parameter mutation tool with no annotations and no output schema, the description covers purpose, correct sequencing, and the duplicate-lead side effect. It omits return-value expectations and permission needs, but those are minor relative to the sequencing guidance it provides.

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 100% (all six parameters are documented, including examples for 'service'), so the schema already does the heavy lifting. The description adds no formatting, validation, or optionality guidance beyond it, which is the baseline 3 case.

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?

The description names a specific verb and resource ('Create a Pool Pro Florida service lead in Pool Founder') plus the qualifying condition ('customer is interested in service but is not yet booking an appointment'). That condition alone lets an agent distinguish it from book_appointment 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?

It gives an explicit prohibition ('Do not call this before book_appointment for the same inquiry') and the underlying reason (the Cal.com booking webhook already creates the lead), which is exactly the routing information an agent needs. The alternative tool is named, so there is no inference required.

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

get_available_timesGet Pool Pro Florida appointment availabilityA
Read-only
Inspect

Get real Cal.com appointment availability for Pool Pro Florida. Use date-only YYYY-MM-DD values. Use this when a customer wants to schedule a pool consultation or service appointment.

ParametersJSON Schema
NameRequiredDescriptionDefault
endYesLast date to check, YYYY-MM-DD.
startYesFirst date to check, YYYY-MM-DD.
timeZoneNoIANA time zone. Defaults to America/New_York.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already establish readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the agent knows this is a safe read against an external system. The description adds the 'real Cal.com' qualifier (confirming live external data) but says nothing about return shape, result limits, or empty-result behavior.

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?

Three short sentences, front-loaded with the core purpose. The date-format instruction duplicates the schema pattern, which is a minor redundancy, but nothing is padded.

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

Completeness3/5

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

No output schema exists, so the description should ideally describe what availability comes back (a list of slots, their shape, or how to feed them to book_appointment). That gap leaves the agent guessing about the response, though the input side is fully covered.

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 description coverage is 100%, so start, end and timeZone are already documented, and the description's 'Use date-only YYYY-MM-DD values' merely restates the schema pattern. Baseline 3 is appropriate when the schema does all parameter work.

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 ('Get ... appointment availability') scoped to a named business (Pool Pro Florida) and a named source (Cal.com). An agent can immediately distinguish this from book_appointment and create_lead, which are obviously different operations.

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?

'Use this when a customer wants to schedule a pool consultation or service appointment' gives clear triggering context. It stops short of naming the alternative (book_appointment) or stating that this returns options rather than confirming a booking, so the routing is implied rather than explicit.

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. 3 tool updates
    • First observedbook_appointment
    • First observedcreate_lead
    • First observedget_available_times

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    The routing layer between AI agents and local Florida businesses. Live data on permits, sector gaps, and market signals across 2,383 ZIP codes — so when an agent, voice assistant, or real customer needs something done, the right business gets the job. Ask LocalIntel Claim Your Listing
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    AI sales manager for composite swimming pools. Recommends pools by plot size & budget, calculates total cost with accessories, provides BIM/CAD files for architects, and connects clients with dealers across 175 Russian cities
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to match users with licensed, rated contractors in Miami, providing pricing and direct contact details.
    77 npm
    MIT
  • A
    license
    B
    quality
    A
    maintenance
    66 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.
    53
    223 npm
    3
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources