Uindow — Claude Code MCP server: real browser automation
A local MCP server that lets an AI agent drive a real signed Chromium/Electron browser with OS-level input.
claude mcp add uindow -- npx -y @uindow/cliWhat Uindow does
Uindow runs a signed Chromium/Electron browser and feeds it input at the operating-system level. The cursor actually moves, keys actually get pressed, file dialogs are native rather than synthetic page events. Everything stays on your machine and your network, and the code sits in the open repository.
The MCP server speaks stdio and the assistant launches it on demand. You need Node.js 18+ with npx on your PATH. Miss that and the server never comes up: GUI apps often throw spawn npx ENOENT because a desktop process does not inherit your shell PATH. Anyone on nvm, asdf or Volta hits this. Put the absolute path to npx in the command field.
Automations come in three flavours: no code in the built-in editor, from any MCP-compatible client, or written in plain JavaScript with completion and linting. Using the app requires a free account at uindow.com. The AI assistants section offers one-click connect, yet most desktop clients only reload MCP config on a full restart — quitting the window is not enough. Another common slip: the entry lands in a project-local config, so the server shows up in one folder only. In Claude, re-adding it with --scope user fixes that.
What it helps with
- run a site workflow with real cursor movement and typing
- build an automation in the editor without writing code
- record a complex workflow and replay it later
- trigger browser automation straight from an AI assistant
- write and debug an automation module in JavaScript
Example prompts for the agent
- List my Uindow automation modules
- Create a module that opens the site and fills the login form
- Run the
checkout-flowmodule and show me the result
How to install Uindow
Platform CLI
claude mcp add uindow -- npx -y @uindow/cliPlatform CLI
codex mcp add uindow -- npx -y @uindow/cliConfig file
{
"mcpServers": {
"uindow": {
"command": "npx",
"args": [
"-y",
"@uindow/cli"
]
}
}
}Config file
{
"servers": {
"uindow": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@uindow/cli"
]
}
}
}Platform CLI
gemini mcp add uindow npx -y @uindow/cliStep by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about Uindow
How do I install Uindow in Claude Code?
Run claude mcp add uindow -- npx -y @uindow/cli. The assistant then starts the server over stdio when it needs it.
What does Uindow do?
It drives a real signed Chromium/Electron browser using OS-level input: actual cursor motion, actual keystrokes, native file dialogs. Through MCP an agent can list, create and run automation modules.
Why does the server only appear in one project?
The entry went into a project-local config. In Claude, run claude mcp list from another directory and add the server again with --scope user.