# add_assembly_part

A write tool on the Kiln MCP server.

Agent View of the PolicyLayer registry record for `add_assembly_part`. HTML page: https://policylayer.com/tools/kiln/add-assembly-part

## Facts

- Tool: `add_assembly_part`
- Server: Kiln (`codeofaxel/Kiln`) — https://policylayer.com/tools/kiln.md
- Homepage: https://github.com/codeofaxel/Kiln
- 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": "add_assembly_part",
    "arguments": {}
  }
}
```

## Why add_assembly_part is rated Medium

The name implies adding/creating a part within an assembly context (Write). No description is available to confirm destructive or execute behavior. Given the server context of 3D printer control, this likely modifies an assembly model. Confidence is low due to empty description.

From the tool's own definition: "Tool name 'add_assembly_part' suggests creating or adding a part to an assembly, which is a write operation. Description is empty, lowering confidence."

## Use case

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

## Recommended policy (PolicyLayer)

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

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

## Other tools on Kiln (401)

- `cancel_print` — Destructive — https://policylayer.com/tools/kiln/cancel-print.md
- `cancel_print_recovery` — Destructive — https://policylayer.com/tools/kiln/cancel-print-recovery.md
- `cancel_print_service_order` — Destructive — https://policylayer.com/tools/kiln/cancel-print-service-order.md
- `cancel_split_plan` — Destructive — https://policylayer.com/tools/kiln/cancel-split-plan.md
- `delete_agent_note` — Destructive — https://policylayer.com/tools/kiln/delete-agent-note.md
- `delete_cached_model` — Destructive — https://policylayer.com/tools/kiln/delete-cached-model.md
- `delete_file` — Destructive — https://policylayer.com/tools/kiln/delete-file.md
- `delete_shipping_profile` — Destructive — https://policylayer.com/tools/kiln/delete-shipping-profile.md
- `fulfillment_cancel` — Destructive — https://policylayer.com/tools/kiln/fulfillment-cancel.md
- `remove_mesh_floating_regions` — Destructive — https://policylayer.com/tools/kiln/remove-mesh-floating-regions.md
- `remove_spool` — Destructive — https://policylayer.com/tools/kiln/remove-spool.md
- `rollback_design_version` — Destructive — https://policylayer.com/tools/kiln/rollback-design-version.md
- `rollback_firmware` — Destructive — https://policylayer.com/tools/kiln/rollback-firmware.md
- `untrust_printer` — Destructive — https://policylayer.com/tools/kiln/untrust-printer.md
- `acquire_printer_lock` — Execute — https://policylayer.com/tools/kiln/acquire-printer-lock.md
- `arrange_parts_on_plate` — Execute — https://policylayer.com/tools/kiln/arrange-parts-on-plate.md
- `auto_arrange_parts_on_plate` — Execute — https://policylayer.com/tools/kiln/auto-arrange-parts-on-plate.md
- `auto_orient_model` — Execute — https://policylayer.com/tools/kiln/auto-orient-model.md
- `await_print_completion` — Execute — https://policylayer.com/tools/kiln/await-print-completion.md
- `boolean_mesh_op` — Execute — https://policylayer.com/tools/kiln/boolean-mesh-op.md
- `calibrate_direct` — Execute — https://policylayer.com/tools/kiln/calibrate-direct.md
- `clear_emergency_stop` — Execute — https://policylayer.com/tools/kiln/clear-emergency-stop.md
- `compile_scad` — Execute — https://policylayer.com/tools/kiln/compile-scad.md
- `complete_print_recovery` — Execute — https://policylayer.com/tools/kiln/complete-print-recovery.md
- `confirm_print_recovery` — Execute — https://policylayer.com/tools/kiln/confirm-print-recovery.md
- `design_to_gcode_pipeline` — Execute — https://policylayer.com/tools/kiln/design-to-gcode-pipeline.md
- `emergency_stop` — Execute — https://policylayer.com/tools/kiln/emergency-stop.md
- `emergency_trip_input` — Execute — https://policylayer.com/tools/kiln/emergency-trip-input.md
- `firmware_resume_print` — Execute — https://policylayer.com/tools/kiln/firmware-resume-print.md
- `force_print_oversize` — Execute — https://policylayer.com/tools/kiln/force-print-oversize.md
- …and 371 more: https://policylayer.com/tools/kiln.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=kiln · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/kiln
