A Model Context Protocol server for use with Tauri v2 applications
A Model Context Protocol (MCP) server for Tauri v2 applications. It enables AI assistants to build, test, and debug Tauri-based apps by providing standardized model context services and tooling integration.
🛠️ Key Features
MCP server that works with Tauri v2 environments
Enables AI assistants to interact with Tauri applications for context-aware actions
Supports automation, CLI workflows, and Gemini CLI extension compatibility
Clear readme and documentation references for setup and usage
🚀 Use Cases
Integrating model context services into Tauri-based IDE workflows
Testing and debugging MCP-enabled Tauri apps with AI assistants
Automating common development tasks via MCP in a Tauri environment
⚡ Developer Benefits
Standardized MCP interface for Tauri v2 apps
Quick-start documentation and npm packaging for easy adoption
Compatibility with popular AI assistants and Gemini CLI extensions
⚠️ Limitations
Specific capabilities may depend on the host AI assistant support for MCP
Documentation depth may vary; refer to full docs for detailed integration steps
Note: The npm package @hypothesi/tauri-plugin-mcp-bridge is optional—only needed if you want to call the plugin from your app's frontend code. The MCP server communicates with the Rust plugin directly via WebSocket.
The CLI keeps the underlying MCP server warm in the background so stateful commands such as driver_session work across separate invocations.
Multi-App Support
The MCP server supports connecting to multiple Tauri apps simultaneously. Each app runs on a unique port, and the most recently connected app becomes the "default" app.
Key Features:
Connect to multiple apps on different ports
Default app used when no appIdentifier specified
Target specific apps using port number or bundle ID
Stop individual sessions or all sessions at once
Example Usage:
javascript
// Connect to first appawaitdriver_session({ action: "start", port: 9223 })
// Connect to second appawaitdriver_session({ action: "start", port: 9224 })
// Check status - shows both apps with default indicatorawaitdriver_session({ action: "status" })
// Use default app (most recent - port 9224)awaitwebview_screenshot()
// Target specific app by portawaitwebview_screenshot({ appIdentifier: 9223 })
// Stop specific appawaitdriver_session({ action: "stop", appIdentifier: 9223 })
// Stop all appsawaitdriver_session({ action: "stop" })
Available Tools (20 total)
Setup & Configuration
Tool
Description
get_setup_instructions
Get setup/update instructions for the MCP Bridge plugin
UI Automation
Tool
Description
driver_session
Start/stop/status automation session
webview_find_element
Find elements by CSS selector, XPath, text, or ref ID
read_logs
Read console, Android, iOS, or system logs
webview_interact
Click, scroll, swipe, focus, long-press
webview_screenshot
Capture webview screenshots (JPEG default)
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 DOM snapshot (accessibility or structure)
webview_select_element
Visual element picker — user clicks an element, returns metadata + screenshot