Skip to main content
Glama

canvas_draw

Create or update shapes, text, frames, and connectors on a shared whiteboard; reuse an element ID to change only specified fields and bind arrows to element IDs.

Instructions

Create or update elements. Re-using an id updates only the given fields. Arrows bind with from/to element ids.

Input Schema

NameRequiredDescriptionDefault
elementsYesElement specs

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.5/5.0
Behavior3/5

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

No annotations exist, so the description carries the whole burden. It correctly discloses that updates are partial merges keyed on id and that arrows bind by from/to ids, but says nothing about return values (notably the auto-generated ids an agent needs in order to link arrows), batch limits, or failure behavior when an id is unknown.

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

Conciseness5/5

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

Three short sentences, each carrying a distinct rule, with the primary create-or-update purpose front-loaded. Nothing is padded or redundant.

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 single batch parameter with a rich 200-item element spec, the description covers the two most important semantics. The key omission is what the call returns — particularly generated ids — which an agent needs to wire up arrows in a follow-up call, and no mention of whether the whole batch applies atomically.

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 100% — every nested property, including id, from, to, frame, and points, is documented inline. The description reinforces the two cross-field behaviors (id reuse and arrow binding) but adds little beyond the schema, so the baseline 3 applies.

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?

"Create or update elements" gives a specific verb pair and resource, and the two follow-up sentences clarify the create-vs-update distinction. It does not, however, differentiate from siblings such as canvas_mermaid or canvas_delete, so an agent must infer that this is the low-level shape/arrow authoring tool.

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?

"Re-using an id updates only the given fields" is a genuine usage rule that tells the agent how to choose between create and partial-update paths. But there is no explicit guidance on when to pick this over canvas_mermaid, canvas_save, or canvas_delete, and no stated preconditions for the canvas being open.

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