Skip to main content
Glama

RooQuiz

update_examinee

Destructive

Update an examinee (a.k.a. respondent) in the current team, located by its examineeId (the business ID from list_examinees). Editable: name / status (active|disabled) / customData (validated against the team's examinee field definitions: required / unique / type / regex). email, tenant and examineeId cannot be changed. customData REPLACES the whole object and masked values are rejected: never re-send customData you just read, or you will wipe or corrupt phone fields — only write values the user gave you.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoNew examinee name
statusNoEnable (active) or disable the examinee
customDataNoCustom field values as a code→value map, validated against the team's examineeFields definitions (required / unique / type / regex). The keys are that team's own field codes — get_examinee shows which codes exist, but only send values the user gave you: this replaces the whole customData object, and re-sending a value you read back (phone fields come back masked) wipes or corrupts it.
examineeIdYesThe examinee business ID (e.g. AB1234567890) to update

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoMasked name (J*n)
emailNoMasked email (j***g@example.com); never pass it back as an argument
avatarNoUploaded avatar as { id, url }
statusNoAccount status
tenantNoTeam (tenant) the respondent belongs to
createdAtNoISO datetime of first sign-up
updatedAtNoISO datetime of the last change
customDataNoTeam-defined custom fields; phone-typed values come back masked
examineeIdNoBusiness ID of the respondent (e.g. AB1234567890) — use it to address them
avatarPresetNoPreset avatar key, when no image was uploaded
emailVerifiedNoWhether the email has been verified

Schema Changelog

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

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations declare destructiveHint=true, and the description over-delivers by explaining exactly what is dangerous: customData REPLACES the whole object, masked phone values will be rejected, and re-sending read values can wipe or corrupt phone fields. It also discloses that email/tenant/examineeId cannot be changed, which goes well beyond the annotation hints.

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 dense but each clause earns its place: it identifies the identifier, lists editable and immutable fields, and gives a critical operational warning. Slightly on the long side, but the length is justified given the destructive behavior that the agent must understand to avoid data loss.

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?

Given a nested-object parameter, a destructive warning, and an output schema, the description covers all needed decision points: which fields are mutable, what validation applies to customData, and the replace semantics. Nothing essential is missing for an agent to call it correctly.

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 input schema already provides descriptions for every parameter, including enum options, regex/E.164 requirements, and detailed customData semantics. The description reinforces the replacement semantics and the don't-resend warning, which is valuable, but it adds marginal net value because the schema already carries the full load (100% coverage).

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 ('Update an examinee'), identifies it by examineeId, and clearly names which fields are editable vs immutable. The description also references list_examinees as the source of the business ID, which helps distinguish its purpose from sibling tools like get_examinee and list_examinees.

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 lists editable fields (name, status, customData) and immutable fields (email, tenant, examineeId), and warns against re-sending customData read from get_examinee. It also explains that customData must only contain values the user provided, giving concrete when-to-use rules and a critical exclusion.

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

Most tools have clearly distinct purposes, especially the form, question, and translation families. The main ambiguity is between the lead/record tools: list_leads/get_lead vs list_records/get_record both describe entities as 'leads' even though one is the CRM lead and the other is the submission record. update_form vs update_form_settings is also a minor naming overlap, but the descriptions resolve it.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern: get_*, list_*, create_*, update_*, delete_*, add_*, set_*, etc. Even paired image upload tools follow the same convention with prepare_/finalize_. There is no camelCase or mixed verb-style chaos.

Tool Count2/5

48 tools is far above the 25-tool threshold for a heavy tool surface. While the server covers a broad platform (forms, translations, leads, bookings, examinees, tenants, images), the sheer number will burden an agent's tool-selection step. Each tool may earn its place, but the overall set is too large for easy navigation.

Completeness4/5

The toolset provides solid lifecycle coverage for forms, questions, translations, leads, bookings, examinees, and tenant administration. Minor gaps exist, such as no lead deletion/export and no way to create or delete examinees, but agents can work around these for the core quiz-and-CRM workflow. The form/translation/question CRUD surface is especially thorough.

Resources