About Tkinter MCP Server
Tkinter MCP Server is an MCP server published by tctibbs in the Developer Tools category: a Model Context Protocol (MCP) server that enables AI agents (like Claude) to view, introspect, and control Tkinter GUIs. Features widget-tree extraction and window-specific screenshots.
The repository has 1 stars and 0 forks, with the last commit 9 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/tctibbs/tkinter-mcp-serverThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (16)
click_widgetClick a widget (left/right/middle, single/double)
Parameters not published.
close_appTerminate the application
Parameters not published.
drag_widgetDrag and drop between two widgets
Parameters not published.
focus_widgetSet keyboard focus to a widget
Parameters not published.
get_focused_widgetGet the currently focused widget
Parameters not published.
get_ui_layoutGet the widget tree as structured JSON
Parameters not published.
get_widget_by_textFind a widget by its text content
Parameters not published.
get_widget_optionsGet options for Combobox or Listbox
Parameters not published.
get_widget_valueGet widget value (Entry, Text, Scale, Checkbox, etc.)
Parameters not published.
get_window_infoGet window position and dimensions
Parameters not published.
Show all 16 tools
is_connectedCheck if an app is currently connected
Parameters not published.
launch_appStart a Tkinter app with inspection enabled
Parameters not published.
set_widget_valueSet widget value based on widget type
Parameters not published.
type_textType text into Entry or Text widgets
Parameters not published.
view_applicationCapture a high-quality JPEG screenshot
Parameters not published.
view_application_thumbnailCapture a small thumbnail screenshot
Parameters not published.
Ask AI
Ask AI about Tkinter MCP Server
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
- ✓License declaredUsable under a stated license.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
3 checks have not been run yet.
Releases
README
tkinter-mcp
MCP server for inspecting and automating Tkinter GUI applications.
Overview
An MCP server that enables AI agents to launch, inspect, and interact with Tkinter applications. The server auto-injects an inspection agent via monkey-patching. No modifications to target apps required.

Tools
| Tool | Description |
|---|---|
launch_app |
Start a Tkinter app with inspection enabled |
is_connected |
Check if an app is currently connected |
get_ui_layout |
Get the widget tree as structured JSON |
view_application |
Capture a high-quality JPEG screenshot |
view_application_thumbnail |
Capture a small thumbnail screenshot |
get_window_info |
Get window position and dimensions |
click_widget |
Click a widget (left/right/middle, single/double) |
type_text |
Type text into Entry or Text widgets |
get_widget_by_text |
Find a widget by its text content |
focus_widget |
Set keyboard focus to a widget |
get_focused_widget |
Get the currently focused widget |
get_widget_value |
Get widget value (Entry, Text, Scale, Checkbox, etc.) |
set_widget_value |
Set widget value based on widget type |
get_widget_options |
Get options for Combobox or Listbox |
drag_widget |
Drag and drop between two widgets |
close_app |
Terminate the application |
Installation
uvx (Quick Start)
claude mcp add tkinter-mcp-server -- uvx tkinter-mcp-server
Note: Apps using PIL/ImageTk may have compatibility issues with uvx. Use pip install instead.
pip (Recommended for PIL apps)
pip install tkinter-mcp-server
claude mcp add tkinter-mcp-server -- tkinter-mcp-server
Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"tkinter": {
"command": "tkinter-mcp-server"
}
}
}
For uvx: use "command": "uvx" with "args": ["tkinter-mcp-server"]
How It Works
The server launches Tkinter apps through a custom launcher that patches tkinter.Tk.__init__. This injects an agent that communicates over a local socket, enabling thread-safe inspection and control of the GUI.
flowchart LR
A[MCP Client] <--> B[MCP Server]
B <--> C[Socket]
C <--> D[Agent]
D <--> E[Tkinter App]
Requirements
- Python 3.10+
- macOS, Windows, or Linux
License
MIT
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.