# batch_move_components

Move multiple PCB components transactionally. If one reference/spec is invalid, no components are moved. Saves by default unless save=false.

Agent View of the PolicyLayer registry record for `batch_move_components`. HTML page: https://policylayer.com/tools/mixelpixx-kicad-mcp-server/batch-move-components

## Facts

- Tool: `batch_move_components`
- Server: KiCAD-MCP-Server (`mixelpixx/kicad-mcp-server`) — https://policylayer.com/tools/mixelpixx-kicad-mcp-server.md
- Homepage: https://github.com/mixelpixx/KiCAD-MCP-Server
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "batch_move_components",
    "arguments": {}
  }
}
```

## Why batch_move_components is rated Medium

This tool creates or modifies data reversibly. It repositions components on a PCB schematic/layout and saves the changes to the design file. While the changes are persistent, they are not destructive (components are not deleted, and moves can be undone in KiCAD).

From the tool's own definition: "Tool description states 'Move multiple PCB components transactionally' and 'Saves by default unless save=false' — modifies PCB layout data and persists changes."

Risk signals: Bulk/mass operation — affects multiple targets

## Use case

AI agents use batch_move_components to create or update resources in KiCAD-MCP-Server, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your KiCAD-MCP-Server environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches KiCAD-MCP-Server:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "batch_move_components": {
      "limits": [
        {
          "counter": "batch_move_components_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on KiCAD-MCP-Server (230)

- `clear_board_outline` — Destructive — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/clear-board-outline.md
- `delete_component` — Destructive — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/delete-component.md
- `delete_graphic` — Destructive — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/delete-graphic.md
- `delete_schematic_component` — Destructive — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/delete-schematic-component.md
- `delete_schematic_net_label` — Destructive — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/delete-schematic-net-label.md
- `delete_schematic_wire` — Destructive — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/delete-schematic-wire.md
- `delete_symbol` — Destructive — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/delete-symbol.md
- `delete_trace` — Destructive — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/delete-trace.md
- `discard_or_reload` — Destructive — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/discard-or-reload.md
- `remove_hierarchical_sheet` — Destructive — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/remove-hierarchical-sheet.md
- `remove_library_table_entry` — Destructive — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/remove-library-table-entry.md
- `remove_schematic_component_property` — Destructive — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/remove-schematic-component-property.md
- `autoroute` — Execute — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/autoroute.md
- `export_3d_cli` — Execute — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/export-3d-cli.md
- `export_drill` — Execute — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/export-drill.md
- `launch_kicad_ui` — Execute — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/launch-kicad-ui.md
- `refill_zones` — Execute — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/refill-zones.md
- `run_drc` — Execute — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/run-drc.md
- `run_erc` — Execute — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/run-erc.md
- `batch_list_symbol_pins` — Read — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/batch-list-symbol-pins.md
- `check_clearance` — Read — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/check-clearance.md
- `check_courtyard_overlaps` — Read — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/check-courtyard-overlaps.md
- `check_freerouting` — Read — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/check-freerouting.md
- `check_kicad_ui` — Read — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/check-kicad-ui.md
- `check_placement_clearance` — Read — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/check-placement-clearance.md
- `download_registry_part` — Read — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/download-registry-part.md
- `estimate_airwire_lengths` — Read — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/estimate-airwire-lengths.md
- `export_bom` — Read — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/export-bom.md
- `export_ipc2581` — Read — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/export-ipc2581.md
- `export_ipcd356` — Read — https://policylayer.com/tools/mixelpixx-kicad-mcp-server/export-ipcd356.md
- …and 200 more: https://policylayer.com/tools/mixelpixx-kicad-mcp-server.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=mixelpixx-kicad-mcp-server · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/mixelpixx-kicad-mcp-server
