io.github.ObscuritySRL/bun-uia MCP Server
io.github.ObscuritySRL/bun-uia
What is the io.github.ObscuritySRL/bun-uia MCP server?
Playwright for the Windows desktop, from Bun — drive native GUIs via UI Automation + MCP.
How to install io.github.ObscuritySRL/bun-uia
Copy-paste configuration for popular MCP clients.
BUN_UIA_PROFILECapability profile: 'readonly' (inspect/read only), 'safe' (read + input + window — default), or 'full' (also os + fs tools).
BUN_UIA_OSSet to '1' to allow OS-level tools (launch_app, run_program, open_path) AND filesystem tools (read_file, write_file, list_dir) regardless of profile.
BUN_UIA_ALLOWComma-separated tool names or categories to additionally allow on top of the profile.
BUN_UIA_DENYComma-separated tool names or categories to deny, overriding the profile and BUN_UIA_ALLOW.
BUN_UIA_CURSORSet to 'never' to forbid the real-cursor fallback entirely (strictly cursor-free). By default clicks/drags are cursor-free but fall back to the real hardware cursor when no cursor-free path exists.
BUN_UIA_FS_ROOTSandbox root directory that read_file/write_file/list_dir are confined to when fs tools are enabled.
{
"mcpServers": {
"bun-uia": {
"command": "bunx",
"args": [
"-y",
"bun-uia"
],
"env": {
"BUN_UIA_PROFILE": "<YOUR_BUN_UIA_PROFILE>",
"BUN_UIA_OS": "<YOUR_BUN_UIA_OS>",
"BUN_UIA_ALLOW": "<YOUR_BUN_UIA_ALLOW>",
"BUN_UIA_DENY": "<YOUR_BUN_UIA_DENY>",
"BUN_UIA_CURSOR": "<YOUR_BUN_UIA_CURSOR>",
"BUN_UIA_FS_ROOT": "<YOUR_BUN_UIA_FS_ROOT>"
}
}
}
}{
"mcpServers": {
"bun-uia": {
"command": "bunx",
"args": [
"-y",
"bun-uia"
],
"env": {
"BUN_UIA_PROFILE": "<YOUR_BUN_UIA_PROFILE>",
"BUN_UIA_OS": "<YOUR_BUN_UIA_OS>",
"BUN_UIA_ALLOW": "<YOUR_BUN_UIA_ALLOW>",
"BUN_UIA_DENY": "<YOUR_BUN_UIA_DENY>",
"BUN_UIA_CURSOR": "<YOUR_BUN_UIA_CURSOR>",
"BUN_UIA_FS_ROOT": "<YOUR_BUN_UIA_FS_ROOT>"
}
}
}
}{
"mcpServers": {
"bun-uia": {
"command": "bunx",
"args": [
"-y",
"bun-uia"
],
"env": {
"BUN_UIA_PROFILE": "<YOUR_BUN_UIA_PROFILE>",
"BUN_UIA_OS": "<YOUR_BUN_UIA_OS>",
"BUN_UIA_ALLOW": "<YOUR_BUN_UIA_ALLOW>",
"BUN_UIA_DENY": "<YOUR_BUN_UIA_DENY>",
"BUN_UIA_CURSOR": "<YOUR_BUN_UIA_CURSOR>",
"BUN_UIA_FS_ROOT": "<YOUR_BUN_UIA_FS_ROOT>"
}
}
}
}{
"servers": {
"bun-uia": {
"type": "stdio",
"command": "bunx",
"args": [
"-y",
"bun-uia"
],
"env": {
"BUN_UIA_PROFILE": "<YOUR_BUN_UIA_PROFILE>",
"BUN_UIA_OS": "<YOUR_BUN_UIA_OS>",
"BUN_UIA_ALLOW": "<YOUR_BUN_UIA_ALLOW>",
"BUN_UIA_DENY": "<YOUR_BUN_UIA_DENY>",
"BUN_UIA_CURSOR": "<YOUR_BUN_UIA_CURSOR>",
"BUN_UIA_FS_ROOT": "<YOUR_BUN_UIA_FS_ROOT>"
}
}
}
}claude mcp add bun-uia --env BUN_UIA_PROFILE=<YOUR_BUN_UIA_PROFILE> --env BUN_UIA_OS=<YOUR_BUN_UIA_OS> --env BUN_UIA_ALLOW=<YOUR_BUN_UIA_ALLOW> --env BUN_UIA_DENY=<YOUR_BUN_UIA_DENY> --env BUN_UIA_CURSOR=<YOUR_BUN_UIA_CURSOR> --env BUN_UIA_FS_ROOT=<YOUR_BUN_UIA_FS_ROOT> -- bunx -y bun-uiaRelated MCP servers
See and drive a whole Windows machine from Bun — apps, input, screen, OCR, registry, OS — via MCP.