MCP Desktop Tools
An MCP server that gives Claude desktop automation capabilities — browser control, screenshots, mouse/keyboard input, window management, and clipboard access.
Built with TypeScript, Playwright, and native Windows APIs.
Tools
Browser
| Tool | Description |
|---|---|
browser_open | Launch Chromium and navigate to a URL |
browser_navigate | Navigate to a URL with configurable wait conditions |
browser_click | Click elements by CSS selector |
browser_type | Type into input fields, optionally clear or press Enter |
browser_read | Read page content (text, HTML, title, URL, or specific elements) |
browser_screenshot | Capture viewport or full-page screenshots |
browser_close | Close the browser |
Screenshots
| Tool | Description |
|---|---|
screenshot_fullscreen | Capture entire screen (multi-monitor supported) |
screenshot_region | Capture a rectangular region by coordinates |
screenshot_window | Capture a specific window by title (partial match) |
Desktop
| Tool | Description |
|---|---|
desktop_mouse_click | Click at screen coordinates |
desktop_mouse_move | Move cursor (instant or smooth animation) |
desktop_keyboard_type | Type text via simulated keystrokes |
desktop_keyboard_hotkey | Press keyboard shortcuts (e.g. ctrl+c, alt+tab) |
desktop_window_list | List all visible windows with positions and sizes |
desktop_window_focus | Focus a window by title |
desktop_window_resize | Move and/or resize a window |
desktop_app_launch | Launch apps by path, name, or URI |
desktop_clipboard_read | Read clipboard text |
desktop_clipboard_write | Write text to clipboard |
Setup
npm install
npm run build
npx playwright install chromium
Claude Code Configuration
Add to your Claude Code MCP settings (~/.claude/settings.json):
{
"mcpServers": {
"desktop-tools": {
"command": "node",
"args": ["C:/Users/<you>/mcp-desktop-tools/dist/index.js"]
}
}
}
Restart Claude Code to pick up the new server.
Requirements
- Windows 10/11
- Node.js 18+
- PowerShell (used for native window/mouse/keyboard operations)
License
MIT