ApplicationController
Provides GUI automation capabilities (e.g., mouse, keyboard, screen control) for use with MCP-compatible clients like GitHub Copilot.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ApplicationControllertake a screenshot of my desktop"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ApplicationController
An MCP server that exposes GUI automation tools to any MCP-compatible client (e.g. GitHub Copilot desktop app). It uses PyAutoGUI to control the mouse, keyboard, and screen of the local machine.
Tools
Screenshot & observation
Tool | Description |
| Captures a full screenshot (optional |
| Captures a region by coordinates or |
| Returns the screen resolution |
| Returns current cursor position |
| Lists visible top-level windows (hwnd, title, pid, rect, isForeground) |
Mouse & keyboard
Tool | Description |
| Left/right/middle click at (x, y) or by |
| Double-click at (x, y) |
| Move cursor without clicking |
| Click and drag between two points |
| Scroll up or down at (x, y) |
| Type ASCII text (use clipboard + |
| Press a key or hotkey combination (e.g. |
UIAutomation (Tier 1 — preferred over pixel clicks)
Tool | Description |
| Dump the full control tree of a window as JSON |
| Find controls by |
| Invoke (click) a control by |
| Set TextBox/ComboBox value via ValuePattern |
| Read a control's current value |
Eventful waiting (Tier 2 — replace fixed sleeps)
Tool | Description |
| Block until a window appears or disappears |
| Block until a control becomes visible/enabled/exists |
| Block until a process finishes rendering |
Window management (Tier 3)
Tool | Description |
| Bring a window to the foreground / restore if minimised |
Quality-of-life (Tier 4)
Tool | Description |
| Launch an |
| Pause for N seconds |
| Locate a template image on screen (requires |
| Find a dialog by title and click a button to dismiss it |
| Execute multiple tool calls in one round-trip |
Related MCP server: mcp-autogui-multinode
Setup
1. Install dependencies
pip install -r requirements.txtTo enable the find_image_on_screen tool, also install OpenCV:
pip install opencv-pythonOr install everything at once via the package extras:
pip install ".[image-search]"Note:
pywinautoandpywin32are included inrequirements.txt. They enable all UIAutomation tools (ua_*), window management (list_windows,focus_window,wait_for_window), andwait_input_idle. The server starts and the basic mouse/keyboard tools work without them — those tools will return a clear error message if called when the packages are absent.
2. Add to GitHub Copilot desktop app
In your Copilot settings, add an MCP server entry pointing to this server:
{
"mcpServers": {
"application-controller": {
"command": "python",
"args": ["C:\\path\\to\\ApplicationController\\server.py"]
}
}
}Replace C:\\path\\to\\ApplicationController with the actual path where you cloned this repo.
3. Safety note
PyAutoGUI's failsafe is enabled — move your mouse to the top-left corner of the screen at any time to abort an automation sequence.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/MasterNathobi/ApplicationController'
If you have feedback or need assistance with the MCP directory API, please join our Discord server