Skip to main content
Glama

palette_get

Read-onlyIdempotent

Reads the palettes - colors, fonts, button styles and background settings - of a Riddle. Returns every palette the Riddle can use (including the ones inherited from the account / project default preset) with all of its values, which palette is currently selected, which values this Riddle overrides, and the built-in palettes that can be used as a starting point. See riddle://reference/palette/fields for what each value does. Mind the size: a palette carries around 30 values and an account preset can contribute several palettes that have nothing to do with this Riddle, so the full response is easily thousands of tokens. Use "omit" to cut it down - omit: ["paletteValues"] lists the palettes by uuid and name only, which is how you find out WHICH palette you want (paletteUUID then returns that one in full), and "builtInPalettes"/"customizedValues"/"hints" drop those keys. To just read the design in effect, pass the selectedPaletteUuid from such a listing as paletteUUID.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
omitNoLeaves parts of the response out - the way to keep this call small. "paletteValues" lists every palette as {uuid, name} instead of with its ~30 values (then read the one you want with paletteUUID); "builtInPalettes", "customizedValues" and "hints" drop those keys entirely. Omit the parameter for the full response. Whatever you leave out is echoed back under "omittedFields", so a missing key never means the Riddle has none of it.
riddleUUIDYesThe UUID of the Riddle whose palettes you want
paletteUUIDNoReturn only this palette instead of all of them. Accepts a palette UUID or a built-in palette id like "default:timeless".
includeBuiltInPalettesNoInclude the full values of all built-in palettes. Defaults to false, in which case only their ids and names are listed.

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare readOnly and idempotent, but the description goes well beyond them: it warns that responses can run to thousands of tokens, explains that inherited account/project presets are already included, and documents that omit fields are echoed under omittedFields so an absent key cannot be confused with 'no data'. This is exactly the kind of behavioral context that helps an agent avoid surprises.

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 long but every sentence earns its place: it names the output, the token-size risk, the omit keys and their effect, and the recommended two-step flow. It is dense and information-heavy rather than padded; the extra length is justified by the complexity of the tool it describes.

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?

No output schema exists, so the description has to cover return anatomy itself, it does: palette listing, selected palette, inherited palettes, overridden values, built-in starting points, and omittedFields echo. It even links to the field reference for definitions. For a read tool with no output schema, there is no material behavior left undisclosed.

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 legitimately adds workflow-level meaning that the schema alone does not: omit: ['paletteValues'] returns a uuid/name listing intended as a first step, and paletteUUID can be fed from selectedPaletteUuid from such a listing. That moves it above the baseline.

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 clear verb and resource ('Reads the palettes ... of a Riddle') and enumerates exactly what is returned: colors, fonts, button styles, background settings, selected palette, overrides, and built-in palettes. This separates it cleanly from the related sibling tool palette_customize, which handles modification rather than reading.

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 concrete usage recipes: use omit: ['paletteValues'] to find which palette you want, then pass paletteUUID to fetch it in full, and pass the selectedPaletteUuid to read the design in effect. It does not contrast with alternative sibling tools such as palette_customize, but the read-vs-modify distinction is clear from context, and the guidance is specific enough to count as clear usage direction.

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

A3.8/5.0
Disambiguation4/5

Tools are largely distinct by name and detailed descriptions, with clear prefixes (riddle_builder_*, questionBank_*, stats_*). Some potential confusion exists among the stats tools (stats_fetch vs stats_overview_fetch vs breakdowns) but descriptions clarify their different scopes. Overall, an agent can usually pick the right tool.

Naming Consistency4/5

Naming follows a predictable prefix+verb pattern within each domain (e.g., riddle_builder_quiz, riddle_builder_poll; riddle_get, riddle_publish). Minor inconsistencies exist, like the camelCase 'questionBank' and 'riddleTemplate' prefixes vs snake_case elsewhere, and 'stats_overview_fetch' ordering, but these are not chaotic and remain readable.

Tool Count1/5

With 62 tools, this far exceeds the recommended 3-15 range and even the 25+ threshold. While the server covers a broad domain, the extreme number overwhelms and makes tool selection harder, fitting the 'extreme mismatch' criterion for 50+ tools.

Completeness5/5

The tool surface is exceptionally comprehensive, covering creation, reading, updating, deleting, publishing, unpublishing, moving, tagging, template management, question banks, palettes, and various stats breakdowns. There are no obvious gaps in the lifecycle of managing interactive content, and all apparent operations are supported.

Resources