Skip to main content
Glama
bhanutpt

inksmcp

by bhanutpt

grid

Draw graph-paper lines inside a rectangle with linear or logarithmic axes, labels, and adjustable weights—no manual line-position calculations.

Instructions

Draw a grid / graph paper inside rect [x, y, w, h] — linear or logarithmic per axis — without computing any line positions. Axis specs: linear: {"scale": "linear", "major": 10, "medium": 5, "minor": 1, "label_start": 0, "label_step": 1} (spacings in user units, each a whole multiple of the finest; labels on major lines) log: {"scale": "log", "cycles": 3, "subdivisions": "standard" | "fine" | "integers", "start": 10} (decades major, 2..9 medium, subdivisions minor; "start" = value at the origin (default 1); "labels": "decades" (start, start*10, ...; default when start is given) | "paper" (1..9 per cycle)) "reverse": true flips an axis (default x left→right, y bottom→top); "lines": false keeps the axis (labels, plot mapping) but draws none of its gridlines, e.g. vertical-only lines for a bar chart. weights: {"major", "medium", "minor"} stroke widths (defaults 0.45/0.22/0.08 mm); border: stroke width of the frame (default 0.6 mm, 0 = none). labels: {"sides": ["left", "bottom"], "font_size", "gap", "color", "font_family", "bold_major", "x_title", "y_title", "title_font_size"} — placed outside the grid, centred on their lines (measured); major labels are bold unless "bold_major": false; titles go below / left (rotated) of the tick labels. Result: one path per weight class in layers ' minor/medium/major', labels in ' labels'. Use plot with grid= to draw data on it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
xNo
yNo
rectYes
colorNo#7f7f7f
borderNo
doc_idNo
labelsNo
previewNo
weightsNo
id_prefixNogrid
layer_prefixNoGrid

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses key behavioral traits: output as one path per weight class in named layers, label placement outside the grid, reverse/lines switches, and default stroke widths and border behavior. It does not cover preview or document-target behavior (doc_id), but overall it is strong.

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?

Long but dense and front-loaded with purpose before detailed specs. Every section explains parameter behavior for a complex 11-param tool with no schema descriptions, so the length is justified.

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?

Given no annotations and no output schema, the description is largely complete: it explains most parameters, result layers, and integration with plot. Minor gaps remain around preview, doc_id, and color, but an agent can invoke it correctly.

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 0% across 11 parameters, so the description must compensate. It thoroughly explains axis spec formats (linear/log), reverse, lines, weights, border, and label options, and names layer prefixes/result layers; however color, doc_id, and preview are left unexplained.

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?

States a specific verb 'Draw' and resource 'grid / graph paper', plus scope 'inside rect [x,y,w,h]' and per-axis scale options. It distinguishes from sibling plot by noting plot should be used with grid=<id_prefix> to draw data on top.

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?

Provides clear context: use to create graph paper background without computing line positions, and describes integration with plot for data overlay. It does not explicitly state when not to use it versus add_elements or other drawing tools, but examples like vertical-only lines for a bar chart give usage context.

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