Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"vnc-controller": {
"env": {
"VNC_HOST": "192.168.1.100",
"VNC_PORT": "5900",
"VNC_PASSWORD": "your-vnc-password"
},
"type": "stdio",
"command": "mcp-vnc"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
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).
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
npx -y '@hrrrsn/mcp-vnc' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked @hrrrsn/mcp-vnc against OSV.dev.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in other
MCP server for Spanning Cloud Backup — M365/GWS/Salesforce backups, restores, audit.
AI agent control of 3D printers — 432 tools for OctoPrint, Moonraker, Bambu, Prusa, Elegoo
MCP server for Kaseya Autotask PSA — companies, tickets, projects, time entries, and more.
On-chain provenance lookup for AnchorRegistry. Resolve AR-IDs, hashes, and full trees. Authless.
MCP Security Weekly
Get CVE alerts and security updates for Mcp Vnc and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
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).

npm install -g @hrrrsn/mcp-vnc
git clone https://github.com/hrrrsn/mcp-vnc
cd mcp-vnc
npm install
npm run build
Locate and open your Claude Desktop configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json~/.config/Claude/claude_desktop_config.jsonAdd 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"
}
}
}
}
Please refer to the VS Code documentation
The MCP server provides the following tools for remote desktop control:
| 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)
| Parameter | Required | Type | Description |
|---|---|---|---|
x | ✅ | number | X coordinate |
y | ✅ | number | Y coordinate |
Example: vnc_move_mouse(x=500, y=300)
| Parameter | Required | Type | Description |
|---|---|---|---|
key | ✅ | string | Key or key combination to press |
Supported Keys:
a, Enter, F1, Escape, Up, Down, Tab, SpaceCtrl+c, Alt+F4, Ctrl+Alt+Delete, Shift+TabCtrl, Alt, Shift, Super/Win, Meta/CmdExamples:
vnc_key_press(key="Enter")vnc_key_press(key="Ctrl+Alt+Delete")| 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)
| Parameter | Required | Type | Description |
|---|---|---|---|
lines | ✅ |