# joint_set_bodies

Set node_a and/or node_b on an existing Joint2D/3D in the edited scene (undoable) — the NodePaths of the two bodies the joint connects, relative to the joint node. In-scene and undoable — not gated.

Agent View of the PolicyLayer registry record for `joint_set_bodies`. HTML page: https://policylayer.com/tools/godot-breakpoint-mcp/joint-set-bodies

## Facts

- Tool: `joint_set_bodies`
- Server: Godot Breakpoint (`jlivingston-Cipher/godot-breakpoint-mcp`) — https://policylayer.com/tools/godot-breakpoint-mcp.md
- Homepage: https://github.com/jlivingston-Cipher/godot-breakpoint-mcp
- 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": "joint_set_bodies",
    "arguments": {}
  }
}
```

## Why joint_set_bodies is rated Medium

This tool modifies an existing joint's node references in the Godot scene, which is a write operation. The description explicitly marks it as 'undoable,' meaning changes can be reversed, which excludes it from Destructive. It does not execute code or trigger external operations (excluding Execute), nor does it move money (excluding Financial).

From the tool's own definition: "Tool description states it 'Set node_a and/or node_b on an existing Joint2D/3D' and explicitly notes '(undoable)' — indicating reversible modification of scene node properties rather than deletion or execution."

## Use case

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

## Recommended policy (PolicyLayer)

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

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

## Other tools on Godot Breakpoint (238)

- `anim_delete` — Destructive — https://policylayer.com/tools/godot-breakpoint-mcp/anim-delete.md
- `anim_remove_key` — Destructive — https://policylayer.com/tools/godot-breakpoint-mcp/anim-remove-key.md
- `cs_rename` — Destructive — https://policylayer.com/tools/godot-breakpoint-mcp/cs-rename.md
- `filesystem_move` — Destructive — https://policylayer.com/tools/godot-breakpoint-mcp/filesystem-move.md
- `inputmap_erase_action` — Destructive — https://policylayer.com/tools/godot-breakpoint-mcp/inputmap-erase-action.md
- `node_delete` — Destructive — https://policylayer.com/tools/godot-breakpoint-mcp/node-delete.md
- `project_remove_autoload` — Destructive — https://policylayer.com/tools/godot-breakpoint-mcp/project-remove-autoload.md
- `scene_close` — Destructive — https://policylayer.com/tools/godot-breakpoint-mcp/scene-close.md
- `scene_reload` — Destructive — https://policylayer.com/tools/godot-breakpoint-mcp/scene-reload.md
- `shader_set_code` — Destructive — https://policylayer.com/tools/godot-breakpoint-mcp/shader-set-code.md
- `tilemap_clear` — Destructive — https://policylayer.com/tools/godot-breakpoint-mcp/tilemap-clear.md
- `cs_dbg_attach` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/cs-dbg-attach.md
- `cs_dbg_continue` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/cs-dbg-continue.md
- `cs_dbg_evaluate` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/cs-dbg-evaluate.md
- `cs_dbg_launch` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/cs-dbg-launch.md
- `cs_dbg_restart` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/cs-dbg-restart.md
- `cs_dbg_set_exception_breakpoints` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/cs-dbg-set-exception-breakpoints.md
- `cs_dbg_step` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/cs-dbg-step.md
- `dbg_attach` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/dbg-attach.md
- `dbg_continue` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/dbg-continue.md
- `dbg_evaluate` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/dbg-evaluate.md
- `dbg_goto` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/dbg-goto.md
- `dbg_launch` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/dbg-launch.md
- `dbg_restart` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/dbg-restart.md
- `dbg_set_exception_breakpoints` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/dbg-set-exception-breakpoints.md
- `dbg_set_variable` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/dbg-set-variable.md
- `dbg_step` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/dbg-step.md
- `filesystem_scan` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/filesystem-scan.md
- `godot_launch_editor` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/godot-launch-editor.md
- `godot_run_managed` — Execute — https://policylayer.com/tools/godot-breakpoint-mcp/godot-run-managed.md
- …and 208 more: https://policylayer.com/tools/godot-breakpoint-mcp.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=godot-breakpoint-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/godot-breakpoint-mcp
