# lib_create_ic_symbol

A write tool on the Eda Agent MCP server.

Agent View of the PolicyLayer registry record for `lib_create_ic_symbol`. HTML page: https://policylayer.com/tools/eda-agent/lib-create-ic-symbol

## Facts

- Tool: `lib_create_ic_symbol`
- Server: Eda Agent (`salitronic/eda-agent`) — https://policylayer.com/tools/eda-agent.md
- Homepage: https://github.com/salitronic/eda-agent
- 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": "lib_create_ic_symbol",
    "arguments": {}
  }
}
```

## Why lib_create_ic_symbol is rated Medium

This tool creates new library symbols, which is a reversible modification of design data within Altium. While it modifies persistent design artifacts, it is not destructive (symbols can be deleted or replaced) and does not execute arbitrary code or cause financial impact. High severity reflects that an AI misusing this could pollute design libraries with malformed symbols, requiring manual remediation.

From the tool's own definition: "Tool name 'lib_create_ic_symbol' indicates it creates a new IC symbol in a library. The 'create' verb and context within an Altium Designer automation server (schematic, PCB, library automation) show this modifies design artifacts."

## Use case

AI agents use lib_create_ic_symbol to create or update resources in Eda Agent, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Eda Agent environment.

## Recommended policy (PolicyLayer)

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

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

## Other tools on Eda Agent (344)

- `lib_uninstall_library` — Destructive — https://policylayer.com/tools/eda-agent/lib-uninstall-library.md
- `obj_batch_delete` — Destructive — https://policylayer.com/tools/eda-agent/obj-batch-delete.md
- `obj_delete` — Destructive — https://policylayer.com/tools/eda-agent/obj-delete.md
- `pcb_clear_source_footprint_library` — Destructive — https://policylayer.com/tools/eda-agent/pcb-clear-source-footprint-library.md
- `pcb_delete_design_rule` — Destructive — https://policylayer.com/tools/eda-agent/pcb-delete-design-rule.md
- `pcb_delete_invalid_objects` — Destructive — https://policylayer.com/tools/eda-agent/pcb-delete-invalid-objects.md
- `pcb_delete_net` — Destructive — https://policylayer.com/tools/eda-agent/pcb-delete-net.md
- `pcb_delete_object` — Destructive — https://policylayer.com/tools/eda-agent/pcb-delete-object.md
- `pcb_remove_layer` — Destructive — https://policylayer.com/tools/eda-agent/pcb-remove-layer.md
- `pcb_remove_teardrops` — Destructive — https://policylayer.com/tools/eda-agent/pcb-remove-teardrops.md
- `proj_delete_sheet` — Destructive — https://policylayer.com/tools/eda-agent/proj-delete-sheet.md
- `proj_remove_document` — Destructive — https://policylayer.com/tools/eda-agent/proj-remove-document.md
- `app_attach` — Execute — https://policylayer.com/tools/eda-agent/app-attach.md
- `app_run_menu` — Execute — https://policylayer.com/tools/eda-agent/app-run-menu.md
- `design_execute_plan` — Execute — https://policylayer.com/tools/eda-agent/design-execute-plan.md
- `design_validate` — Execute — https://policylayer.com/tools/eda-agent/design-validate.md
- `design_validate_plan` — Execute — https://policylayer.com/tools/eda-agent/design-validate-plan.md
- `obj_refresh_document` — Execute — https://policylayer.com/tools/eda-agent/obj-refresh-document.md
- `obj_run_process` — Execute — https://policylayer.com/tools/eda-agent/obj-run-process.md
- `obj_switch_view` — Execute — https://policylayer.com/tools/eda-agent/obj-switch-view.md
- `obj_zoom` — Execute — https://policylayer.com/tools/eda-agent/obj-zoom.md
- `pcb_build_from_project` — Execute — https://policylayer.com/tools/eda-agent/pcb-build-from-project.md
- `pcb_panelize` — Execute — https://policylayer.com/tools/eda-agent/pcb-panelize.md
- `pcb_plan_placement` — Execute — https://policylayer.com/tools/eda-agent/pcb-plan-placement.md
- `pcb_run_drc` — Execute — https://policylayer.com/tools/eda-agent/pcb-run-drc.md
- `pcb_scale` — Execute — https://policylayer.com/tools/eda-agent/pcb-scale.md
- `pcb_start_polygon_placement` — Execute — https://policylayer.com/tools/eda-agent/pcb-start-polygon-placement.md
- `pcb_tune_length` — Execute — https://policylayer.com/tools/eda-agent/pcb-tune-length.md
- `proj_compile` — Execute — https://policylayer.com/tools/eda-agent/proj-compile.md
- `proj_force_recompile` — Execute — https://policylayer.com/tools/eda-agent/proj-force-recompile.md
- …and 314 more: https://policylayer.com/tools/eda-agent.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=eda-agent · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/eda-agent
