Skip to main content
Glama

accept_terms

Record the user's acceptance of freddy's current Terms of Service and Privacy Policy. ONLY call this tool AFTER the user has explicitly stated they agree to the updated terms — for example, after they have said 'I agree', 'accept', 'yes, accept the new terms', or similar. Do not call this tool automatically or on the user's behalf. If the user has not seen the policy summary yet, show them the gate message from the previous tool call's response (or fetch https://freddy.coach/terms) BEFORE asking for their consent. If the user is unsure or wants to read the full text, do not call this tool — point them at the dashboard URL or the public Terms/Privacy pages. If the user has explicitly agreed to BOTH the Terms/Privacy AND to freddy collecting and processing their health data, also pass health_data: true. Otherwise omit health_data or pass false, and tell the user the separate health-data consent is still outstanding: freddy asks for it the next time they connect a data source, and some features stay off until they give it. Do NOT tell them the dashboard will prompt them for it, because it will not.

Input Schema

NameRequiredDescriptionDefault
confirmYesMust be literal `true`. The presence of this field is a syntactic guard against the LLM calling this tool reflexively.
versionYesThe exact policyVersion string the user is accepting, e.g. "2026-11-06". Must match the version returned in the consent-required error. Including the version explicitly prevents accidentally accepting a future bump.
health_dataNoOptional. Set to `true` only if the user has separately and explicitly consented to freddy collecting and processing health data from the providers they choose to connect. This consent is distinct from Terms/Privacy acceptance.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / version / description
      Previous value: -"The exact policyVersion string the user is accepting, e.g. \"2026-10-31\". Must match the version returned in the consent-required error. Including the version explicitly prevents accidentally accepting a future bump."New value: +"The exact policyVersion string the user is accepting, e.g. \"2026-11-06\". Must match the version returned in the consent-required error. Including the version explicitly prevents accidentally accepting a future bump."
  2. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare this is a non-read-only, non-destructive, closed-world write, so the description's job is to add consent-specific behavior, which it does: consent must be explicit, the gate message must precede the ask, and the health-data flag is a separate consent that is requested later at data-source connection time. It even corrects a likely wrong assumption ('Do NOT tell them the dashboard will prompt them for it, because it will not'). It stops short of describing what the recorded acceptance triggers or how failure/version mismatch surfaces.

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 the action, then the gating conditions, then the health_data branch — a logical order for an agent to follow. Every sentence is operational rather than filler, though the consent prohibition is stated twice ('ONLY call this tool AFTER...' and 'Do not call this tool automatically') and the health-data paragraph is dense enough to be harder to scan than the rest.

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

Completeness5/5

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

A consent-recording mutation with three params, full schema coverage, and no output schema. The description covers the precondition (user saw the policy summary), the exact consent language required, the separate health-data branch with its downstream consequence, and the user-facing follow-up message — everything an agent needs to call it correctly and not over-call it.

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

Parameters4/5

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

Schema coverage is 100% and the schema already explains confirm, version, and health_data thoroughly, so the baseline is 3. The description adds procedural meaning the schema does not: pass health_data true only on separate explicit health-data consent, otherwise omit or pass false, and in that case tell the user the consent is still outstanding and that some features stay off. It does not restate the version-matching requirement, but the schema covers that.

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: 'Record the user's acceptance of freddy's current Terms of Service and Privacy Policy.' No sibling tool (connection_status, connect_source, get_profile, etc.) covers consent, so the boundary is unambiguous from the name plus this sentence.

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 gives the when: only after the user has stated agreement, with quoted examples ('I agree', 'accept', 'yes, accept the new terms'). Explicitly gives the when-not: do not call automatically or on the user's behalf, do not call if the user is unsure or wants the full text, and instead point them at the dashboard or public Terms/Privacy pages. It also names a prerequisite (show the gate message or fetch the terms URL first).

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