Skip to main content
Glama

Вопросы и структура опроса

update_quiz_widgets

Сохраняет структуру виджетов опроса (ids + entities). Перед вызовом прочитайте текущую структуру через ресурс quiz://{id}/structure. ids — массив идентификаторов виджетов по порядку; entities — объект конфигов по этим id. ВАЖНО: идентификаторы виджетов — уникальные UUID в формате RFC 4122 (например 550e8400-e29b-41d4-a716-446655440000). Допустимы только служебные строки "welcome" (первый) и "submit" (последний); все остальные id обязаны быть уникальными UUID. При добавлении новых виджетов генерируйте новый UUID для каждого; дубликаты id запрещены. Экран благодарности («спасибо», thank you) — это ОТДЕЛЬНЫЙ виджет type = "finish" с новым UUID перед "submit"; правка полей submit его не создаёт. Спецварианты «Другое / Свой вариант», «Затрудняюсь ответить», «Ничего из перечисленного» включаются флагами choiceTextOther / dropdownOther / hardToAnswer / noneOfAbove, а не добавляются пунктами в список вариантов. Ответ инструмента содержит фактически сохранённый состав (saved: количество виджетов и разбивка по типам) — сверьтесь с ним, прежде чем отвечать пользователю, что изменение применилось.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idsYesПорядок виджетов: "welcome", затем уникальные UUID виджетов, затем "submit". Каждый id — уникальный UUID (кроме welcome/submit).
quiz_idYesID опроса для обновления.
entitiesYesКонфигурации виджетов: ключ — UUID из ids (уникальный для каждого виджета). Идентификаторы вариантов внутри виджета (choiceTextIds, dropdownIds, matrixRowIds и остальные списки опций) — тоже UUID, сгенерированные заново; порядковые имена вроде «q2_1» не годятся: опрос с ними сохранится, но публикация упадёт.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Goes well beyond annotations (readOnly=false, destructive=false, idempotent=false) with high-value operational detail: UUID/RFC 4122 requirement, only 'welcome'/'submit' as non-UUID ids, the finish ('thank you') widget as a separate widget, flags vs. list items for special answers, and even the return shape ('saved: количество виджетов и разбивка по типам') despite no output schema. It tells the agent to verify the saved composition before confirming success — a real behavioral contract.

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?

Front-loads the one-line purpose, then layers the important warnings. It is dense but every clause carries a constraint (UUID format, special screens, flags, verification) relevant to a tool with nested objects. Slightly long, but no filler sentences.

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 3-parameter, write-mode tool with deeply nested entities and no output schema, the description covers the failure-prone essentials: id format, mandatory ordering, the separate finish widget, special-option flags, and result verification. Nothing critical is left to inference.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description nonetheless adds semantics beyond the schema: the ordering rule (welcome first, submit last, unique UUIDs between), the entities-keyed-by-id relationship, and the finish-widget requirement are surfaced as narrative guidance an agent must act on.

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?

States a specific verb+resource: 'Сохраняет структуру виджетов опроса (ids + entities)' — saving the quiz widget structure. It is clearly distinguishable from read-side siblings like get_quiz_structure and from update_quiz_settings/texts/logic. It stops short of explicitly naming a sibling, so it lands at 4 rather than 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides one explicit precondition — 'Перед вызовом прочитайте текущую структуру через ресурс quiz://{id}/structure' — which is genuine workflow guidance. However, it never states when to choose this tool over update_quiz_texts, update_quiz_logic, or update_quiz_settings, so the alternative-selection guidance is missing.

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