Skip to main content
Glama

RooQuiz

review_booking

Approve or decline a pending booking request of the current team. Approving turns it into a confirmed meeting and sends the attendee the confirmation with the meeting address; declining sends a short "not approved" note with the optional reason. Only works on a booking whose status is pending, and a request whose meeting time has already passed can only be declined. On approval you may set the meeting link / instructions for this one meeting (leave empty to fall back to the team-level settings). Only the team owner / admin or the lead owner can review.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
decisionYesapprove = confirm the meeting and release the address; decline = reject the request
bookingIdYesThe booking id (the bookingId returned by list_bookings)
meetingLinkNoApprove only: the meeting URL for this meeting. Empty falls back to the team setting.
declineReasonNoDecline only: the reason shown to the attendee, max 500 chars. Optional.
meetingInstructionsNoApprove only: how to join / what to prepare, max 1000 chars. Empty falls back to the team setting.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
statusNoscheduled after approving, cancelled after declining
bookingIdNoThe booking that was reviewed
reviewedAtNoISO datetime of the review

TDQS

A4.5/5.0
Behavior5/5

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

The description discloses real side effects beyond the write annotations: it sends the attendee a confirmation with the address, sends a 'not approved' note, and can override team-level meeting settings for a single booking. This is exactly the behavioral context an agent needs for a side-effecting approval/decline workflow.

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?

Every sentence adds operational value: main action, notification behavior, constraints, permissions, and optional overrides. It is compact, front-loaded, and contains no redundant statements.

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?

Together with the complete input schema and the output schema, the tool description covers the state machine (pending/reviewable, passed-only-decline), authorization scope, external messaging effects, and optional parameters. Nothing needed to safely call the tool 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?

The schema already documents all five parameters at 100% coverage, so the description adds only modest extra meaning: approval-path vs decline-path mapping and fallback to team-level settings. This matches the baseline for a fully schema-documented parameter set.

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?

The description opens with precise action verbs: 'Approve or decline a pending booking request.' It names the resource, the target state after approval, and the notification behavior, which makes it easy to distinguish from siblings like list_bookings or reschedule_booking.

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 clear eligibility conditions: only pending bookings, only team owner/admin/lead owner, and already-passed meetings can only be declined. It does not explicitly mention when to use a sibling tool instead, but the stated constraints make the intended use unambiguous.

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.1/5.0
Disambiguation4/5

Most tools pair a distinct resource with a distinct verb, and the descriptions do a good job of separating related concepts like leads, records, examinees, and bookings. The only real ambiguity is between list_records (submission records, also called leads) and list_leads (CRM leads), plus a mild overlap between update_form and update_form_settings, but careful reading resolves both.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern, using standard verbs like get_, list_, create_, update_, delete_, add_, insert_, move_, and set_. Minor stylistic variation such as add_question vs. insert_question is still predictable and does not hurt usability.

Tool Count2/5

48 tools is a very heavy surface for an MCP server. While each tool appears purposeful, the server spans forms, questions, translations, analytics, leads, bookings, examinees, media, and team administration, making it feel like a full platform API rather than a focused server. Most agents will only ever need a subset of these tools.

Completeness4/5

The core quiz lifecycle is well covered: form creation/editing/deletion/restore/duplicate/translation, question CRUD/move, delivery settings, statistics/funnels, lead CRM, bookings, examinees, media upload, and tenant basics. The main gaps are minor — no member list/remove/role management beyond invite, no media library listing/deletion, and no bulk export of records — but these do not create dead ends in the primary quiz/lead/booking workflows.

Resources