Skip to main content
Glama

Book a consultation

book_consult

Books one of yesmcp's consultation windows for the user. Requires the slotId from list_availability plus the user's name, email address and the topic they want to discuss. Before calling this tool, tell the user in plain words what booking stores and why: yesmcp stores their name, their email address, and the topic they give — the name and email to hold the slot and send the confirmation, the topic to prepare for the call. Nothing else is collected. Only call this tool once the user has given you those three values knowingly. The booking is only committed once the confirmation email has actually been accepted by the mail provider — if it fails, nothing is stored and the window stays open. Times are returned in yesmcp's timezone with an explicit UTC offset (for example 2026-08-27 14:00 CEST (UTC+2)). Before you confirm anything with the user, ask which timezone or city they are in, then state the slot in BOTH their timezone and yesmcp's. Never show a bare wall-clock time.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesThe user's name, as they want to be addressed.
emailYesThe user's email address; the confirmation is sent there.
topicYesWhat the user wants to discuss, in their own words. One or two sentences.
slotIdYesThe `slotId` of the window, exactly as returned by list_availability.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Annotations (readOnlyHint=false, openWorldHint=true, idempotentHint=false) already signal a non-idempotent write with external effects, and the description goes far beyond them. It discloses the commit-on-email-acceptance semantics ('if it fails, nothing is stored and the window stays open'), the exact data collected and the purpose of each field, and the timezone/display obligations. No contradiction with annotations.

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?

The description is long but earns its length: every paragraph maps to a distinct obligation (purpose, prerequisites, privacy disclosure, commit semantics, timezone handling). It is front-loaded with the core purpose before the procedural rules. Minor redundancy exists between the disclosure obligation and the 'only call once the user has given you those three values knowingly' consent requirement, which overlap thematically.

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?

With no output schema, the description carries the return-value burden and partially meets it by specifying the time format of returned times. It covers preconditions, failure behavior, privacy, and consent thoroughly. The main gap is the success-response shape (e.g., whether a booking reference or confirmation details are returned), which an agent would have to discover at runtime.

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% and each of the 4 parameters already has a meaningful schema description (e.g., topic limited to one or two sentences, slotId 'exactly as returned by list_availability'). The description adds the rationale for why each value is collected — name/email to hold the slot and send confirmation, topic to prepare — but introduces no new format or syntax details, so it holds at the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening verb+resource — 'Books one of yesmcp's consultation windows for the user' — is specific and unambiguous. The requirement that slotId come from list_availability further clarifies the mechanism, but no sibling (notably booking_widget) is explicitly named, so the differentiation is implied rather than stated.

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?

The description gives unusually explicit when-to-use guidance: the slotId must come from list_availability first, the user must knowingly provide three values, the agent must disclose what data is stored before calling, and it must ask for the user's timezone before confirming anything. What it lacks is an explicit when-not-to-use clause or named alternatives (e.g., use cancel_booking or reschedule_booking for changes).

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.

TDQS

A4.3/5.0
Disambiguation4/5

Most tools are clearly distinct: booking lifecycle (book, cancel, reschedule, availability), services, scenarios, and meta tools each target different actions. The widget/non-widget pairs (book_consult vs booking_widget, get_services vs services_widget) and list_availability vs booking_widget could cause confusion, but the descriptions explicitly state which to prefer and when.

Naming Consistency3/5

Most tools follow verb_noun (book_consult, cancel_booking, reschedule_booking, get_services, list_availability, advise_scenarios), but four break the pattern with noun_noun or gerund forms (booking_widget, services_widget, directory_census, demo_walkthrough). The mix is readable but inconsistent, especially the widget pairings that differ from their non-widget counterparts.

Tool Count5/5

Ten tools is well-scoped for a consultation and advisory service server. Each tool earns its place: full booking lifecycle, services catalog, scenario playbooks, and reviewer-facing meta tools. No redundant or filler tools.

Completeness4/5

The booking lifecycle is fully covered (list, book, cancel, reschedule) plus interactive widgets, and services/scenario discovery is solid. The only notable gap is that cancel/reschedule require the email confirmation reference — there is no 'list my bookings' tool to look up bookings by email. The demo/census tools are meta but deliberately scoped.

Resources