Skip to main content
Glama
yigitabi5444

KiCad Context MCP

by yigitabi5444

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
KICAD_CLINoPath to the kicad-cli executable (optional, auto-detected if not set)
KICAD_PROJECTYesPath to the KiCad project directory or project file

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": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
board_overviewA

Orientation call. What is this board: title, sheets/function blocks, key ICs, power rails, connectors, and part counts. Make this first.

findA

Search the board. kind = component | net | sheet. Returns a paginated list of matching IDs + one-line labels to feed into other tools.

componentB

Describe one component: value, footprint, datasheet, fields, and its pin -> net map. Use net() on a pin's net to expand connectivity.

netB

List the pins on a net, grouped by component. Paginates large nets.

traceB

Walk connectivity from a pin outward, bounded by depth (max 3). One hop = crossing a net or passing through a component. Large nets are reported but not fully expanded, to stay bounded.

power_treeA

Regulators and the rails they feed. Heuristic (library/value match). Pass a rail name to filter. Use net() on a rail for its full fanout.

checksB

Run ERC (schematic) or DRC (board) and return counts by severity, then a capped detail list. Filter by severity to expand a class.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 7 tools

Disambiguation5/5

Each tool has a clearly defined, non-overlapping purpose: board_overview for high-level summary, checks for validation, component for detailed component info, find for searching, net for net pin lists, power_tree for power distribution, and trace for connectivity walking. No two tools appear to perform the same function.

Naming Consistency4/5

Tool names are mostly lowercase with underscores for compound names, but they mix verb forms (find, checks, trace) with noun forms (component, net, power_tree). This inconsistency makes it slightly less predictable, though still readable.

Tool Count5/5

With 7 tools, the server covers essential aspects of KiCad board analysis—overview, search, component details, nets, power, connectivity, and checks—without being overwhelming. The count feels well-scoped for the domain.

Completeness5/5

The tool set provides comprehensive coverage for understanding a KiCad board: starting from overview, searching for elements, drilling into components and nets, examining power distribution, and tracing connectivity. Minor gaps like direct listing of all nets or sheets are addressed via the find tool.

Maintenance

ActivityStale
ResponsivenessNo issues