VNC
Remotely control any system running a VNC server, including Windows, Linux, and macOS, through an AI agent.
π» mcp-vnc
A Model Context Protocol (MCP) server that enables AI agents to remotely control Windows, Linux, macOS or anything else that can run a VNC server (don't worry, it's probably fine).

π Quick Start
Install from NPM
npm install -g @hrrrsn/mcp-vnc
Install from Source
git clone https://github.com/hrrrsn/mcp-vnc
cd mcp-vnc
npm install
npm run build
βοΈ Configuration
Claude Desktop
-
Locate and open your Claude Desktop configuration file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
Add the following configuration:
Using NPM Install:
{
"mcpServers": {
"vnc-controller": {
"type": "stdio",
"command": "mcp-vnc",
"env": {
"VNC_HOST": "192.168.1.100",
"VNC_PORT": "5900",
"VNC_PASSWORD": "your-vnc-password"
}
}
}
}
Built from Source:
{
"mcpServers": {
"vnc-controller": {
"type": "stdio",
"command": "node",
"args": ["dist/index.js"],
"cwd": "/path/to/mcp-vnc",
"env": {
"VNC_HOST": "192.168.1.100",
"VNC_PORT": "5900",
"VNC_PASSWORD": "your-vnc-password"
}
}
}
}
VS Code
Please refer to the VS Code documentation
π οΈ Available Tools
The MCP server provides the following tools for remote desktop control:
π±οΈ Mouse Control
vnc_click - Click at specified coordinates
| Parameter | Required | Type | Description | Default |
|---|---|---|---|---|
x | β | number | X coordinate | - |
y | β | number | Y coordinate | - |
button | β | string | Mouse button (left, right, middle) | left |
double | β | boolean | Double-click instead of single click | false |
Example: vnc_click(x=100, y=200, button="right", double=true)
vnc_move_mouse - Move mouse cursor
| Parameter | Required | Type | Description |
|---|---|---|---|
x | β | number | X coordinate |
y | β | number | Y coordinate |
Example: vnc_move_mouse(x=500, y=300)
β¨οΈ Keyboard Control
vnc_key_press - Send keys and key combinations
| Parameter | Required | Type | Description |
|---|---|---|---|
key | β | string | Key or key combination to press |
Supported Keys:
- Single keys:
a,Enter,F1,Escape,Up,Down,Tab,Space - Key combinations:
Ctrl+c,Alt+F4,Ctrl+Alt+Delete,Shift+Tab - Modifiers:
Ctrl,Alt,Shift,Super/Win,Meta/Cmd
Examples:
vnc_key_press(key="Enter")vnc_key_press(key="Ctrl+Alt+Delete")
π Text Input
vnc_type_text - Type single-line text
| Parameter | Required | Type | Description | Default |
|---|---|---|---|---|
text | β | string | Text to type | - |
enter | β | boolean | Press Enter after typing | false |
Example: vnc_type_text(text="Hello World!", enter=true)
vnc_type_multiline - Type multiple lines
| Parameter | Required | Type | Description |
|---|---|---|---|
lines | β | string[] | Array of lines to type |
Example: vnc_type_multiline(lines=["Line 1", "Line 2", "Line 3"])
πΈ Screen Capture
vnc_screenshot - Capture screen
| Parameter | Required | Type | Description | Default |
|---|---|---|---|---|
delay | β | number | Delay before screenshot (0-300000ms) | 0 |
Example: vnc_screenshot(delay=1000) - Wait 1 second before capture
π€ Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
π License
This project is licensed under the MIT License - see the LICENSE file for details.
Related Servers
Kone.vc
sponsorMonetize your AI agent with contextual product recommendations
Obsidian via REST
Access and manage your Obsidian vault through a local REST API.
PDF2MD.node (mcp-node.io)
Privacy-first PDF to Markdown/JSON converter for AI Agents. Optimized for complex B2B invoices (E-Fatura) and tables. Features native Turkish character correction and local-first WASM parsing.
Omnispindle
A todo management system designed for coordinating tasks across multiple projects, utilizing MongoDB and MQTT.
TrackMage
Shipment tracking api and logistics management capabilities through the TrackMage API
ResumeTailor
Automatically tailors resumes for specific job applications using LibreOffice.
Context Savvy MCP
Transforms Claude Desktop into a memory-enabled AI assistant with persistent context, secure command execution, and intelligent workflow automation.
PaKi Curator
MCP server for CΓ©sar YagΓΌe's Visual Medicine art catalog β 300 contemplative moving art works, 13 collections. Search, browse, get recommendations for spaces.
MindmupGoogleDriveMcp
This server enables you to search, retrieve, and parse MindMup files stored in your Google Drive directly through the MCP interface.
HireBase
Interact with the HireBase Job API to manage job listings and applications.
Out to Lunch
Daily world briefing that tells AI assistants what's actually happening right now. Leaders, conflicts, deaths, economic data, holidays. Updated daily so they stop getting current events wrong.