AI chatbot web app for controlling macOS through MCP server
MCP Macos becomes available to MCP clients through the mcp macos mcp server. AI chatbot web app for controlling macOS through MCP server.
This project provides both: 1. MCP Server - Python-based server for remote macOS control via VNC 2. AI Chat Web App - Modern web interface for chatting with AI to control your Mac
Once connected, the assistant can call these 9 tools directly:
Prerequisites — The Prerequisites tool exposed by this serverremote_macos_get_screen — Connect to a remote macOS machine and get a screenshot of the remote desktop. Uses environment variables for connection detailsremote_macos_send_keys — Send keyboard input to a remote macOS machine. Uses environment variables for connection detailsremote_macos_mouse_move — Move the mouse cursor to specified coordinates on a remote macOS machine, with automatic coordinate scaling. Uses environment variables for connection detailsremote_macos_mouse_click — Perform a mouse click at specified coordinates on a remote macOS machine, with automatic coordinate scaling. Uses environment variables for connection detailsremote_macos_mouse_double_click — Perform a mouse double-click at specified coordinates on a remote macOS machine, with automatic coordinate scaling. Uses environment variables for connectionremote_macos_mouse_scroll — Perform a mouse scroll at specified coordinates on a remote macOS machine, with automatic coordinate scaling. Uses environment variables for connection detailsremote_macos_open_application — Opens/activates an application and returns its PID for further interactionsremote_macos_mouse_drag_n_drop — Perform a mouse drag operation from start point and drop to end point on a remote macOS machine, with automatic coordinate scalingSetup follows the standard MCP pattern: clone or install the server, then register it in your client's configuration file and restart the client. The configuration snippets on this page cover Claude Desktop, Claude Code and Cursor.
Before the server will start you need to supply 2 environment variables: MACOS_HOST, OPENAI_API_KEY. Keep credentials in your client's env block or a secrets manager rather than committing them.
Browser automation servers are the ones people reach for when a site has no API — the assistant drives a real page instead of guessing at endpoints. MCP Macos sits in that group, and the shape of its toolset — Prerequisites, remote_macos_get_screen, remote_macos_send_keys among others — tells you what it is really for. Worth comparing against the other browser automation servers in this directory before you commit to one, since several overlap in scope but differ sharply in setup cost and permissions.
| Tool | What it does |
|---|---|
| Prerequisites | The Prerequisites tool exposed by this server. |
| remote_macos_get_screen | Connect to a remote macOS machine and get a screenshot of the remote desktop. Uses environment variables for connection details. |
| remote_macos_send_keys | Send keyboard input to a remote macOS machine. Uses environment variables for connection details. |
| remote_macos_mouse_move | Move the mouse cursor to specified coordinates on a remote macOS machine, with automatic coordinate scaling. Uses environment variables for connection details. |
| remote_macos_mouse_click | Perform a mouse click at specified coordinates on a remote macOS machine, with automatic coordinate scaling. Uses environment variables for connection details. |
| remote_macos_mouse_double_click | Perform a mouse double-click at specified coordinates on a remote macOS machine, with automatic coordinate scaling. Uses environment variables for connection details. |
| remote_macos_mouse_scroll | Perform a mouse scroll at specified coordinates on a remote macOS machine, with automatic coordinate scaling. Uses environment variables for connection details. |
| remote_macos_open_application | Opens/activates an application and returns its PID for further interactions. |
| remote_macos_mouse_drag_n_drop | Perform a mouse drag operation from start point and drop to end point on a remote macOS machine, with automatic coordinate scaling. |
{
"mcpServers": {
"remote-macos-use": {
"command": "docker",
"args": [
"run",
"-i",
"-e",
"MACOS_USERNAME=your_macos_username",
"-e",
"MACOS_PASSWORD=your_macos_password",
"-e",
"MACOS_HOST=your_macos_hostname_or_ip",
"--rm",
"buryhuang/mcp-remote-macos-use:latest"
]
}
}
}Configuration as documented by the project. Restart the client after saving.
| Variable | Description | Required |
|---|---|---|
| MACOS_HOST | Endpoint or connection string the server talks to. | Optional |
| OPENAI_API_KEY | Credential the server authenticates with. | Yes |
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
Industrial-strength web extraction — render, scrape, crawl and search entire sites into clean markdown.
The original Chromium automation reference server — simple, screenshot-driven browser control.
Give your coding agent the full DevTools toolbox: traces, network, console, heap snapshots and Lighthouse.
Puppeteer-powered browser control that drives pages from the accessibility tree instead of pixels.
Cloud browsers for AI agents — automation sessions that run in Browserbase's fleet, not on your machine.