Skip to main content
Glama

SzuruSzuru – rezerwacja czyszczenia tapicerki

Potwierdź kod

verify_phone_code

PURPOSE: Exchanges the SMS code from start_phone_verification for a customer_grant (valid 60 minutes) that gives access to this customer's own bookings. WHEN TO USE: Right after the customer types the code from start_phone_verification. WHEN NOT TO USE: Not for the booking code from prepare_booking (that one goes to create_booking). REQUIRED: verification_id, code. SIDE EFFECTS: none besides issuing the grant. Pass customer_grant to get_my_bookings, check_availability(booking_reference), reschedule_booking and cancel_booking.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
codeYes6-digit code the customer received by SMS
session_idNoOptional. session_id from the previous result, if you have it. The server also recovers the session from quote_id / slot_id / confirmation_id / customer_grant.
verification_idYesverification_id from start_phone_verification

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
codeNo
errorNoStable machine-readable error id when success=false, e.g. missing_required_fields, unsupported_postcode, no_availability
scopesNo
messageNo
successYestrue = operation done / data returned; false = see error
expires_inNo
session_idNo
customer_grantNo
missing_fieldsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / properties / code / description
      Added value: +"6-digit code the customer received by SMS"
    • addedInput schema / properties / session_id / description
      Added value: +"Optional. session_id from the previous result, if you have it. The server also recovers the session from quote_id / slot_id / confirmation_id / customer_grant."
    • addedInput schema / properties / verification_id / description
      Added value: +"verification_id from start_phone_verification"
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "code": {
      +      "type": "string"
      +    },
      +    "customer_grant": {
      +      "type": "string"
      +    },
      +    "error": {
      +      "description": "Stable machine-readable error id when success=false, e.g. missing_required_fields, unsupported_postcode, no_availability",
      +      "type": "string"
      +    },
      +    "expires_in": {
      +      "type": "integer"
      +    },
      +    "message": {
      +      "type": "string"
      +    },
      +    "missing_fields": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "scopes": {
      +      "type": "array"
      +    },
      +    "session_id": {
      +      "type": "string"
      +    },
      +    "success": {
      +      "description": "true = operation done / data returned; false = see error",
      +      "type": "boolean"
      +    }
      +  },
      +  "required": [
      +    "success"
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare non-read-only, non-destructive, non-idempotent behavior, and the description adds context beyond them: the grant's 60-minute validity, 'no side effects besides issuing the grant', and exactly which downstream tools consume the grant. It stops short of failure modes (expired/invalid code) and retry limits, so not 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?

Labeled PURPOSE / WHEN TO USE / WHEN NOT TO USE / REQUIRED / SIDE EFFECTS blocks front-load the routing decision and the object handoff; every sentence carries information, with no filler.

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?

An output schema exists so return values need not be described, and the description closes the loop by telling the agent which tools to feed the grant into. For a two-required-parameter verification tool, nothing needed to call it correctly is missing.

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 three parameters already document their format and provenance. The description only restates the two required names and adds no semantics beyond the schema, which matches the baseline-3 rule when the schema does the heavy lifting.

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: exchanges the SMS code for a customer_grant that grants access to the customer's bookings. It also pins the input's origin (start_phone_verification) and the grant's 60-minute lifetime, which no sibling tool shares.

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?

Explicit WHEN TO USE (right after the customer types the code from start_phone_verification) and WHEN NOT TO USE, naming prepare_booking/create_booking as the conflicting path so the agent can disambiguate the two code flows.

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