Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
FZ_BINNoPath to the `fz` CLI launcher (Fritzing design toolkit). The `fz` CLI and a local Fritzing app build (for headless rendering) are required; point FZ_BIN at the `fz` launcher.$HOME/code/fritzing-ai/bin/fz

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
fritzing_search_partsA

Search the Fritzing parts library (2663 core parts + local custom parts).

Returns rows of moduleId title [family] (source). Call fritzing_part_connectors with a result's moduleId before wiring it.

fritzing_part_connectorsA

List a part's connector ids, names, and types (male/female/pad) as JSON.

Connector ids are what wire endpoints reference (e.g. "r1.connector1" -> "led1.connector1").

fritzing_new_sketchC

Create an empty Fritzing sketch bundle.

fritzing_place_partA

Add a part instance to a sketch.

Coordinates are sketch pixels at 90 DPI (1 inch = 90 px; mm -> px = 90*mm/25.4). The placed instance's assigned ref is in the output — use it for wire/move/props.

fritzing_wireB

Wire two part connectors together (creates the electrical ).

fritzing_move_partB

Move a placed instance (omit x/y to read its current position).

fritzing_set_propertiesC

Set instance properties (name=value pairs).

fritzing_remove_partC

Remove an instance from the sketch.

fritzing_show_sketchC

Dump the sketch's instances (refs, moduleIds, positions, wires) as JSON.

fritzing_checkA

Validate a sketch: unique modelIndexes, resolvable moduleIds, every instance has >= 1 view, every wire endpoint connector exists on its target. MUST pass before handing a design off or opening it in the GUI.

fritzing_renderA

Headless-render sketch(es) to SVG (and optionally PNG via ImageMagick).

Writes _.svg/.png next to the target. The first render per session takes ~10 s (parts DB load). Read the PNG to visually inspect the design, then adjust positions/wires and re-render.

fritzing_create_partA

Generate a custom part (fzp + 4 view SVGs) from a JSON spec.

Custom parts must have all 4 views; restart Fritzing after --install (parts are scanned at startup).

fritzing_validate_partC

Validate a .fzp part definition file.

fritzing_open_guiA

Open sketch(es) in the Fritzing GUI for human review.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.4/5.0

Scored across 14 tools

Disambiguation4/5

Most tools target distinct actions (move, remove, place, wire, render, etc.), but fritzing_check (validate a whole sketch) and fritzing_validate_part (validate a single .fzp part definition) share the 'validate' verb and could be briefly confused despite the descriptions distinguishing their scope.

Naming Consistency5/5

Every tool uses the same snake_case verb/noun pattern with a uniform fritzing_ prefix (e.g. fritzing_place_part, fritzing_remove_part, fritzing_validate_part), making the set highly predictable.

Tool Count5/5

14 tools is well-scoped for an EDA/sketch-editing server, covering distinct lifecycle stages (part discovery, sketch creation, placement, wiring, validation, rendering) without redundancy.

Completeness4/5

The surface covers sketch creation, part placement/movement/removal, wiring, property setting, rendering, and custom part creation, but lacks wire removal/editing and sketch deletion, leaving minor gaps agents must work around.

Maintenance

ActivityMaintained
ResponsivenessNo issues