Goldsberry Orthodontics
Server Details
Public facts and a free consultation request for Goldsberry Orthodontics, Sugarhouse, Salt Lake City
- Status
- Healthy
- Uptime
- 100.0% over 20 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 7 tools
Most tools have clear purposes, but get_business_info overlaps heavily with get_practice_info and get_locations, and request_consultation is an exact alias for submit_consultation. The descriptions explain the overlaps, but an agent still has to choose between legacy and preferred tools.
Tool names consistently use snake_case with a verb_noun or get_noun pattern. Minor deviations appear in the consultation verbs (get_consultation_info vs request_consultation vs submit_consultation), but overall naming is readable and predictable.
Seven tools is a reasonable scope for a small orthodontic practice assistant. The count is slightly inflated by two legacy aliases that could be removed without losing capability.
The surface covers business info, locations, services, consultation preparation, and consultation submission, which is solid for an informational practice domain. Minor gaps exist around direct scheduling or FAQ content, but the core workflow is covered.
Available Tools
7 toolsget_business_infoGet business infoARead-onlyInspect
Public Goldsberry Orthodontics overview: doctor, phone, email, hours, website, and booking links. Use for general questions about the practice.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered by structured fields. The description only adds that the data is "public" practice information, with no mention of auth requirements, caching, or freshness. Adds modest value on top of rich annotations.
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?
Two short sentences, front-loaded with the resource and its contents, followed by the use case. No filler or restated title text.
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?
With no output schema, the description carries the return-value burden and does so by listing the returned fields. Combined with annotations covering safety and a parameterless schema, the only real gap is the unresolved boundary with get_practice_info.
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?
The tool takes zero parameters, so there is nothing for the description to disambiguate. Baseline 4 applies; the field list in the description accurately mirrors what the caller gets rather than misrepresenting inputs.
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?
States a specific resource (Goldsberry Orthodontics business overview) and enumerates exactly what it returns: doctor, phone, email, hours, website, booking links. It is a clear read of a single resource, though it never distinguishes itself from the near-identical sibling get_practice_info.
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?
"Use for general questions about the practice" gives a context, but it is generic and does not exclude or route against get_practice_info, get_consultation_info, or get_locations, which cover adjacent territory. An agent facing a general practice question has no stated rule for choosing this tool over its siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_consultation_infoGet consultation infoARead-onlyInspect
How free consultations work, required fields for submit_consultation, confirmation rules, and what not to collect (no DOB, insurance, or clinical data).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, destructiveHint=false, and closed-world scope, so the safety profile is covered. The description adds that this is a rules/information tool rather than an action, but gives no sense of return format or freshness of the content it serves.
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?
A single dense sentence enumerating four content areas with no filler. It is adequately front-loaded, though the list structure reads more like a table of contents than a prioritized lead.
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?
With no parameters and no output schema, the description is the agent's only signal of what comes back, and it does enumerate the content (rules, required fields, confirmation rules, collection restrictions). The main omission is any explicit tie-in to when this should be fetched relative to submit_consultation.
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?
The tool takes zero parameters and the schema is an empty object, so there is nothing for the description to disambiguate. Baseline 4 applies; no parameter-level gaps exist.
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 specific content domain: consultation mechanics, required fields, confirmation rules, and prohibited data. It is distinguishable from generic info siblings like get_business_info and get_services, though it never names those siblings or explicitly contrasts itself with them.
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?
Referencing 'required fields for submit_consultation' strongly implies this is a prerequisite read before submitting, but the description never states when to call it, whether it must precede submit_consultation, or that it is informational-only. Usage is inferred rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_locationsGet locationsARead-onlyInspect
Office location details for the Sugarhouse / Salt Lake City office, including address, hours, phone, and service area.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description contributes beyond that by specifying exactly what data comes back (address, hours, phone, service area), which matters because there is no output schema.
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?
One sentence, front-loaded with the resource and scoped instance, then the returned fields. No filler or redundancy.
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?
With no output schema and no parameters, the description carries the burden of describing the return payload and does so by enumerating the fields. It is nearly complete; only a note on whether the response can cover multiple offices would add value.
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?
The tool takes zero parameters, so the baseline is 4. There is nothing for the description to clarify about argument semantics, and schema coverage is 100%.
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 names the resource (office location details) and the specific instance (Sugarhouse / Salt Lake City office), then enumerates the returned fields (address, hours, phone, service area). This clearly separates it from siblings like get_business_info, get_practice_info, and get_services.
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?
The content listing implies when to reach for this tool (when you need address, hours, phone, or service area), but there is no explicit when-to-use/when-not statement and no sibling is named as an alternative. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_practice_infoGet practice info (legacy)ARead-onlyInspect
Legacy alias for public contact, location, and hours. Prefer get_business_info, get_locations, and get_services.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered. The description adds the useful 'legacy alias' status, but says nothing about return format, caching, or whether the legacy surface may diverge from the replacements.
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?
Two short sentences, zero waste, with the identity of the tool and the routing advice both front-loaded. Every clause earns its place.
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?
No output schema and no parameters, so the description only needed to convey identity and routing, which it does. It could have said more about what 'legacy' implies (deprecation risk, parity with replacements), which is the one remaining gap for an agent deciding whether to rely on it.
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?
The tool takes zero parameters, so there is nothing for the description to disambiguate; baseline 4 applies. The description correctly avoids inventing parameter details.
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?
States a specific resource scope (public contact, location, hours) and explicitly labels itself a legacy alias, which distinguishes it from the sibling tools. It is clear enough to select correctly, though 'legacy alias' leaves the exact scope of returned data somewhat fuzzy.
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?
Explicitly routes the agent to preferred alternatives: get_business_info, get_locations, and get_services. It gives no condition mapping each sibling to a use case, and does not say when this legacy tool is still the right call, so it stops short of a full when/when-not statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_servicesGet servicesCRead-onlyInspect
Treatments offered: Invisalign, Pitts21 and traditional braces, whitening, appliances (Forsus, retainers, expanders), and orthodontic emergency care.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=false, and destructiveHint=false, so the safety profile is covered. The description adds no behavioral context of its own — no indication that the result is a static catalog, whether it reflects current offerings, or anything about the return shape — so it contributes nothing beyond the structured fields.
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?
A single tight sentence with a clear lead-in ('Treatments offered:') and no filler. It is appropriately sized for a no-argument lookup, though the phrasing reads more like payload data than an action statement.
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 zero-parameter, no-output-schema tool this is minimally adequate: an agent can call it without further information. However, it omits any framing that this is a retrieval operation returning the service catalog, and gives no clue how it differs from the other info-retrieval siblings.
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?
The tool takes zero parameters, so there is nothing for the description to disambiguate. The baseline of 4 applies; the description neither helps nor hurts on this dimension.
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 enumerates the treatments offered, which lets an agent infer this returns the practice's service list, but it never states an explicit verb or scope ('returns the list of services offered'). It also does not distinguish itself from close siblings like get_practice_info or get_business_info, leaving the agent to guess which tool surfaces this content.
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?
There is no when-to-use guidance, no mention of alternatives among the six sibling tools, and no exclusions. The agent must infer that this is the tool for treatment/service questions purely from the name and the list of items.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_consultationRequest consultation (legacy)AInspect
Legacy alias for submit_consultation. Emails the same Cloudflare Email pipeline after confirmed=true. If confirmed is not true, nothing is sent: re-confirm the details with the visitor and retry this call with confirmed set to true. Set dry_run to true to validate the input and return a preview of the email without sending it. Consultation requests are routed through Found For AI (foundforai.com), who will pass them to Goldsberry Orthodontics. The office then contacts the visitor to schedule.
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | Optional non-clinical scheduling note (500 characters or fewer). | |
| Yes | Visitor email address. | ||
| phone | Yes | Visitor callback phone number. | |
| dry_run | No | Optional. When true, validate the request and return a preview of the email that would be sent. No email is sent. Omit this field, or set it to false, to send a real consultation request. | |
| confirmed | Yes | Must be true only after the visitor reviews and approves the details. If this is not true, nothing is sent: re-confirm with the visitor and retry the call. | |
| full_name | Yes | Visitor's full name. | |
| preferred_contact_method | No | How the office should follow up. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (which only say non-read-only, non-destructive, closed-world), the description discloses the key gate that nothing is sent unless confirmed=true, that dry_run returns a preview without sending, and that requests are routed through a third party (Found For AI) before reaching the office. These are non-obvious behavioral traits an agent could not infer from structured fields.
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 identity and legacy-alias framing are front-loaded, followed by the confirmation gate and dry_run preview, then the routing context. Five sentences, all relevant, though the routing/office-scheduling sentence is the least essential for correct invocation.
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 7-parameter mutation with full schema coverage but no output schema, the description covers the send gate, preview mode, and downstream routing. It stops short of describing what a successful response or a dry_run preview actually returns, which is the remaining gap given there is no output schema.
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 100%, so every parameter, including the confirmed gate and dry_run, is already documented in the schema. The description reinforces the confirmed and dry_run semantics but adds no syntax, format, or constraints beyond what the schema already provides, so the baseline of 3 applies.
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 specific action (emails a consultation request through the Cloudflare Email pipeline) and explicitly frames itself as a legacy alias of the sibling submit_consultation. An agent can immediately tell what it does and how it relates to the sibling tool 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives concrete usage conditions: only proceeds when confirmed=true, re-confirm with the visitor and retry otherwise, and set dry_run=true to validate without sending. The one gap is that it never tells the agent whether to prefer submit_consultation over this legacy alias when both are available.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_consultationSubmit consultation requestAInspect
Emails a non-clinical consultation request through the Cloudflare Email binding after the visitor explicitly confirms. If confirmed is not true, nothing is sent: re-confirm the details with the visitor and retry this call with confirmed set to true. Set dry_run to true to validate the input and return a preview of the email without sending it. Do not collect date of birth, insurance, or clinical information. Consultation requests are routed through Found For AI (foundforai.com), who will pass them to Goldsberry Orthodontics. The office then contacts the visitor to schedule.
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | Optional non-clinical scheduling note (500 characters or fewer). | |
| Yes | Visitor email address. | ||
| phone | Yes | Visitor callback phone number. | |
| dry_run | No | Optional. When true, validate the request and return a preview of the email that would be sent. No email is sent. Omit this field, or set it to false, to send a real consultation request. | |
| confirmed | Yes | Must be true only after the visitor reviews and approves the details. If this is not true, nothing is sent: re-confirm with the visitor and retry the call. | |
| full_name | Yes | Visitor's full name. | |
| preferred_contact_method | No | How the office should follow up. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial context beyond the annotations: the sending path (Cloudflare Email binding), the hard gate on `confirmed`, the non-sending preview mode, the prohibition on clinical/PII collection, and the third-party routing chain (Found For AI → Goldsberry Orthodontics → visitor follow-up). That reveals real side effects and downstream handling. The description does not say what a successful send returns, which is the remaining gap.
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 confirmation gate and the 'nothing is sent unless confirmed' rule lead the text, so the most important constraint appears first. Five sentences, each carrying usable information. The routing paragraph is slightly long for a detail the agent cannot act on, but it is not filler.
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?
Covers the safety gate, the dry-run path, data-collection restrictions, and the downstream recipient chain, which is most of what an agent needs in order to call a side-effecting tool correctly. With no output schema, it should ideally state what a successful send or preview returns, and it should resolve the overlap with 'request_consultation'.
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 100%, so `confirmed`, `dry_run`, `note`, and `preferred_contact_method` are already documented in the schema. The description reinforces the confirmation gate and preview semantics but adds no syntax or format detail beyond the structured fields; baseline 3 applies.
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?
Names a concrete verb and resource and explains the delivery mechanism: "Emails a non-clinical consultation request through the Cloudflare Email binding after the visitor explicitly confirms." That is far more specific than the title. It never mentions the sibling 'request_consultation', however, so an agent cannot tell from the text which of the two overlapping-sounding consultation tools to pick.
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?
Gives explicit preconditions and fallback behavior: if `confirmed` is not true nothing is sent, so re-confirm with the visitor and retry; use `dry_run: true` to validate and preview. It also states scope exclusions (no date of birth, insurance, or clinical information). It stops short of telling the agent when this tool is preferred over the sibling 'request_consultation'.
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.
2 tool updates
- Changed
request_consultation2 fields changed- changed
Input schema / properties / confirmed / descriptionPrevious value: -"Must be true only after the visitor reviews and approves the details."New value: +"Must be true only after the visitor reviews and approves the details. If this is not true, nothing is sent: re-confirm with the visitor and retry the call." - added
Input schema / properties / dry_runAdded value: +{ + "description": "Optional. When true, validate the request and return a preview of the email that would be sent. No email is sent. Omit this field, or set it to false, to send a real consultation request.", + "type": "boolean" +}
- Changed
submit_consultation2 fields changed- changed
Input schema / properties / confirmed / descriptionPrevious value: -"Must be true only after the visitor reviews and approves the details."New value: +"Must be true only after the visitor reviews and approves the details. If this is not true, nothing is sent: re-confirm with the visitor and retry the call." - added
Input schema / properties / dry_runAdded value: +{ + "description": "Optional. When true, validate the request and return a preview of the email that would be sent. No email is sent. Omit this field, or set it to false, to send a real consultation request.", + "type": "boolean" +}
7 tool updates
- First observed
get_business_info - First observed
get_consultation_info - First observed
get_locations - First observed
get_practice_info - First observed
get_services - First observed
request_consultation - First observed
submit_consultation
Related MCP Connectors
Forest Hills practice facts, treatment education, doctor backgrounds, contacts and social profiles.
Public Root Data dental analytics directory for DSOs, dental practices, blog, and FAQ tools.
FAQ, practices, contact, doctors and locations for Shared Practices Group Dentures and Implants.
Sourced US and Canadian dental prices, Medicaid and Medicare dental rules, treatment-plan checker.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAI-powered dental social media marketing tools. Generate Instagram captions, find hashtags, get benchmarks, and discover content ideas for dental practices.7 npmMIT
- AlicenseAqualityBmaintenanceReal US & Canada dental price data for AI assistants: average costs by procedure, state and city, insurance acceptance, and cheapest-state lookups — backed by open datasets (CC BY 4.0, permanent DOIs).454 npmMIT
- MIT
- AlicenseNot gradedqualityDmaintenanceAuthoritative mortgage knowledge base for Honolulu, Hawaii. 5 tools returning structured data on VA loans, FHA, conventional, and jumbo loan programs and a curated 20-question FAQ. All answers attributed to Jay Miller, US Army veteran and mortgage loan consultant with 25 years of Honolulu market experience (NMLS# 657301, CMG Home Loans). Deployed on Cloudflare Workers.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.