# sch_place_line

A write tool on the Altium-MCP-Suite MCP server.

Agent View of the PolicyLayer registry record for `sch_place_line`. HTML page: https://policylayer.com/tools/altium-mcp-suite/sch-place-line

## Facts

- Tool: `sch_place_line`
- Server: Altium-MCP-Suite (`M-R-Abedini/Altium-MCP-Suite`) — https://policylayer.com/tools/altium-mcp-suite.md
- Homepage: https://github.com/M-R-Abedini/Altium-MCP-Suite
- 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": "sch_place_line",
    "arguments": {}
  }
}
```

## Why sch_place_line is rated Medium

The tool creates or modifies schematic elements (line placement) within a persistent design document. This is a reversible write operation—lines can be deleted or moved—but lacks destructive finality. Although the description is empty, the name and server context (schematic automation) make the intent clear.

From the tool's own definition: "Tool name 'sch_place_line' indicates placement of a schematic line element. Within the Altium Designer automation context (290+ tools for schematic, PCB, library & project automation), this performs a creation/modification operation on schematic design data."

## Use case

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

## Recommended policy (PolicyLayer)

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

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

## Other tools on Altium-MCP-Suite (816)

- `easyeda_clear_findings` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-clear-findings.md
- `easyeda_clear_routing` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-clear-routing.md
- `easyeda_clear_schematic_selection` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-clear-schematic-selection.md
- `easyeda_clear_selection` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-clear-selection.md
- `easyeda_close_document` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-close-document.md
- `easyeda_delete_device` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-delete-device.md
- `easyeda_delete_footprint` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-delete-footprint.md
- `easyeda_delete_panel` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-delete-panel.md
- `easyeda_delete_pcb` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-delete-pcb.md
- `easyeda_delete_primitives` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-delete-primitives.md
- `easyeda_delete_project` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-delete-project.md
- `easyeda_delete_schematic` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-delete-schematic.md
- `easyeda_delete_schematic_page` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-delete-schematic-page.md
- `easyeda_delete_schematic_primitives` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-delete-schematic-primitives.md
- `easyeda_delete_symbol` — Destructive — https://policylayer.com/tools/altium-mcp-suite/easyeda-delete-symbol.md
- `kicad_delete_component` — Destructive — https://policylayer.com/tools/altium-mcp-suite/kicad-delete-component.md
- `lib_clear_source_library` — Destructive — https://policylayer.com/tools/altium-mcp-suite/lib-clear-source-library.md
- `lib_delete_component` — Destructive — https://policylayer.com/tools/altium-mcp-suite/lib-delete-component.md
- `lib_delete_footprint` — Destructive — https://policylayer.com/tools/altium-mcp-suite/lib-delete-footprint.md
- `lib_delete_footprint_primitives` — Destructive — https://policylayer.com/tools/altium-mcp-suite/lib-delete-footprint-primitives.md
- `lib_remove_model` — Destructive — https://policylayer.com/tools/altium-mcp-suite/lib-remove-model.md
- `lib_uninstall_library` — Destructive — https://policylayer.com/tools/altium-mcp-suite/lib-uninstall-library.md
- `obj_batch_delete` — Destructive — https://policylayer.com/tools/altium-mcp-suite/obj-batch-delete.md
- `obj_delete` — Destructive — https://policylayer.com/tools/altium-mcp-suite/obj-delete.md
- `pcb_clear_source_footprint_library` — Destructive — https://policylayer.com/tools/altium-mcp-suite/pcb-clear-source-footprint-library.md
- `pcb_delete_design_rule` — Destructive — https://policylayer.com/tools/altium-mcp-suite/pcb-delete-design-rule.md
- `pcb_delete_invalid_objects` — Destructive — https://policylayer.com/tools/altium-mcp-suite/pcb-delete-invalid-objects.md
- `pcb_delete_net` — Destructive — https://policylayer.com/tools/altium-mcp-suite/pcb-delete-net.md
- `pcb_delete_object` — Destructive — https://policylayer.com/tools/altium-mcp-suite/pcb-delete-object.md
- `pcb_remove_layer` — Destructive — https://policylayer.com/tools/altium-mcp-suite/pcb-remove-layer.md
- …and 786 more: https://policylayer.com/tools/altium-mcp-suite.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=altium-mcp-suite · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/altium-mcp-suite
