Skip to main content
Glama

page_set_data

Idempotent

Assign a key and any JSON value (except null) to a page's data in Voog CMS, enabling custom metadata storage. To delete a key, use page_delete_data.

Instructions

Set a single page.data. value (PUT /pages/{id}/data/{key}). To delete a key use page_delete_data. Keys starting with 'internal_' are server-protected and rejected client-side.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
siteYes
page_idYes
keyYes
valueYesNew value for page.data.<key>. Any JSON value EXCEPT null — to remove a key, use page_delete_data instead. Nested objects and arrays are stored as-is and round-tripped on read.
Behavior4/5

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

Annotations already indicate idempotentHint=true, which aligns with the description's 'set' operation. The description adds behavioral details: keys starting with 'internal_' are server-protected and rejected, and null values are not allowed (deletion handled by sibling). This adds value beyond annotations.

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?

Two sentences, front-loaded with the action and HTTP method. Every sentence adds value: operation, sibling reference, and key constraint. No wasted words.

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?

For a simple set operation with no output schema, the description covers the core action, key constraints, and value type rules. It lacks auth requirements or return value hints, but these are somewhat implied by the tool's nature. The sibling context helps.

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?

Schema coverage is only 25% (only 'value' has a description). The description adds meaningful context for 'value' (types allowed, null prohibition, nesting behavior) but does not explain 'site', 'page_id', or 'key'. This partially compensates for the schema gaps.

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 explicitly states it sets a single page.data.<key> value via PUT. It distinguishes from the sibling tool 'page_delete_data' for deletion, making the purpose clear and unambiguous.

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 provides an explicit alternative for deletion (page_delete_data) and warns about internal keys being rejected. However, it does not offer further guidance on when to use this tool versus other page-related siblings like page_update or page_set_layout.

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/runnel/voog-mcp'

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