Skip to main content
Glama

set_side_page_section

Update a side page section with structured typed fields, a single dot-path value, or natural-language instructions, while validating against the section's schema to prevent 400 errors.

Instructions

Update one section of a side page with STRUCTURED, typed fields (not a content string). The write must match the section's real shape or it is rejected with a 400 validation error. Landing sections use typed objects, e.g. hero → { title: { prefix, suffix }, description, testimonials: [...] }; comparison sections (matrix, verdict, scorecard, decisionTree, priceCalculator, competitorClaims, ...) use their comparison-schema shape. Use view_side_page(detail:'full') first to see the current section shape, then send the same shape back with your edits. Pass EITHER fields (a partial section object merged onto the current section) OR field (a dot-path) + value for a single nested change, OR instructions alone for a natural-language edit (the server runs an AI pass scoped to this section). type:"text" pages: there is no per-section nesting — the whole page is one flat {title, htmlContent} document. sectionId is accepted for symmetry (e.g. "content"/"htmlContent"/"title") but every edit applies to the whole document: pass fields:{title,htmlContent}, field:"title"|"htmlContent"+value, or instructions alone for an AI rewrite of the whole page. edit_side_page's title/htmlContent params are a simpler direct-write shortcut for the same document. Every edit creates a new draft version (like landing-page section edits) — see list_side_page_versions / restore_side_page_version; on a published page, edits stay draft-only until set_side_page_state({published:true}) publishes them.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
slugYesParent landing page slug
fieldNoDot-path to a single nested field (e.g. 'title.prefix'). Requires `value`.
valueNoNew value for the single `field` above.
fieldsNoStructured partial section object, shallow-merged onto the current section. Must conform to the section's typed shape.
sideKeyYesSide page key
sectionIdYesSection ID from view_side_page (e.g. hero, features, matrix, verdict)
instructionsNoNatural-language edit instructions. When provided alone (no fields/field), triggers an AI pass that rewrites this section's content according to the instructions. When combined with fields/field, stored only as an annotation for future context — no AI pass runs.
Behavior5/5

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

With no annotations, the description carries full burden. It discloses 400 validation errors on shape mismatch, the three edit modes, AI-pass behavior, the flat-document behavior for text pages, draft version creation, and draft-only until published—all critical behavioral traits beyond what a schema could convey.

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?

The description is long but every sentence carries operational value. It is front-loaded with the core purpose. The only minor issue is that it is a single dense paragraph; structured sub-sections could improve readability, but it is not wordy.

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?

Given the tool's complexity and absent output schema, the description covers all needed workflows: inspection via view_side_page, the three edit modes, validation errors, version creation, and publishing requirements. It also explains the text-page special case and the nuance of instructions as annotation-only when combined with fields.

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 substantial meaning: it explains the three parameter combinations (fields, field+value, instructions), the dot-path syntax with an example (title.prefix), the typed shapes for landing and comparison sections, and the sectionId symmetry for text pages. This goes far beyond the individual property 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 clearly states the tool updates one section of a side page with structured, typed fields, distinguishing it from the simpler edit_side_page shortcut. It specifies both landing-section and comparison-section shapes, and the flat text-page case, making the resource and scope unambiguous.

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?

Explicitly instructs to use view_side_page(detail:'full') first to see the current section shape. Provides clear alternatives: edit_side_page for text-page direct writes, and explains when to use fields vs field+value vs instructions, including that instructions combined with fields does not trigger an AI pass.

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/bitsandtea/postking-mcp'

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