Skip to main content
Glama

更新白板元素

whiteboard_update_elements
Idempotent

Updates whiteboard element text, position, size, color, or rotation by exact IDs in batch, with optional version checks to prevent overwriting newer canvas content.

Instructions

Update text, position, size, color, or rotation by exact element IDs. 按准确元素 ID 批量修改文本、位置、尺寸、颜色或旋转角度。

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": {
      "updates": "<updates>"
    },
    "name": "whiteboard_update_elements"
  }
}

Input Schema

NameRequiredDescriptionDefault
boardIdNo白板 ID;省略时使用最近更新的白板,建议始终指定准确 IDdefault
updatesYes
expectedVersionNo先 inspect 获得版本;过期写入会返回 VERSION_CONFLICT 而不会覆盖内容

Output Schema

NameRequiredDescriptionDefault
boardNo
errorNo
boardsNo
pageIdNo
boardIdNo
currentNo
deletedNo
versionNo
alignedIdsNo
deletedIdsNo
elementIdsNo
updatedIdsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.7

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds the bulk-update scope ('批量'), but does not disclose partial-update semantics (are unspecified fields preserved?), the 200-item batch cap, or what happens when an ID does not exist. Version-conflict behavior lives only in the schema, not the description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The content is front-loaded and short in substance, but it is duplicated verbatim in English and Chinese, which doubles the token cost with zero informational gain. Each language edition alone would be an efficient single sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists and versioning is documented in the schema, so return-value explanation is unnecessary. However, for a non-destructive bulk mutation tool the description leaves out the two things an agent most needs: whether this is a partial (patch) update preserving unlisted fields, and what the response looks like on partial failure. Adequate but with clear gaps.

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 description coverage is 67%: boardId and expectedVersion carry their own descriptions, while the nested update fields are undocumented in the schema but have self-explanatory names. The description enumerates some of the updatable fields but omits bold, italic, underline, opacity, fontSize, textAlign, arrowStyle and strokeSize, so it adds only marginal meaning beyond the schema. Baseline 3 fits.

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?

States a specific verb (update) plus the resource (whiteboard elements) and enumerates the mutable attributes (text, position, size, color, rotation) plus the lookup key (exact element IDs) and batch scope. This differentiates it reasonably from whiteboard_add_elements and whiteboard_delete_elements, but it never contrasts itself with whiteboard_native_edit, which is the closest ambiguous sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'by exact element IDs' implies a prerequisite workflow (you must first obtain IDs via whiteboard_inspect or whiteboard_list), but the description never says so explicitly. There is no statement of when to prefer this over whiteboard_native_edit or whiteboard_align_elements, and no exclusions or error conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.