# qt_invoke_slot

Invoke a slot or method on a QObject.

Agent View of the PolicyLayer registry record for `qt_invoke_slot`. HTML page: https://policylayer.com/tools/0xcarbon-qt-mcp/qt-invoke-slot

## Facts

- Tool: `qt_invoke_slot`
- Server: Qt (`0xcarbon/qt-mcp`) — https://policylayer.com/tools/0xcarbon-qt-mcp.md
- Homepage: https://github.com/0xCarbon/qt-mcp
- Risk category: Execute (High 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": "qt_invoke_slot",
    "arguments": {}
  }
}
```

## Why qt_invoke_slot is rated High

This tool enables execution of arbitrary methods/slots on Qt objects, which is a form of code execution. Unlike Read operations (qt_get_text, qt_list_windows) or reversible Write operations (qt_click, qt_key_press which simulate user input), invoking a slot directly executes pre-defined code logic whose effects cannot be easily predicted or undone without knowing the specific slot implementation.

From the tool's own definition: "The tool description states it can 'Invoke a slot or method on a QObject.' In PySide6, slots are callback mechanisms that execute arbitrary code in response to signals."

## Use case

AI agents invoke qt_invoke_slot to trigger actions in Qt. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.

## Recommended policy (PolicyLayer)

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

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "qt_invoke_slot": {
      "limits": [
        {
          "counter": "qt_invoke_slot_rate",
          "window": "minute",
          "max": 10,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Qt (23)

- `qt_batch` — Execute — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-batch.md
- `qt_click` — Execute — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-click.md
- `qt_key_press` — Execute — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-key-press.md
- `qt_trigger_action` — Execute — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-trigger-action.md
- `qt_type` — Execute — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-type.md
- `qt_wait_for` — Execute — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-wait-for.md
- `qt_active_popup` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-active-popup.md
- `qt_find_widget` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-find-widget.md
- `qt_get_text` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-get-text.md
- `qt_layout_check` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-layout-check.md
- `qt_list_windows` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-list-windows.md
- `qt_menu_items` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-menu-items.md
- `qt_messages` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-messages.md
- `qt_object_tree` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-object-tree.md
- `qt_scene_snapshot` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-scene-snapshot.md
- `qt_screenshot` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-screenshot.md
- `qt_signals` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-signals.md
- `qt_snapshot` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-snapshot.md
- `qt_thread_check` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-thread-check.md
- `qt_vtk_scene_info` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-vtk-scene-info.md
- `qt_vtk_screenshot` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-vtk-screenshot.md
- `qt_widget_details` — Read — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-widget-details.md
- `qt_set_property` — Write — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-set-property.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=0xcarbon-qt-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/0xcarbon-qt-mcp
