Skip to main content
Glama

批量搭建画布

pavo_apply_canvas
Idempotent

Batch-create, update, and connect canvas nodes using alias references, previewing changes by default and writing them only when dry_run is false.

Instructions

批量create/update/connect,默认只预览。create含type、可选as别名/name/prompt/model/params/media_type/url;update含node_key和待改字段;connect含source/target/role/media_order,使用$name引用此前创建的别名。dry_run=false才写入。

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": {
      "project_uuid": "<project_uuid>",
      "canvas_uuid": "<canvas_uuid>",
      "operations": "<operations>",
      "operation_id": "<operation_id>"
    },
    "name": "pavo_apply_canvas"
  }
}

Input Schema

NameRequiredDescriptionDefault
dry_runNo
operationsYes
canvas_uuidYes
operation_idYes
project_uuidYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.1

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false and idempotentHint=true, so the safety bar is lower, yet the description still adds substantive behavior: the default is a no-write preview and mutation requires an explicit dry_run=false opt-in. It stops short of describing partial-failure behavior or how batching interacts with the idempotency hint.

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?

Dense but front-loaded: the batch-preview-then-write contract comes first, then per-operation field lists grouped by verb. Every clause carries information, though the run-on punctuation style makes it harder to scan than a bulleted breakdown of the three operation kinds.

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?

For a tool with a free-form operations array and an output schema, the description covers the payload shape well and leaves return values to the schema. It omits any explanation of the required operation_id (presumably an idempotency/correlation key) and of project_uuid/canvas_uuid scoping, which is a meaningful gap for a required, non-obvious parameter.

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?

Schema description coverage is 0% and the operations array is typed only as a free-form object, so the description carries the entire specification burden — and it does: it enumerates the create fields (type, as, name, prompt, model, params, media_type, url), the update fields (node_key plus changed fields), the connect fields (source/target/role/media_order), and the $name alias-reference convention. Without this text the operations payload would be unusable.

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?

The description opens with a compact verb list (batch create/update/connect) plus the key qualifier that it only previews by default, which distinguishes it as the batch-write tool versus singular siblings like pavo_create_node / pavo_update_node / pavo_connect_references. It never names those siblings explicitly, and the mixed-language phrasing makes the purpose slightly less immediate than a clean single-clause statement.

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?

'Default preview only' plus 'dry_run=false 才写入' effectively tells the agent the safe path and how to commit, which is real usage guidance. However there is no statement of when to prefer this batch tool over the single-node siblings, and no mention of prerequisites (e.g. validating the canvas first, or what operation_id is for).

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