MCP server and in-app bridge for inspecting and controlling PyQt5/PyQt6 applications
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"pyqt-runtime-mcp","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# PyQt Runtime MCP Runtime inspection and interaction for **PyQt5 and PyQt6 QWidget applications**, in the same spirit as browser DevTools / Playwright — but Qt-native. Cursor talks to an MCP stdio server. That server talks over localhost TCP to a small **bridge running inside the target app**. All `QWidget` work happens on the Qt GUI thread. ## Installation ```powershell pip install pyqt-runtime-mcp ``` From this folder (development): ```powershell pip install -e . ``` The in-app bridge uses the host's **PyQt5 or PyQt6** binding. The MCP process pulls in the `mcp` SDK and does **not** import or require Qt. Optional extras: `pip install "pyqt-runtime-mcp[qt]"` for PyQt5 or `pip install "pyqt-runtime-mcp[qt6]"` for PyQt6. The bridge detects an already imported host binding. For standalone examples when both are installed, set `PYQT_MCP_QT_API=PyQt5` or `PyQt6`. Loading both bindings into one process is rejected. Import the host binding before importing `PyQtMCPBridge` directly; the `install_pyqt_mcp` function can be imported earlier. Integrate the in-app bridge as shown below, then configure the `pyqt-runtime` MCP server in your editor or agent client. ## Quick start 1. Run a bridge-enabled PyQt application, or start the included demo with `python examples/demo_app.py`. The in-app bridge listens on `127.0.0.1:8765`. 2. Point Cursor at the MCP server (see [Cursor configuration](#cursor-configuration)). Reload MCP servers if you just added it. 3. Ask: ```text Inspect the current PyQt application and give me its widget hierarchy. ``` Run the included demo from this folder with PyQt5 installed: ```powershell python examples/demo_app.py ``` ## Integration into an existing PyQt application ```python from PyQt5.QtWidgets import QApplication from pyqt_runtime_mcp import install_pyqt_mcp app = QApplication(sys.argv) window = MainWindow() install_pyqt_mcp(app) window.show() sys.exit(app.exec_()) ``` …
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.