Skip to main content
Glama
yrvelez

Qualtrics MCP Server

by yrvelez

update_question

Idempotent

Update a Qualtrics survey question with safe partial updates. Modify question text, choices, answers, validation, or JavaScript without overwriting existing fields.

Instructions

Update an existing question. Performs a safe partial update: fetches the current definition and carries all fields forward, so only the fields you pass change. For Matrix questions, choices = rows and answers = columns.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
answersNoUpdated answer definitions (columns/scale points for Matrix)
choicesNoUpdated choice definitions (rows/statements for Matrix). Extra per-choice Qualtrics fields pass through unchanged, e.g. TextEntry: "true" and TextEntrySize for an inline text box on a row
surveyIdYesThe Qualtrics survey ID
questionIdYesThe question ID to update
questionJSNoJavaScript to attach to this question (QuestionJS). IMPORTANT: Avoid literal `${` in JS strings — Qualtrics interprets it as piped text and corrupts the code. Use `\x24{` or `String.fromCharCode(36)+'{'` instead. Pass empty string "" to clear existing JS.
validationNoUpdated validation settings
answerOrderNoUpdated display order of answer keys (derived from answers if those change and this is omitted)
choiceOrderNoUpdated display order of choice keys (derived from choices if those change and this is omitted)
questionTextNoNew question text
recodeValuesNoUpdated numeric recode mapping
configurationNoUpdated Configuration object
dataExportTagNoNew export tag
additionalFieldsNoAny other question-definition fields, merged into the payload last
Behavior4/5

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

Annotations already indicate idempotentHint=true and destructiveHint=false. The description adds context about the partial update mechanism (fetch-carry-modify) and warns about JavaScript escaping (avoid literal `${`), which goes beyond annotations. No contradictions.

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 concise: two sentences plus a brief note about Matrix. All sentences are substantive, no redundant information. The main purpose is front-loaded.

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?

Given the tool's complexity (13 parameters, nested objects) and no output schema, the description covers the key aspects: purpose, partial update, Matrix mapping, and a critical parameter warning. It is adequate for most use cases, though it could mention return value or permissions.

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% with each parameter described. The description adds value by explaining that Matrix-specific fields (choices=rows, answers=columns) and providing crucial guidance on JavaScript escaping. This enhances understanding beyond the schema.

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 clearly states 'Update an existing question' and specifies 'safe partial update' behavior, distinguishing it from sibling tools like create_question or delete_question. It also clarifies the relationship between choices and answers for Matrix questions.

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?

The description implies the tool is for modifying specific fields without sending the whole object, but it does not explicitly state when to use this tool versus alternatives like update_survey or when not to use it. No exclusions or prerequisites are mentioned.

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

Install Server

Other Tools

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/yrvelez/qualtrics-mcp-server'

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