home / mcp / remote macos use mcp server
The only general AI agent that does NOT requires extra API key, giving you full control on your local and remote MacOs from Claude Desktop App
Configuration
View docs{
"mcpServers": {
"baryhuang-mcp-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"
],
"env": {
"MACOS_HOST": "your_macos_hostname_or_ip",
"MACOS_PASSWORD": "your_macos_password",
"MACOS_USERNAME": "your_macos_username"
}
}
}
}You can control a remote macOS machine through a dedicated MCP server that runs via Docker. This setup lets you perform screen sharing, send keystrokes, move the mouse, open apps, and perform drag-and-drop operations from an MCP client with minimal local footprint and no extra backend software on the target Mac.
Connect your MCP client to the remote macOS server using the configured MCP entry. You will interact with the remote desktop by issuing high-level actions through the MCP client, such as capturing screenshots, sending keyboard input, moving the mouse, clicking, scrolling, launching applications, and performing drag-and-drop operations. All actions are mapped to the corresponding remote macOS controls and executed through the Docker-based MCP server instance.
Prerequisites: you need Docker Desktop installed on your local Mac. If you rent a macOS machine from a hosted provider, you can skip the initial screen-sharing setup on the target.
Step 1: Enable Screen Sharing on the target Mac (if not already enabled). Step 2: Ensure you can connect to the remote Mac from your local machine. Step 3: Install Docker Desktop on your local Mac.
Step 4: Add the MCP server configuration to your MCP client. Use the following configuration snippet in your client setup to run the MCP server via Docker.
{
"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"
]
}
}
}WebRTC support is available via LiveKit integration for low-latency real-time screen sharing. To use WebRTC features, you should set up a LiveKit server or use LiveKit Cloud and configure the environment variables accordingly.
Security note: Use secure, authenticated connections when accessing remote macOS machines. Only access servers you own or have explicit permission to control.
Limitations include authentication support only for Apple Authentication (protocol 30). Always use secure connections and operate within permitted environments.
This MCP server exposes a set of tools to interact with a remote macOS machine. Each tool uses the environment variables configured during setup for connection details.
The server is designed for straightforward deployment with no background agents required on the target Mac. It leverages screen sharing as the primary mechanism for remote control and can be adapted to multiple macOS versions.
Connects to the remote Mac and retrieves a screenshot of the remote desktop.
Sends keyboard input to the remote Mac for typing or command entry.
Moves the mouse cursor on the remote Mac with coordinate scaling.
Performs a mouse click at specified coordinates on the remote Mac.
Performs a double-click at specified coordinates on the remote Mac.
Scrolls the remote Mac screen at given coordinates.
Opens or activates an application on the remote Mac and returns its PID.
Drags an item from a start point to an end point on the remote Mac.