MCP Server Tauri

Inspect, drive and debug a running Tauri v2 app's webview, windows and IPC from an AI assistant

By hypothesi TypeScript Local · stdio Developer toolsTesting

69 popularity score ★ 334 ↓ 11k/wk

Connect your client

Local (npm)

Add in one click

Opens the app, which asks before it adds the server.

Or add it by command or config

Claude CodeTerminal
claude mcp add tauri -- npx -y @hypothesi/tauri-mcp-server
Claude Desktopclaude_desktop_config.json
{
  "mcpServers": {
    "tauri": {
      "command": "npx",
      "args": [
        "-y",
        "@hypothesi/tauri-mcp-server"
      ]
    }
  }
}
Cursor~/.cursor/mcp.json
{
  "mcpServers": {
    "tauri": {
      "command": "npx",
      "args": [
        "-y",
        "@hypothesi/tauri-mcp-server"
      ]
    }
  }
}
VS Code.vscode/mcp.json
{
  "servers": {
    "tauri": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@hypothesi/tauri-mcp-server"
      ]
    }
  }
}
Codex~/.codex/config.toml
[mcp_servers.tauri]
command = "npx"
args = ["-y", "@hypothesi/tauri-mcp-server"]
Gemini CLITerminal
gemini mcp add --scope user tauri npx -- -y @hypothesi/tauri-mcp-server

Settings 3

MCP_BRIDGE_HOST Optional: Host of the app's bridge plugin; falls back to TAURI_DEV_HOST, then localhost.
MCP_BRIDGE_PORT Optional: WebSocket port of the bridge plugin; 9223 by default.
MCP_BRIDGE_CWD Optional: Directory used to route calls to the right app when several are connected; defaults to the server's working directory.

What it does

MCP Server Tauri connects an AI assistant to a Tauri v2 application while it runs in development. The server is a Node.js process that talks over stdio to the client and over a WebSocket (port 9223 by default) to a companion Rust plugin, tauri-plugin-mcp-bridge, which you add to the app. Without that plugin in the app, only the setup and device-listing tools do anything.

Once a session is open, the assistant can take screenshots of the webview, query elements by CSS, XPath or text, read an accessibility-tree snapshot, click, scroll, type, wait for elements or events, run JavaScript inside the page, and list, resize, focus or minimise windows. On the Rust side it can call the app's IPC commands, emit Tauri events, record IPC traffic between frontend and backend, and read app metadata. It can also read console, Android logcat, iOS simulator and desktop system logs, and list connected Android devices and booted iOS simulators. Several apps can be connected at once, each on its own port. It also ships three prompts: /setup, /fix-webview-errors and /select.

The README counts 21 tools and lists webview_get_styles, but the tool registry at v0.13.1 (tools-registry.ts) registers 19; computed styles are returned through webview_find_element instead. The authors note the project was written with agentic coding tools and may contain bugs. It is a community project and not affiliated with the Tauri Programme.

What it needs

RuntimeNode.js 20+

Node.js 20 or later with npx. A Tauri v2 app you can rebuild, with the Rust crate tauri-plugin-mcp-bridge added (cargo add tauri-plugin-mcp-bridge), the plugin registered, withGlobalTauri set to true in tauri.conf.json and the mcp-bridge:default permission added to its capabilities. The plugin at this version needs Tauri 2.12.2 or a later 2.12 patch and Rust 1.90+. The app must be running (for example cargo tauri dev). For mobile work: Xcode on macOS or the Android SDK.

Limits

Works only with Tauri v2 apps that include the MCP Bridge plugin; it does not drive Electron apps or ordinary browsers. Screenshots capture only the visible viewport. The focus, minimize and maximize window actions need tauri-plugin-mcp-bridge 0.13.0 or later and return a version error on older plugins. Console logs need an active driver_session. The README's tool count (21) and its webview_get_styles entry do not match the 19 tools registered in v0.13.1. The authors warn it may contain bugs.

Who it suits

Suits Tauri v2 developers who want an assistant to look at and operate their app during development, check UI changes with screenshots and DOM snapshots, or debug the IPC layer between the frontend and Rust backend, on desktop or on iOS and Android emulators. It runs locally and needs no account, but it does need a change to the app's code (the bridge plugin), so it is not for inspecting a Tauri app you cannot rebuild. For web pages in a normal browser or for Electron apps it is the wrong tool; its own tool descriptions point to Chrome DevTools MCP for browser work.

Tools 19

get_setup_instructions
Returns the steps for adding or updating the MCP Bridge plugin in a Tauri project
list_devices
Lists Android emulators and devices and booted iOS simulators
driver_session
Starts, stops or reports the WebSocket session with one or more running Tauri apps
webview_find_element
Finds elements by CSS, XPath or text and returns geometry, text, attributes and optional computed styles
read_logs
Reads webview console, Android logcat, iOS simulator or desktop system logs
webview_interact
Clicks, scrolls, swipes, focuses or long-presses elements in the webview
webview_screenshot
Captures the visible webview as an image or saves it to a file
webview_keyboard
Types text or sends key events to the webview
webview_wait_for
Waits until an element, text or IPC event appears
webview_execute_js
Runs JavaScript in the webview, with access to window.__TAURI__
webview_dom_snapshot
Returns a structured accessibility-tree snapshot of the page
webview_select_element
Shows a picker so the user clicks an element; returns its metadata and an annotated screenshot
webview_get_pointed_element
Returns metadata for the element the user last Alt+Shift+clicked
ipc_execute_command
Invokes a Tauri IPC command, calling the app's Rust backend
ipc_monitor
Starts or stops recording of IPC calls between frontend and backend
ipc_get_captured
Returns recorded IPC commands and events with arguments and responses
ipc_emit_event
Emits a Tauri event to exercise the app's event handlers
ipc_get_backend_state
Reports app metadata, Tauri version and environment
manage_window
Lists windows, shows window details, or resizes, focuses, minimizes or maximizes a window

Similar servers