# verse_gen_custom

A other tool on the Uefn MCP server.

Agent View of the PolicyLayer registry record for `verse_gen_custom`. HTML page: https://policylayer.com/tools/quangdang46-uefn-verse-mcp/verse-gen-custom

## Facts

- Tool: `verse_gen_custom`
- Server: Uefn (`quangdang46/uefn-verse-mcp`) — https://policylayer.com/tools/quangdang46-uefn-verse-mcp.md
- Homepage: https://github.com/quangdang46/uefn-verse-mcp
- Risk category: Other (Low 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": "verse_gen_custom",
    "arguments": {}
  }
}
```

## Why verse_gen_custom is rated Low

The name suggests generating custom Verse code (UEFN's scripting language), which could be an Execute or Write action, but without a description we cannot confirm. Based on sibling tools and context, it likely generates or writes Verse code. Confidence is low due to empty description. Defaulting to Other with medium severity as code generation in a live editor could have meaningful impact.

From the tool's own definition: "Tool name is 'verse_gen_custom' but description is empty and uninformative."

## Use case

AI agents call verse_gen_custom as a supporting operation in Uefn workflows.

## Recommended policy (PolicyLayer)

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

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "verse_gen_custom": {
      "limits": [
        {
          "counter": "verse_gen_custom_rate",
          "window": "minute",
          "max": 60,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Uefn (142)

- `delete_actors` — Destructive — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/delete-actors.md
- `delete_asset` — Destructive — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/delete-asset.md
- `shutdown` — Destructive — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/shutdown.md
- `snapshot_restore` — Destructive — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/snapshot-restore.md
- `tag_remove` — Destructive — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/tag-remove.md
- `undo` — Destructive — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/undo.md
- `batch_exec` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/batch-exec.md
- `blueprint_compile` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/blueprint-compile.md
- `bulk_mirror` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/bulk-mirror.md
- `device_call_method` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/device-call-method.md
- `device_sim_generate_proxy` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/device-sim-generate-proxy.md
- `device_sim_trigger_method` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/device-sim-trigger-method.md
- `execute_python` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/execute-python.md
- `focus_selected` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/focus-selected.md
- `niagara_spawn_system` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/niagara-spawn-system.md
- `postprocess_spawn` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/postprocess-spawn.md
- `refresh_device_catalog` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/refresh-device-catalog.md
- `run_tool` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/run-tool.md
- `scatter_along_spline` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/scatter-along-spline.md
- `scatter_props` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/scatter-props.md
- `select_actors` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/select-actors.md
- `select_by_class` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/select-by-class.md
- `sign_spawn_bulk` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/sign-spawn-bulk.md
- `smart_spawn` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/smart-spawn.md
- `verse_build` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/verse-build.md
- `verse_template_deploy` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/verse-template-deploy.md
- `zone_spawn` — Execute — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/zone-spawn.md
- `bulk_randomize` — Other — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/bulk-randomize.md
- `pattern_circle` — Other — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/pattern-circle.md
- `pattern_grid` — Other — https://policylayer.com/tools/quangdang46-uefn-verse-mcp/pattern-grid.md
- …and 112 more: https://policylayer.com/tools/quangdang46-uefn-verse-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=quangdang46-uefn-verse-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/quangdang46-uefn-verse-mcp
