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.
| Category | Capabilities |
|---|---|
| ๐ฏ UI Automation | Screenshots, clicks, typing, scrolling, element finding, visual element picker |
| ๐ IPC Monitoring | Capture and inspect Tauri IPC calls in real-time |
| ๐ฑ Mobile Dev | List iOS simulators & Android emulators |
| ๐ Logs | Stream console, Android logcat, iOS, and system logs |
Disclaimer: This MCP was developed using agentic coding tools. It may contain bugs.
- 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
Use install-mcp to add the server to your AI assistant:
npx -y install-mcp @hypothesi/tauri-mcp-server --client claude-codeSupported clients: claude-code, cursor, windsurf, vscode, cline, roo-cline, claude, zed, goose, warp, codex
Claude Code
npx -y install-mcp @hypothesi/tauri-mcp-server --client claude-codeCursor
npx -y install-mcp @hypothesi/tauri-mcp-server --client cursorVS Code / Copilot
npx -y install-mcp @hypothesi/tauri-mcp-server --client vscodeWindsurf
npx -y install-mcp @hypothesi/tauri-mcp-server --client windsurfCline
npx -y install-mcp @hypothesi/tauri-mcp-server --client clineRestart your AI assistant after adding the configuration.
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.pngThe CLI uses MCPorter keep-alive support so driver_session state survives across separate commands.
Ask your AI assistant to help configure your Tauri app:
"Help me set up the Tauri MCP Bridge plugin"
Your AI will:
- Examine your project to see what's already configured
- Show you what changes are needed (Cargo.toml, plugin registration, etc.)
- Ask for your permission before making any modifications
That's it! The AI handles all the setup details while keeping you in control. ๐
Manual Setup
If you prefer to set up manually, see the Getting Started guide or the plugin documentation.
| Command | Description |
|---|---|
/setup |
Set up or update the MCP bridge plugin in your Tauri project |
/fix-webview-errors |
Find and fix JavaScript errors in your webview |
/select |
Visually select an element in your app โ returns metadata and screenshot |
Just type the command in your AI assistant to start a guided workflow.
Setup & Configuration
| Tool | Description |
|---|---|
get_setup_instructions |
Get setup/update instructions for the MCP Bridge plugin |
UI Automation โ Screenshots, clicks, typing, and more
| Tool | Description |
|---|---|
driver_session |
Start/stop/status automation session |
webview_find_element |
Find elements by selector |
read_logs |
Read console, Android, iOS, or system logs |
webview_interact |
Click, scroll, swipe, focus, long-press |
webview_screenshot |
Capture webview screenshots |
webview_keyboard |
Type text or send key events |
webview_wait_for |
Wait for elements, text, or events |
webview_get_styles |
Get computed CSS styles |
webview_execute_js |
Execute JavaScript in webview |
webview_dom_snapshot |
Get structured accessibility tree snapshot |
webview_select_element |
Visual element picker โ user clicks an element, returns metadata + screenshot |
webview_get_pointed_element |
Get metadata for element user Alt+Shift+Clicked |
manage_window |
List windows, get info, or resize |
Multi-Window Support: All webview tools accept an optional
windowIdparameter to target specific windows. Usemanage_windowwithaction: "list"to discover available windows.
IPC & Plugin โ Deep Tauri integration
| Tool | Description |
|---|---|
ipc_execute_command |
Execute Tauri IPC commands |
ipc_get_backend_state |
Get app metadata and state |
ipc_monitor |
Start/stop IPC monitoring |
ipc_get_captured |
Get captured IPC traffic |
ipc_emit_event |
Emit custom events |
Mobile Development โ Device listing
| Tool | Description |
|---|---|
list_devices |
List Android devices and iOS simulators |
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 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
# 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-serverProject Structure
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
Releasing
# Release plugin (Cargo + npm)
npm run release:plugin patch
# Release server (npm only)
npm run release:server patchSee specs/releasing.md for details.
- Full Documentation โ Guides, API reference, and examples
- MCP Server Package โ Server implementation details
- MCP Bridge Plugin โ Tauri plugin documentation
Contributions are welcome! Please:
- Follow existing code patterns
- Add tests for new features
- Update documentation
- Ensure
npm testandnpm run standardspass
MIT ยฉ hypothesi
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.