@mokoconsulting/mcp-mokowindows
v3.11.0
Published
MCP server for Windows desktop system operations
Readme
mcp-mokowindows
A Model Context Protocol (MCP) server that lets AI assistants like Claude operate a Windows desktop -- audio, display, processes, services, power, network, registry, storage, WSL, winget, plus window capture and full Chrome browser automation. 80+ tools, each backed by Win32 APIs or PowerShell, exposed through the standard MCP tool interface.
Highlights
- Windows system control -- audio devices and per-app volume, displays, processes and services, power, network, firewall, registry, environment, scheduled tasks, storage, and more.
- Occlusion-tolerant window capture (
windows_window_capture) -- screenshot a single application or browser window via the Win32PrintWindowAPI, even when it is minimized, occluded, on another monitor, or on another virtual desktop. - Chrome browser automation & testing (
windows_chrome_control) -- launch and drive a dedicated, isolated Chrome over the DevTools Protocol: navigate, click, type, run JS, and screenshot -- built for testing dev apps. Includes responsive/mobile viewport emulation (Bootstrap breakpoints + device presets), selectable Chrome profiles, and one-time Google OAuth sign-in. - Zero heavy dependencies -- only
@modelcontextprotocol/sdkandzod; CDP uses Node's built-infetchand globalWebSocket.
Install
npm install -g @mokoconsulting/mcp-mokowindowsRequires Node.js 20+ on Windows (uses Win32 APIs and PowerShell). Google Chrome is needed only for the windows_chrome_control tool.
Register with Claude Code
claude mcp add -s user mokowindows -- mcp-windowsOr add it to your MCP config (~/.claude.json or a project .mcp.json):
{
"mcpServers": {
"mokowindows": {
"type": "stdio",
"command": "mcp-windows"
}
}
}Restart Claude Code so it loads the server at startup.
Tool categories
| Area | Examples |
|---|---|
| Core | windows_execute, windows_system_info, windows_terminal_* |
| Files | windows_file_read/write/edit, windows_search, windows_drives |
| Processes & services | windows_process_list/kill, windows_service_list/control |
| Audio & display | windows_audio_*, windows_display_*, windows_theme_* |
| Power & network | windows_power_*, windows_network_*, windows_wifi_*, windows_firewall_* |
| System admin | windows_registry_*, windows_env_*, windows_task_scheduler_*, windows_startup_* |
| Packages & WSL | windows_winget_*, windows_wsl_* |
| Capture & browser | windows_window_capture, windows_chrome_control |
See the Wiki for the full tool reference.
Browser automation for testing
windows_chrome_control runs a dedicated Chrome (its own profile, separate from your everyday browser) and is aimed at testing web apps:
action: launch | status | open | navigate | reload | back | forward |
wait | wait_for_selector | scroll | screenshot | get_text | eval |
click | type | insert | press | close_tab | quit | google_login- Responsive screenshots --
screenshotaccepts apreset(xs/sm/md/lg/xl/xxlBootstrap breakpoints, or device presetsiphone-se/iphone-14/pixel-7/galaxy-s22/ipad/ipad-pro) or explicitwidth/height/mobile/device_scale_factor. Captures mobile layouts at true device resolution. - Reliable when hidden -- captures work even if the window is minimized, occluded, or unfocused.
- Profiles --
profileanduser_data_dirparams, or set a machine default withwindows_mcp_config(chromeProfile,chromeUserDataDir) so every launch uses it. - Google OAuth --
action:"google_login"signs into Google once in a persistent profile so "Sign in with Google" flows work on later runs (passkeys and Windows Hello supported since it is real headful Chrome).
Configuration
Config lives at ~/.mcp_windows.json and is managed with windows_mcp_config:
| Key | Purpose |
|---|---|
| chromeProfile | Default Chrome profile (--profile-directory) for windows_chrome_control |
| chromeUserDataDir | Default Chrome profile store (--user-data-dir) |
| blockedCommands | Commands refused by windows_execute |
| allowedDirectories | Filesystem access allow-list |
| outputLineLimit, commandTimeout | Output and timeout limits |
Installation
Published to npm as @mokoconsulting/mcp-mokowindows. Requires Node.js 20+ on Windows.
npm install -g @mokoconsulting/mcp-mokowindowsOr run without a global install:
npx @mokoconsulting/mcp-mokowindowsSee Install above and the Installation guide for prerequisites (Google Chrome is only needed for the windows_chrome_control tool).
Usage
Register the server with Claude Code and it exposes 80+ Windows system tools to the agent:
claude mcp add -s user mokowindows -- mcp-windowsOr add it to your MCP config (~/.claude.json or a project .mcp.json) as shown in Register with Claude Code. Restart the client so it loads the server at startup. Once connected, the agent can control audio, displays, processes, services, power, network, registry, storage, WSL, and winget, capture individual windows, and drive an isolated Chrome for browser testing. See Tool categories and the Wiki for the full tool reference.
Documentation
Full tool reference and guides are on the Wiki:
- Home -- tool inventory by category
- Installation
- Configuration
Contributing
Contributions are welcome. See CONTRIBUTING.md and follow the MokoStandards.
License
Licensed under the GNU General Public License v3.0 or later -- see LICENSE.
