Skip to main content
Glama

Edit doc page

edit_doc_page
Destructive

CHANGES one page of a doc. Either rewrite it whole: markdown as the page should now read, with page_hash (from fetch or write_doc) so nothing written since you read it is lost; if it changed, read again and redo. Or send edits, each an exact old_text found once in the page's Markdown and its new_text. Returns the new hash.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "board_id": "<board_id>",
      "card_id": "<card_id>",
      "page_id": "<page_id>"
    },
    "name": "edit_doc_page"
  }
}

Input Schema

NameRequiredDescriptionDefault
draftNoThe draft key create_boards returned. Pass it on every call about that draft.
editsNoChanges made in order, instead of markdown
titleNoA new title for the page
card_idYesThe doc card
page_idYesThe page, from fetch or write_doc
board_idYesThe board
markdownNoThe whole page as it should now read; needs page_hash
page_hashNoThe page's hash when you read it

Output Schema

NameRequiredDescriptionDefault
urlNo
pageNo
blocksNo
changedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / draft
      Added value: +{
      +  "description": "The draft key create_boards returned. Pass it on every call about that draft.",
      +  "type": "string"
      +}
  2. First observed

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=false, and the description is consistent with that write profile. It adds genuinely useful behavior beyond them: optimistic concurrency via page_hash, the consequence of a stale hash ('nothing written since you read it is lost'), and the returned new hash. Those additions are solid but do not exceed what the annotations already frame, keeping this at a 3 under the stated bar.

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?

One tight paragraph, front-loaded with the effect and then the two operating modes; no filler sentences. The nested clauses ('with page_hash (from fetch or write_doc) so nothing written since you read it is lost; if it changed, read again and redo') are slightly run-on and cost a little scannability.

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?

An output schema exists, so the description need not detail return values, and it still flags the returned hash. Combined with the two mode paths and the conflict-retry rule, an agent has enough to call this correctly, with only the write_doc relationship left ambiguous.

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 100%, so the schema already carries per-field definitions; the baseline of 3 applies. The description does add coupling the schema does not express — that markdown is only valid together with page_hash, and that edits are exact-match-single-occurrence replacements — but leaves board_id/card_id/page_id relationships entirely to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb and resource ('CHANGES one page of a doc') and immediately enumerates the two mutation shapes it supports, so an agent knows exactly what the call does. It names write_doc and fetch only as sources of page_hash rather than as alternatives to this tool, so differentiation from write_doc is implied but never stated.

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?

Gives concrete mode selection guidance: whole-page rewrite versus targeted edits, with the precondition that markdown requires page_hash. It also tells the agent what to do on a hash conflict ('read again and redo'), which is real when-to-use guidance. It stops short of saying when to prefer this over write_doc or how to choose between the two modes.

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.