Skip to main content
Glama

put_collection_schema

DestructiveIdempotent

Replace the whole field schema (draft; publish makes it live). Read it with get_collection_schema first and send it back edited. Collection keys exactly as list_collections returns them ("blog/" or an id). Field: { key, type, label?, help?, required?, unique?, inCard?, default? } — type text (multiline, minLength, maxLength) | number (min, max, integer) | boolean | option (options[] required) | multiOption (options[] required, max) | link | email | phone | color. Keys: letter then letters/digits/_ (≤40), not a built-in post field (title, date, excerpt, tags, image, url, slug, …; author only as text), not secret-looking. ≤60 fields per collection. settings.defaultSort: date:desc|date:asc|title:asc|slug:asc. Removing a collection's entry drops its definitions (values stay on the posts). Values live in put_post meta.custom; writes then return fieldWarnings (soft, never blocking). 400 invalid_collection_schema lists issues; 409 conflict = stale ifMatch.

Input Schema

NameRequiredDescriptionDefault
siteYesSite slug, e.g. acme-studio
schemaYesWhole schema file: { "v": 1, "collections": { "<key>": { "fields": [...], "settings"?: {...} } } }.
contextYesOne sentence: why you are calling this tool and what you are trying to accomplish. Stored on the site's activity log and visible to everyone on the site — never put secrets or personal data here.
ifMatchNohash from get_collection_schema (stale → 409 conflict). null = the schema must not exist yet. Omit to write unconditionally.
guestTokenNoGuest token from start_site. Send it on every call until claim_site. Omit when this chat is already signed in to Dotsy.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations (destructiveHint=true, idempotentHint=true) by disclosing the concrete destruction semantics ('Removing a collection's entry drops its definitions (values stay on the posts)'), the draft-vs-live model, soft non-blocking fieldWarnings, and the exact error contract (400 invalid_collection_schema lists issues; 409 = stale ifMatch).

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 core action and the read-then-edit workflow, and every clause (field grammar, key rules, limits, errors) carries information. It is very dense as a single semicolon-chained paragraph, which slightly hurts scannability but wastes little.

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 destructive nested-schema mutation with no output schema, the description covers the prerequisite, key format, field constraints, per-collection limits, side effects of removal, and error codes — everything an agent needs to invoke it correctly.

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 description coverage is 100% (baseline 3), and the description adds real value beyond it: the collection-key format ('blog/' or an id), the full field grammar and per-type sub-attributes, the ≤60 field cap, and the defaultSort enum values — none of which the loosely-typed nested schema conveys.

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?

States a specific verb (Replace) and resource (the whole field schema), and immediately scopes it as draft-only until publish. An agent can distinguish this from get_collection_schema, infer_collection_schema, and update_collection without opening any schema.

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?

Explicitly prescribes the workflow: 'Read it with get_collection_schema first and send it back edited.' It gives a clear precondition and the draft/publish distinction, though it does not explicitly name update_collection or infer_collection_schema as alternatives for the cases where they apply.

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