# duplicate_niagara_emitter

Duplicate an emitter within a Niagara System.

Agent View of the PolicyLayer registry record for `duplicate_niagara_emitter`. HTML page: https://policylayer.com/tools/aadeshrao123-unreal-mcp/duplicate-niagara-emitter

## Facts

- Tool: `duplicate_niagara_emitter`
- Server: Unreal-MCP (`aadeshrao123/unreal-mcp`) — https://policylayer.com/tools/aadeshrao123-unreal-mcp.md
- Homepage: https://github.com/aadeshrao123/Unreal-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": "duplicate_niagara_emitter",
    "arguments": {}
  }
}
```

## Why duplicate_niagara_emitter is rated Medium

This tool creates a new emitter by duplicating an existing one, modifying the Niagara System structure. This is a Write operation because it adds/modifies data (new emitter instance) reversibly. The action can be undone in the editor. Severity is medium because misuse could clutter the project with unwanted emitters or waste resources, but effects are non-destructive and can be easily reverted. Confidence is high (0.

From the tool's own definition: "'Duplicate an emitter within a Niagara System' — creates a copy of an existing emitter, a reversible modification to the VFX system state."

## Use case

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

## Recommended policy (PolicyLayer)

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

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

## Other tools on Unreal-MCP (285)

- `cleanup_material_function` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/cleanup-material-function.md
- `cleanup_material_graph` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/cleanup-material-graph.md
- `clear_niagara_module_input` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/clear-niagara-module-input.md
- `delete_actor` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/delete-actor.md
- `delete_asset` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/delete-asset.md
- `delete_blueprint_function` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/delete-blueprint-function.md
- `delete_blueprint_node` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/delete-blueprint-node.md
- `delete_data_table_row` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/delete-data-table-row.md
- `delete_material_expression` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/delete-material-expression.md
- `delete_niagara_graph_node` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/delete-niagara-graph-node.md
- `delete_niagara_scratch_pad_module` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/delete-niagara-scratch-pad-module.md
- `delete_niagara_system` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/delete-niagara-system.md
- `remove_input_action_modifier` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-input-action-modifier.md
- `remove_input_action_trigger` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-input-action-trigger.md
- `remove_key_mapping` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-key-mapping.md
- `remove_mapping_modifier` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-mapping-modifier.md
- `remove_mapping_trigger` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-mapping-trigger.md
- `remove_mass_config_trait` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-mass-config-trait.md
- `remove_niagara_custom_hlsl_pin` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-niagara-custom-hlsl-pin.md
- `remove_niagara_emitter` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-niagara-emitter.md
- `remove_niagara_module` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-niagara-module.md
- `remove_niagara_node_pin` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-niagara-node-pin.md
- `remove_niagara_renderer` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-niagara-renderer.md
- `remove_niagara_script_parameter` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-niagara-script-parameter.md
- `remove_niagara_user_parameter` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-niagara-user-parameter.md
- `remove_statetree_binding` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-statetree-binding.md
- `remove_statetree_node` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-statetree-node.md
- `remove_statetree_parameter` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-statetree-parameter.md
- `remove_statetree_state` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-statetree-state.md
- `remove_statetree_transition` — Destructive — https://policylayer.com/tools/aadeshrao123-unreal-mcp/remove-statetree-transition.md
- …and 255 more: https://policylayer.com/tools/aadeshrao123-unreal-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=aadeshrao123-unreal-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/aadeshrao123-unreal-mcp
