Skip to main content
Glama
ProductOfAmerica

mcp-server-kicad

check_placement

Read-onlyIdempotent

Validate footprint placement at (x, y) and rotation against PCB constraints. Returns whether the proposed position violates design rules.

Instructions

Check if placing/moving a footprint to (x, y) would violate constraints.

Args:
    reference: Footprint reference designator
    x: Proposed X position
    y: Proposed Y position
    rotation: Proposed rotation in degrees
    pcb_path: Path to .kicad_pcb file

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
referenceYes
xYes
yYes
rotationNo
pcb_pathNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
statusYes
board_edge_checkedYes
keepout_violationsYes
outside_board_edgeYes
Behavior3/5

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

Annotations already indicate readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds that it checks constraints but does not elaborate on what constraints (e.g., DRC rules). With good annotation coverage, the description provides minimal extra behavioral context.

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 very concise, starting with the purpose and then listing arguments in a structured format. Every sentence serves a clear purpose with no unnecessary text.

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 the presence of an output schema (not shown), the description does not need to explain return values. It covers the tool's purpose and all parameters. However, it could mention that it checks design rule constraints, but overall it is sufficient for a read-only check tool.

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 description coverage is 0%, but the tool description fully compensates by listing each parameter with a brief description (e.g., 'reference: Footprint reference designator'). While descriptions are minimal, they add sufficient meaning beyond parameter names.

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 explicitly states the tool checks if placing/moving a footprint violates constraints, clearly distinguishing it from sibling tools like move_footprint or place_footprint that perform actions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage before placing or moving a footprint, but does not explicitly provide when-to-use vs alternatives or when-not-to-use scenarios. This leaves some ambiguity for the agent.

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/ProductOfAmerica/mcp-server-kicad'

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