Labsco
hypothesi logo

Tauri Development MCP Server

โ˜… 251

from hypothesi

Build, test, and debug mobile and desktop apps with the Tauri framework faster with automated UI interaction, screenshots, DOM state, and console logs from your app under development.

๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅโœ“ VerifiedFreeQuick setup
<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.

๐Ÿ’ฌ 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

Copy & paste โ€” that's it
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                        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

Copy & paste โ€” that's it
# 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>
Copy & paste โ€” that's it
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>
Copy & paste โ€” that's it
# 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.