PySide6 MCP — MCP-сервер для Claude Code: управление GUI
Даёт агенту доступ к окну PySide6-приложения: скриншоты, дерево виджетов, клики и ввод текста. Исходники приложения менять не нужно.
claude mcp add pyside6-mcp -- uvx pyside6-mcpЧто делает PySide6 MCP
Сервер работает по схеме: ассистент вызывает инструменты MCP, те идут в локальный HTTP-мост на временном порту, а мост уже общается с запущенным приложением. Через launch_app(cwd=…) агент сам стартует программу и ждёт, пока появится видимое окно и интерфейс успокоится. Мост подключается изолированным PYTHONPATH, поэтому зависимости сервера в окружение проекта не попадают.
Инструментов много: screenshot, get_widget_tree, find_widget, click, type_text, press_key, get_logs, get_app_state, stop_app. Виджеты ищутся по классу, objectName или тексту, а get_widget_info показывает свойства одного элемента. Есть и запуск Python прямо в процессе приложения — для случаев, когда обычного осмотра мало.
Нужны Python 3.11+, PySide6 6.6+ и uv в PATH. Без uv сервер не стартует, потому что запуск идёт через uvx. Тестировали на Windows, Linux и macOS должны работать. Если приложение уже запущено вручную, мост слушает http://127.0.0.1:7890, порт меняется переменной PYSIDE6_MCP_PORT.
Какие задачи решает
- снять скриншот окна или отдельного виджета
- разобрать дерево виджетов с классами и геометрией
- найти элемент по
objectNameили тексту - заполнить форму и отправить её кликом
- прочитать логи приложения из процесса
Примеры запросов агенту
- Запусти приложение из
backend/gui.pyи сделай скриншот главного окна - Почему чекбокс неактивен? Посмотри его состояние через
get_widget_info - Покажи последние 20 строк логов приложения
Как установить PySide6 MCP
Командой платформы
claude mcp add pyside6-mcp -- uvx pyside6-mcpuvx запускает команду с именем пакета; если в README она другая — uvx --from pyside6-mcp <команда>
Командой платформы
codex mcp add pyside6-mcp -- uvx pyside6-mcpuvx запускает команду с именем пакета; если в README она другая — uvx --from pyside6-mcp <команда>
Файл настроек
{
"mcpServers": {
"pyside6-mcp": {
"command": "uvx",
"args": [
"pyside6-mcp"
]
}
}
}uvx запускает команду с именем пакета; если в README она другая — uvx --from pyside6-mcp <команда>
Файл настроек
{
"servers": {
"pyside6-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"pyside6-mcp"
]
}
}
}uvx запускает команду с именем пакета; если в README она другая — uvx --from pyside6-mcp <команда>
Командой платформы
gemini mcp add pyside6-mcp uvx pyside6-mcpuvx запускает команду с именем пакета; если в README она другая — uvx --from pyside6-mcp <команда>
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о PySide6 MCP
Как установить PySide6 MCP в Claude Code?
Одной командой: claude mcp add pyside6-mcp -- uvx pyside6-mcp. Она прописывает stdio-сервер в пользовательскую конфигурацию.
Что делает PySide6 MCP?
Позволяет ассистенту видеть и трогать интерфейс PySide6-приложения: скриншоты, дерево виджетов, клики, ввод текста, чтение логов. Исходный код проекта при этом не правится.
Нужно ли добавлять пакет в проект?
Нет. launch_app подкидывает модули моста через отдельный PYTHONPATH, и в pyproject.toml ничего не появляется. Пакет добавляют в проект только для постоянного моста через install_bridge().