PluginBench
MCP Server
Active
MIT

io.github.hypothesi/mcp-server-tauri MCP Server

io.github.hypothesi/mcp-server-tauri

AI-powered UI automation and debugging for Tauri v2 applications with screenshots, DOM inspection, and IPC monitoring.

What is the io.github.hypothesi/mcp-server-tauri MCP server?

The MCP Server Tauri is a Model Context Protocol server that enables AI assistants like Claude and Cursor to build, test, and debug Tauri v2 applications. It provides UI automation, real-time IPC monitoring, DOM inspection, and console log streaming to give AI rich context about your running app's state.

This server bridges AI assistants with Tauri applications, enabling automated UI testing, element interaction, screenshot capture, and deep inspection of app behavior. It's useful for developers who want AI to help build and debug Tauri desktop and mobile apps by understanding and manipulating the UI in real-time.

How to install io.github.hypothesi/mcp-server-tauri

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "mcp-server-tauri": {
      "command": "npx",
      "args": [
        "-y",
        "@hypothesi/tauri-mcp-server"
      ]
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • driver_session — Start, stop, or check status of UI automation session
  • webview_screenshot — Capture webview screenshots
  • webview_find_element — Find elements by CSS selector
  • webview_interact — Click, scroll, swipe, focus, or long-press elements
  • webview_keyboard — Type text or send keyboard events
  • webview_wait_for — Wait for elements, text, or events to appear
  • webview_get_styles — Get computed CSS styles for elements
  • webview_execute_js — Execute JavaScript code in the webview
  • webview_dom_snapshot — Get structured accessibility tree snapshot of the DOM
  • webview_select_element — Visual element picker for user to click and get element metadata
  • webview_get_pointed_element — Get metadata for element user Alt+Shift+Clicked
  • manage_window — List windows, get window info, or resize windows
  • read_logs — Read console, Android logcat, iOS, or system logs
  • ipc_execute_command — Execute Tauri IPC commands
  • ipc_get_backend_state — Get app metadata and backend state
  • ipc_monitor — Start or stop IPC traffic monitoring
  • ipc_get_captured — Get captured IPC traffic
  • ipc_emit_event — Emit custom events to the Tauri app
  • list_devices — List Android devices and iOS simulators
  • get_setup_instructions — Get setup/update instructions for the MCP Bridge plugin

Use cases

  • Automate UI testing by taking screenshots, finding elements, and simulating user interactions in Tauri apps
  • Debug webview issues by inspecting DOM state, reading console logs, and executing JavaScript
  • Monitor and inspect Tauri IPC communication between frontend and backend in real-time
  • Develop mobile apps by listing and targeting iOS simulators and Android emulators
  • Visually select UI elements and get their metadata to understand app structure

io.github.hypothesi/mcp-server-tauri MCP server FAQ

What is the MCP Server Tauri?

It's a Model Context Protocol server that connects AI assistants to Tauri v2 applications, enabling UI automation, screenshot capture, DOM inspection, IPC monitoring, and console log streaming for development and debugging.

Is it free?

Yes, the MCP Server Tauri is open-source under the MIT license.

How do I install it in Cursor or Claude?

Use the aix CLI: `npx -y @a1st/aix add mcp tauri --command 'npx @hypothesi/tauri-mcp-server' --user`, then restart your AI assistant. Alternatively, manually configure it by adding the server to your client's MCP settings.

Do I need to set up anything in my Tauri app?

Yes, you need to install and configure the MCP Bridge plugin in your Tauri project. The AI can guide you through this setup automatically, or you can follow the manual setup guide in the documentation.

What platforms does it support?

It works on Linux, Windows, macOS, Android, and iOS. Mobile development features include listing simulators and emulators.

Does it require external drivers like Selenium or Playwright?

No, it uses native Tauri integration via a Rust plugin, so no external browser automation drivers are needed.

README (reference)

Source of truth, from the repository.

<div align="center"> <img src="docs/public/logo.svg" alt="MCP Server Tauri" width="120" height="120" />

MCP Server Tauri

Give your AI assistant superpowers for Tauri development

npm version crates.io License: MIT Tauri v2

Documentation · Getting Started · Available Tools

</div>

A Model Context Protocol (MCP) server that enables AI assistants like Claude, Cursor, and Windsurf to build, test, and debug Tauri® v2 applications. Screenshots, DOM state, and console logs from your running app give the AI rich context to understand what's happening—and tools to interact with it.

✨ Features

CategoryCapabilities
🎯 UI AutomationScreenshots, clicks, typing, scrolling, element finding, visual element picker
🔍 IPC MonitoringCapture and inspect Tauri IPC calls in real-time
📱 Mobile DevList iOS simulators & Android emulators
📋 LogsStream console, Android logcat, iOS, and system logs

Disclaimer: This MCP was developed using agentic coding tools. It may contain bugs.

🚀 Quick Start

Prerequisites

  • Node.js 20+ and npm
  • Rust and Cargo (for Tauri development)
  • Tauri CLI: npm install -g @tauri-apps/cli@next
  • For mobile: Xcode (macOS) or Android SDK

1. Configure Your AI Assistant

Use aix to add the server to your AI assistant:

npx -y @a1st/aix add mcp tauri --command 'npx @hypothesi/tauri-mcp-server' --user

Supported clients: claude-code, cursor, windsurf, vscode, cline, roo-cline, claude, zed, goose, warp, codex

[!TIP] aix automatically detects your installed AI assistants and configures them.

Restart your AI assistant after adding the configuration.

CLI Usage

If you want to call the tools directly from a terminal instead of from an MCP client:

npm install -g @hypothesi/tauri-mcp-cli
tauri-mcp driver-session start --port 9223
tauri-mcp webview-screenshot --file screenshot.png

The CLI uses MCPorter keep-alive support so driver_session state survives across separate commands.

2. Set Up the MCP Bridge Plugin

Ask your AI assistant to help configure your Tauri app:

"Help me set up the Tauri MCP Bridge plugin"

Your AI will:

  1. Examine your project to see what's already configured
  2. Show you what changes are needed (Cargo.toml, plugin registration, etc.)
  3. Ask for your permission before making any modifications

That's it! The AI handles all the setup details while keeping you in control. 🎉

<details> <summary><strong>Manual Setup</strong></summary>

If you prefer to set up manually, see the Getting Started guide or the plugin documentation.

</details>

💬 Slash Commands (Prompts)

CommandDescription
/setupSet up or update the MCP bridge plugin in your Tauri project
/fix-webview-errorsFind and fix JavaScript errors in your webview
/selectVisually select an element in your app — returns metadata and screenshot

Just type the command in your AI assistant to start a guided workflow.


🧰 Available Tools (21 total)

<details> <summary><strong>Setup & Configuration</strong></summary>
ToolDescription
get_setup_instructionsGet setup/update instructions for the MCP Bridge plugin
</details> <details> <summary><strong>UI Automation</strong> — Screenshots, clicks, typing, and more</summary>
ToolDescription
driver_sessionStart/stop/status automation session
webview_find_elementFind elements by selector
read_logsRead console, Android, iOS, or system logs
webview_interactClick, scroll, swipe, focus, long-press
webview_screenshotCapture webview screenshots
webview_keyboardType text or send key events
webview_wait_forWait for elements, text, or events
webview_get_stylesGet computed CSS styles
webview_execute_jsExecute JavaScript in webview
webview_dom_snapshotGet structured accessibility tree snapshot
webview_select_elementVisual element picker — user clicks an element, returns metadata + screenshot
webview_get_pointed_elementGet metadata for element user Alt+Shift+Clicked
manage_windowList windows, get info, or resize

Multi-Window Support: All webview tools accept an optional windowId parameter to target specific windows. Use manage_window with action: "list" to discover available windows.

</details> <details> <summary><strong>IPC & Plugin</strong> — Deep Tauri integration</summary>
ToolDescription
ipc_execute_commandExecute Tauri IPC commands
ipc_get_backend_stateGet app metadata and state
ipc_monitorStart/stop IPC monitoring
ipc_get_capturedGet captured IPC traffic
ipc_emit_eventEmit custom events
</details> <details> <summary><strong>Mobile Development</strong> — Device listing</summary>
ToolDescription
list_devicesList Android devices and iOS simulators
</details>

🏗️ Architecture

┌─────────────────────────────────────────────────────────────────┐
│                        AI Assistant                             │
│                  (Claude, Cursor, Windsurf)                     │
└─────────────────────────┬───────────────────────────────────────┘
                          │ MCP Protocol (stdio)
                          ▼
┌─────────────────────────────────────────────────────────────────┐
│                     MCP Server (Node.js)                        │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────────────┐   │
│  │   Manager    │  │    Driver    │  │      Monitor         │   │
│  │  CLI/Config  │  │ UI Automation│  │   Logs/IPC Events    │   │
│  └──────────────┘  └──────┬───────┘  └──────────────────────┘   │
└─────────────────────────────┼───────────────────────────────────┘
                              │ WebSocket (port 9223)
                              ▼
┌─────────────────────────────────────────────────────────────────┐
│                      Tauri Application                          │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │              MCP Bridge Plugin (Rust)                    │   │
│  │         IPC Commands • Events • Backend State            │   │
│  └──────────────────────────────────────────────────────────┘   │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                    Webview (DOM/UI)                      │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘

Why this approach?

  • ✅ Rich AI context — Screenshots, DOM, and logs help the AI understand your app's state
  • ✅ Cross-platform — Works on Linux, Windows, macOS, Android, and iOS
  • ✅ No external drivers — No Selenium, Playwright, or browser automation needed
  • ✅ Native integration — Direct access to Tauri's IPC and backend

🧑‍💻 Development

# Clone and install
git clone https://github.com/hypothesi/mcp-server-tauri.git
cd mcp-server-tauri
npm install

# Build all packages
npm run build

# Run tests
npm test

# Development mode
npm run dev -w @hypothesi/tauri-mcp-server
<details> <summary><strong>Project Structure</strong></summary>
mcp-server-tauri/
├── packages/
│   ├── mcp-server/              # MCP server (TypeScript)
│   ├── tauri-plugin-mcp-bridge/ # Tauri plugin (Rust + JS bindings)
│   └── test-app/                # Test Tauri application
├── docs/                        # VitePress documentation
└── specs/                       # Architecture specs
</details> <details> <summary><strong>Releasing</strong></summary>
# Release plugin (Cargo + npm)
npm run release:plugin patch

# Release server (npm only)
npm run release:server patch

See specs/releasing.md for details.

</details>

📚 Documentation


🤝 Contributing

Contributions are welcome! Please:

  1. Follow existing code patterns
  2. Add tests for new features
  3. Update documentation
  4. Ensure npm test and npm run standards pass

Other Notes

This project is tested with BrowserStack.

📄 License

MIT © hypothesi


Trademark Notice

TAURI® is a registered trademark of The Tauri Programme within the Commons Conservancy. https://tauri.app/

This project is not affiliated with, endorsed by, or sponsored by The Tauri Programme within the Commons Conservancy.

Related MCP servers

Aviation accident report parsing and prompt generation service under the SHELL framework.

0
Python
View repository →
CRCricketStudio MCP logo

29 MCP tools for IPL 2026, IPL historical (18 seasons), and Major League Cricket. No API key.

1
JavaScript
View repository →
GRgrad-agent logo

grad-agent

Maintained

Autonomous MCP agent for grad school applications: prof discovery, cold emails, SOP, tracking.

3
Python
View repository →

Checks what an agent did NOT read. Coverage over a retrieval step or a folder.

View repository →

Autonomous AI agent selling pay-per-call skills settled with x402 micropayments (USDC).

View repository →

Flash Props API: player-prop analysis, projections, evidence, and line movement over REST/MCP.

0
MIT
View repository →