Skip to main content
Glama

draw

Draw circles, rectangles, or lines on the Packet Tracer canvas to ring subnets, frame areas, or mark boundaries, with custom outline and fill colors. Returns an ID for later removal.

Instructions

Draw on the logical canvas: a circle (centre and radius) around a subnet or group, a rectangle (two corners) to frame an area, or a line to mark a boundary. color is the outline (red, blue, green, ... or #rrggbb); fill fills circles and rectangles. The drawing is written into the network file, which Packet Tracer reopens from a temporary copy; save with a path to keep it. Returns the id remove_drawing takes.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
xYesCircle: the centre. Rectangle: one corner. Line: where it starts. Canvas coordinates, as in `add_device`.
yYes
fillNoCircle and rectangle: fill them with this colour, named or `#rrggbb`. Left unfilled when omitted.
to_xNoRectangle: the opposite corner. Line: where it ends.
to_yNo
colorNoOutline colour: `red`, `orange`, `yellow`, `green`, `blue`, `purple`, `gray`, `black`, `white`, or a `#rrggbb` value. Defaults to blue.
shapeNo`circle` (default), `rectangle` or `line`.circle
radiusNoCircle: its radius. Defaults to 60.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
fileYesThe temporary copy Packet Tracer now has open: drawings go through the network file. Your own file is untouched: save with `save_network` and a path to keep the drawing there.
fillNo
colorYes
shapeYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.2

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=false, destructiveHint=false, openWorldHint=false. The description adds the crucial non-obvious behavior: drawings are written into the network file, Packet Tracer reopens from a temporary copy, and the change is only kept if the agent saves with a path. It also states the return value (an id) and its consumer. This is material context an agent cannot get from the annotations.

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?

Four dense sentences: shapes first, then colour/fill, then persistence semantics, then return value. No filler, and the most consequential constraint (the temp-copy/save behavior) is stated before the return note.

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?

The tool is a mutating canvas operation with an output schema, and the description covers the shape vocabulary, the coordinate conventions, defaults, and the persistence caveat. Nothing needed to invoke it correctly is missing; return-value detail is appropriately brief since an output schema exists.

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 coverage is 75%, so the baseline is 3, but the description actively compensates: it specifies colour syntax (named palette or `#rrggbb`), the default outline colour (blue), radius default (60), and what x/y/to_x/to_y mean per shape. It largely duplicates schema text rather than extending it, so it stops short of 5.

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?

Opens with a specific verb and resource ('Draw on the logical canvas') and enumerates the three concrete shapes with their geometric meaning. It also names the sibling that consumes this tool's output ('Returns the id `remove_drawing` takes'), making it distinguishable from list_drawings/remove_drawing 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?

Each shape is tied to a use case ('ring a subnet or group', 'frame an area', 'mark a boundary'), which tells the agent which variant to select. It also says when to save ('save with a path to keep it'), a real usage condition. It does not, however, state when not to draw or name alternatives in the shape-selection space.

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