Skip to main content
Glama

StudioVector: Chat with your Mindbody

New clients and first visits

new_clients_summary
Read-onlyIdempotent

New clients and first visits at one site in one call. firstVisits: clients whose first booked class or appointment falls in the range, by day, week or month and by home location, with the newest clients' contact details and consent flags for follow-up. newClients: profiles created in the range, with prospects, home locations, referral sources and how many have visited. Inactive profiles are counted. compareTo previous_period or previous_year adds the earlier window at no extra cost. Every client profile is read once whatever the sections, so leaving one out saves no credit; above 15000 a call returns their count and credits until confirmLargeRead is true. For members by membership use membership_summary; for late cancels use late_cancel_count; for attendance use class_attendance_summary; for revenue use sales_summary. Mindbody calls: 1 per 200 client profiles, and with firstVisitDetails 1 for program names and 1 per listed client (at most 701).

Input Schema

NameRequiredDescriptionDefault
topNoRows in byHomeLocation and topReferralSources, 1-25 (default 10); the rest is folded into one row.
limitNoFirst-visit clients listed with contact details, newest first, 0-200 (default 25).
rangeNoDate range ending today (default last_30_days). Use startDate/endDate for other ranges.
siteIdNoSite to call (SiteId header). Default -99.
endDateNoLast day, inclusive (default today). At most 366 days after startDate.
includeNoSections to return (default both).
compareToNoAdd an earlier window. previous_period: the same number of days just before (a whole month compares with the month before). previous_year: the same dates a year earlier.
startDateNoFirst day, e.g. 2026-09-01 (business-local). Default: 30 days ending endDate.
confirmLargeReadNoRead every profile of a large site (default false: return their count and credits first).
firstVisitDetailsNoAdd each listed client's first-visit service category and visits since, and byServiceCategory (1 credit per listed client, plus 1).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent and non-destructive, but the description goes well beyond them: it discloses the credit model, that every profile is read once regardless of sections, the 15,000-profile guard that returns only a count until confirmLargeRead is set, that inactive profiles are counted, and that compareTo costs nothing extra. The Mindbody call arithmetic (1 per 200 profiles, plus 1 for program names, 1 per listed client capped at 701) is unusually candid. It stops short of describing error conditions, so not a full 5.

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?

Front-loaded with what the tool returns, then cost/gating, then sibling routing — a sensible order with no filler sentences and no repetition of the title. It is dense and long, and the closing Mindbody call-count detail is crammed in as a run-on, but every clause carries decision-relevant information.

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 ten-parameter, two-section analytics tool with no output schema, the definition covers return contents, cost, large-read gating, comparison windows and alternatives. The only material gap is that nothing is said about what happens when a site is small, a range is invalid, or a section yields zero rows — minor for a read-only reporting call.

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?

The schema is fully documented at 100% coverage, so the baseline is 3. The description adds real value for two params the schema names only generically — it ties 'top' to the byHomeLocation/topReferralSources row counts and 'limit' to the newest-first contact-detail listing — and explains the firstVisitDetails credit charge. But most of the ten parameters (range, startDate/endDate, siteId, include) are not touched on beyond what the schema already says.

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?

Names both sections it returns (firstVisits and newClients) and states exactly what each contains — first booked class/appointment clients with contact details and consent flags, and profiles created in range with prospects, home locations and referral sources. It also scopes the tool to one site, which an agent can hold against the multi-topic siblings without reading 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?

Explicitly routes four neighbouring questions elsewhere by name: membership_summary for members, late_cancel_count for late cancels, class_attendance_summary for attendance, and sales_summary for revenue. It also adds two non-obvious usage rules — that omitting a section saves no credit, and that a read above 15,000 profiles needs confirmLargeRead — which change how an agent should call it.

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