Tauri Plugin MCP
UnclaimedAllows AI agents (e.g., Cursor, Claude Code) to debug within Tauri apps via screenshot capture, window management, DOM access, and simulated user inputs.
Set up this server
01 / Choose your client
02 / Before you connect
Authentication is not specified. Check the project instructions before connecting.
Project instructions03 / Add the configuration
claude mcp add --transport stdio 'tauri-plugin-mcp' -- 'npx' '-y' 'tauri-plugin-mcp-server'04 / Check it in your client
Open your client’s MCP settings and confirm the server connects and lists its tools. A copied configuration does not confirm a working connection.
More in AI & ML
Browse the full directoryUnclaimed listing
Is this your MCP server?
This listing was auto-indexed from the public record. Claim it to edit the page, set compatibility and unlock growth tools. Takes under two minutes.
Claim this serverSecurity profile
Claimed and verified servers get a weekly static scan that shows what the code can reach: external services, environment variables, shell commands, agent configuration folders, plus any dependencies with known advisories. Claim this listing to get one. How the security profile works
19 of 19 tools
Documented tools (19)
From project documentation. A server handshake does not verify each tool’s description or behavior.
app_bridge
Calls helpers the host app registered via window.MCPBRIDGE.register(name, fn, description) — list to discover, call to invoke (async supported, results serialized + truncated). The sanctioned path to app state instead of executejs against internals.
click
Clicks via selector (ref, id, class, css, tag, text) or at raw x/y coordinates. Selector-based left clicks dispatch synthetic pointer events at the element (no OS permissions needed); right/middle/double and raw x/y clicks use native clicking. scopeselector/match/nth disambiguate repeated matches.
dispatch_pointer
Synthetic pointer/mouse gesture chains (click, dblclick, down, up, hover, drag) on the exact matched element, no retargeting. Element-relative offset for canvas hit-testing; drags interpolate moves on the element and document (d3-drag compatible). Events are isTrusted=false.
execute_js
Runs arbitrary JavaScript in the webview. Returns the last expression's value; promises are awaited. The universal escape hatch.
inspect_element
Bounding rect, computed styles (default layout/color set or explicit styleprops), classList and attributes — for visual/layout QA without executejs getComputedStyle snippets.
log_mark
Inserts begin/end markers into the log buffer so querylogs can return exactly the logs produced by an action.
manage_ipc
Tauri IPC access: invoke any #[tauri::command] with JSON args through the app's real IPC path, inspect captured webview↔Rust invoke traffic (names, args/result previews, latency, error rates), and drive events — emit fires one, armevent registers a background listener before you act (arm → act → che
manage_storage
localStorage operations (get/set/remove/clear/keys) and cookie management (get/clear).
manage_window
Window control (list/focus/minimize/maximize/close/position/size/fullscreen), zoom, devtools, and webview state management.
mouse_action
Non-click mouse actions: hover, scroll (by direction/amount/to element/to top/bottom), drag (start to end coordinates).
navigate
Webview navigation: goto (URL), back/forward (with optional delta), reload.
press_key
Presses keyboard keys the typing tools can't express: Escape, Enter, Tab, arrows, Backspace/Delete, F-keys, and modifier chords (cmd+a). Emulates default actions (Enter submits, Tab moves focus) unless the app prevents them.
query_logs
Queries buffered app logs (Rust log!() output, webview console. calls, and intercepted dialogs) with level/source/substring filters, pagination, and a summary mode.
query_page
Inspects the current page. Modes: map (structured element refs), html (raw DOM), state (URL/title/scroll/viewport), findelement (CSS pixel coordinates for clicking), appinfo (app metadata, windows, monitors).
read_text
Reads visible text of elements matching a CSS selector: per-element {tag, text, visible, attrs?}, whitespace-collapsed, output hard-capped with a truncated flag. The structured replacement for executejs text-scraping snippets.
restart_app
Restarts the Tauri application and waits for it to come back online. Force-kills a frozen app (IPC mode only). Refuses under tauri dev — restarting would orphan the app outside the dev supervisor; reload the frontend with navigate instead.
take_screenshot
Captures a screenshot of an application window. Saves full image to disk with small thumbnail inline (optimized for token efficiency).
type_text
Types text into the page. Supports a fields array for bulk form fill, selector targeting, or typing into the focused element. Selects options in <select> dropdowns by value or label, and attaches files to <input type="file"> via a files array. Works with inputs, textareas, contentEditable, React, Le
wait_for
Waits for a condition: text appearing/disappearing, element visible/hidden/attached/detached. Useful after async content loads.
Tool change history
FAQ
Questions about Tauri Plugin MCP Server
- How do I connect Tauri Plugin MCP Server to Claude?
- Run `claude mcp add tauri-plugin-mcp -- npx -y tauri-plugin-mcp-server` in Claude Code, or add the same command and arguments under mcpServers in Cursor's mcp.json or Claude Desktop's claude_desktop_config.json, then restart the client. The blocks above are ready to paste.
- Is Tauri Plugin MCP Server free?
- MCPVault has not verified a licence for this server. Check the upstream terms and pricing before use; connected APIs may require a paid account.
- What can Tauri Plugin MCP Server do?
- Tauri Plugin MCP Server documents 19 tools to the agent, including app_bridge, click, dispatch_pointer. The descriptions above come from project documentation. A live handshake does not test individual tool behavior.