# qt_active_popup

Check for active popup or modal dialog widgets.

Agent View of the PolicyLayer registry record for `qt_active_popup`. HTML page: https://policylayer.com/tools/0xcarbon-qt-mcp/qt-active-popup

## Facts

- Tool: `qt_active_popup`
- Server: Qt (`0xcarbon/qt-mcp`) — https://policylayer.com/tools/0xcarbon-qt-mcp.md
- Homepage: https://github.com/0xCarbon/qt-mcp
- Risk category: Read (Low risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Allowed

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "qt_active_popup",
    "arguments": {}
  }
}
```

## Why qt_active_popup is rated Low

This tool queries the current state of UI widgets to determine if a popup or modal dialog is active. It is a read-only operation with no side effects, no code execution, and no data modification. The only potential risk is information disclosure about UI state, which is minimal in the context of debugging a PySide6 application that an AI agent already has access to interact with.

From the tool's own definition: "Tool name 'qt_active_popup' and description 'Check for active popup or modal dialog widgets' indicate a query operation that retrieves state information about UI elements without modifying or triggering any actions."

## Use case

AI agents call qt_active_popup to retrieve information from Qt without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

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

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "qt_active_popup": {}
  }
}
```

## 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_invoke_slot` — Execute — https://policylayer.com/tools/0xcarbon-qt-mcp/qt-invoke-slot.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_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
