Skip to main content
Glama
rooquiz

RooQuiz

update_form_settings

Adjust delivery of a quiz form: set who can answer, whether report requires login or email code, time limit, sharing, booking, analytics, and custom link. Only passed settings change.

Instructions

Change how a form of the current team is delivered, as opposed to what it says (use update_form for title / questions / report / theme). Editable: submissionAccess (who may answer and whether seeing the report needs a login — this is the lead-capture gate), reportGateRequireCode (whether that login gate collects an emailed verification code, trading completion rate against lead quality), timeLimit, sharing (the result-page share button and personalised share card, which is what drives organic spread), answerSheet, booking (the result-page booking block that feeds the 1:1 call queue), gaTrackingId, sharedWithAll (whether every team member can see this form), and slug (the custom path that gives the public link a memorable, SEO-friendly address). Only the keys you pass are changed. Read the current values with get_form_share_info.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
slugNoCustom path of the public answer link — the SEO-friendly address (e.g. quizster.app/<team>/burnout-test on the platform domain, or <custom-domain>/burnout-test when the team's custom domain is serving). Lowercase letters, digits and hyphens, 2-64 chars, must start and end with a letter or digit, unique within the team. Pass an empty string to clear back to the random address. Changing it breaks the previous custom path right away, but the token address (/a/<publicToken>) always keeps working and the page's canonical URL follows the custom path.
formIdYesThe form UUID
bookingNoThe result-page booking block. The bookable hours live in the team's booking settings, not here — this is only the switch and the copy. Bookings that come in are handled with list_bookings / review_booking.
sharingNoResult-page sharing: the share button, the personalised share card and the public summary. Turning this off stops respondents spreading their results.
timeLimitNoAnswer-time countdown
answerSheetNoThe answer-sheet sidebar on the answering page
gaTrackingIdNoGoogle Analytics measurement id (G-XXXXXX) or Universal Analytics id (UA-XXXX-Y). Pass an empty string to clear.
sharedWithAllNoWhether every member of the team can see and open this form
submissionAccessNopublic = anyone answers and sees the report; login_to_view_report = anyone answers but must sign in to see the report (the default, this is how leads get captured); examinee_only = a login is required before answering at all
reportGateRequireCodeNoOnly applies when submissionAccess is login_to_view_report. false (the default for newly created quizzes) = the respondent only types an email and a name to see this one result — far more people finish, but the address is unverified and they get no account, and since result links do get forwarded, the report is effectively as reachable as public for whoever opens the link first. true = the respondent must confirm an emailed 6-digit code, so every captured lead has a verified address and the respondent gets an account they can return to. Quizzes created before this setting existed read as true.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
slugNoCustom path after this change; null when cleared (back to the random address)
formIdNoThe form that was changed
changedNoWhich settings this call changed
deliveryNoDelivery state: { isActive, submissionAccess, reportGateRequireCode, timeLimit, sharing, answerSheet, booking, gaTrackingId, sharedWithAll }; get_form_share_info adds the team-level examineeSignupDisabled (respondent self-signup off = a login-gated quiz turns away anyone not on the roster)

Schema Changelog

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

  1. First observedv0.1.0

TDQS

A5/5.0
Behavior5/5

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

The description goes far beyond the annotations by explaining partial-update behavior ('Only the keys you pass are changed') and by disclosing real-world consequences, such as submissionAccess acting as the lead-capture gate, reportGateRequireCode trading completion rate against lead quality, and slug changes breaking the previous custom path while the token address keeps working. This is rich behavioral context that annotations do not provide.

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?

The description is front-loaded with the core distinction and then presents a dense but purposeful enumeration of all editable fields with their behavioral implications. No filler or redundant phrasing is present; every sentence contributes to selecting and invoking the tool correctly.

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?

For a tool with 10 parameters, nested objects, and an output schema, the description covers all editable fields, states the partial-update contract, names the sibling for content edits, and points to the read-side companion. The presence of an output schema reduces the need to document return values, and nothing required for correct invocation appears missing.

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

Parameters5/5

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

Although schema coverage is 100%, the description adds significant semantic framing by grouping parameters as delivery/lead-capture mechanics (e.g., 'the lead-capture gate', 'trading completion rate against lead quality', 'drives organic spread'). It clarifies the business purpose of each editable field, which is value beyond the raw schema descriptions.

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 a specific verb and resource: 'Change how a form of the current team is delivered,' and immediately contrasts with 'what it says (use update_form for title / questions / report / theme).' This clearly distinguishes update_form_settings from its closest sibling, update_form, so an agent knows exactly which tool to pick.

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?

It explicitly says when to use this tool versus update_form, and it directs agents to get_form_share_info for reading current values. The description makes the boundary between content editing and delivery/settings editing explicit, leaving no ambiguity about which sibling to call.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rooquiz/rooquiz-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server