Skip to main content
Glama

footprint_render_package

Render a package's land pattern to SVG or PNG and overlay its terminals, making missing lands visible when checking the footprint against datasheet drawings.

Instructions

Draw the land pattern a package gives, to compare with its datasheet.

Offline. Renders the footprint the engine would build (lands with their numbers, paste windows, silkscreen with the pin 1 dot, assembly outline, courtyard, origin and a 1 mm scale bar) and draws the package's terminals over the lands as dashed green outlines, so a land that misses its terminal shows. A caption gives the pattern's pitch, span and land sizes. Read the returned image next to the datasheet's package drawing and recommended land pattern.

Args: package: the PackageSpec as an object or JSON text. density: L, N or M (least, nominal, most). path: where to write the SVG; default <workspace>/renders/<name>_<density>.svg. png: also write a PNG beside it through the headless browser the board renders use, when one is installed.

Returns: {ok, svg_path, png_path, name, density, metrics, warnings}, with rasterize_note when no PNG could be made.

Input Schema

NameRequiredDescriptionDefault
pngNo
pathNo
densityNoN
packageYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.1

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations the description carries the load and does well: it discloses that it is offline and non-invasive ("the footprint the engine would build"), that it writes an SVG to a default path unless overridden, and that PNG output depends on an installed headless browser with a rasterize_note fallback plus warnings. It does not explicitly state that nothing in the library or project is mutated, leaving the side-effect profile slightly implicit.

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?

Purpose comes first in a single punchy sentence, then the rendered contents, then Args/Returns blocks that are each one or two lines. Nearly every clause carries information an agent would otherwise have to guess.

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?

Covers purpose, what the image shows, the validation workflow, all four parameters and the failure mode for PNG. The Returns block partially duplicates an existing output schema, and the undocumented shape of PackageSpec is the one substantive completeness gap for a tool whose required argument is that opaque object.

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%, so the description must compensate and mostly does: it defines density's L/N/M as least/nominal/most, explains the path default template, and documents png's conditional browser dependency. The biggest remaining gap is package, whose accepted form (object or JSON text) is stated but whose PackageSpec fields are never described.

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?

States a specific verb and resource: it draws the land pattern the engine would build for a PackageSpec, including lands, paste windows, silkscreen, courtyard, origin and scale bar. That is far more specific than a name restatement, but among siblings like footprint_check_package and lib_audit_footprint_vs_package it never explicitly says how it differs from those audit tools.

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?

Gives clear usage context: render, then read the image next to the datasheet's package drawing and recommended land pattern, with dashed green terminal outlines exposing lands that miss their terminal. It stops short of naming an alternative tool or stating when-not to use it, so it is clear context without exclusions.

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

Deploy Server

Other Tools