Skip to main content
Glama

create_arrow

Add an arrow to a Mural to show connections or flows. Define its position, path, type, tip, style, and labels; optionally snap it to start and end widgets.

Instructions

Create an arrow (connector) widget on a mural.

Args:
    mural_id: The mural ID.
    x: Horizontal position in px.
    y: Vertical position in px.
    width: Width of the bounding box in px.
    height: Height of the bounding box in px.
    points: Array of {x, y} coordinate objects defining the arrow path (min 2 points).
    arrow_type: "straight" (default), "curved", or "orthogonal".
    tip: "single" (default), "double", or "no tip".
    start_ref_id: ID of the widget the arrow starts from (snaps to it).
    end_ref_id: ID of the widget the arrow ends at (snaps to it).
    style: { strokeColor (hex+alpha), strokeStyle ("solid"|"dashed"|"dotted-spaced"|"dotted"), strokeWidth (1-7) }.
    label: { format: {color, fontFamily, bold, italic, textAlign, fontSize}, labels: [{x, y, height, width, text}] }.
    parent_id: ID of parent area widget.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
xYes
yYes
tipNo
labelNo
styleNo
widthYes
heightYes
pointsYes
mural_idYes
parent_idNo
arrow_typeNo
end_ref_idNo
start_ref_idNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior3/5

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

With no annotations, the description carries the burden. It discloses parameter behaviors such as snapping via start_ref_id/end_ref_id and allowed values for arrow_type, but does not mention permissions, prerequisites like an existing mural, or side effects. It provides some behavioral context but not comprehensive.

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?

The description is a well-organized docstring with one sentence for the purpose and a bullet-like list of parameters. Every line provides meaningful detail without fluff, and the purpose is front-loaded.

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?

With 13 parameters and no schema descriptions, the description covers all parameters thoroughly, including nested structures. It omits minor context like coordinate system and error handling, but given the output schema exists and parameter semantics are rich, it is mostly complete for a complex creation tool.

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%, so the description fully compensates by defining every parameter with depth: points as array of {x,y} objects with min 2 items, arrow_type enum values, style structure with strokeColor/hex+alpha, and label nested object. This is exemplary parameter documentation.

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?

The description clearly states 'Create an arrow (connector) widget on a mural' with a specific verb and resource, making it distinct from sibling creation tools. The parenthetical 'connector' further clarifies the widget type.

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?

The purpose is unambiguous, clearly indicating this tool is for creating an arrow widget. However, it does not explicitly mention alternatives or when not to use it, but the context is clear enough given the tool name and sibling create tools.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/alymohamedhassan/mural-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server