Tauri开发AI助手服务器

一个为Tauri应用开发提供AI助手支持的服务器,支持UI自动化、IPC监控、移动开发和日志管理。

  • by hypothesi
  • TypeScript
  • 本地部署
  • 329 星标
  • 更新于
在 GitHub 查看 hypothesi/mcp-server-tauri

使用说明

MCP服务器Tauri

为你的人工智能助手提供Tauri开发的超能力

文档 · 入门指南 · 可用工具


A. 模型上下文协议(MCP)服务器 它使Claude、Cursor和Windsurf等人工智能助手能够构建、测试和调试 Tauri® v2应用程序。运行中的应用程序的屏幕截图、DOM状态和控制台日志为AI提供了丰富的上下文,以了解正在发生的事情,并提供了与之交互的工具。

✨ 特征

类别 功能
🎯 用户界面自动化 截图、点击、打字、滚动、元素查找、视觉元素选择器
🔍 IPC监控 实时捕获和检查Tauri IPC呼叫
📱 移动开发 列出iOS模拟器和Android模拟器
📋 日志 流控制台、Android日志、iOS和系统日志

免责声明:此MCP是使用代理编码工具开发的。它可能包含错误。

🚀 快速开始

先决条件

  • Node.js 20+和npm
  • 锈 货物(用于 陶瑞 发展)
  • Tauri 命令行工具: npm install -g @tauri-apps/cli@next
  • 移动端:Xcode(macOS)或Android SDK

1.配置您的AI助手

使用 AIX 将服务器添加到您的AI助手:

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

支持的客户端: claude-code, cursor, windsurf, vscode, cline, roo-cline, claude, zed, goose, warp, codex

[!提示] aix 自动检测您安装的AI助手并对其进行配置。

重启你的AI助手 在添加配置之后。

CLI使用情况

如果您想直接从终端而不是从MCP客户端调用工具:

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

CLI使用MCPorter保持活动支持,因此 driver_session 国家在不同的命令中生存。

2.设置MCP网桥插件

请您的AI助手帮助配置您的Tauri应用程序:

“帮助我设置Tauri MCP桥插件”

您的AI将:

  1. 检查你的项目 查看已配置的内容
  2. 向您展示需要进行哪些更改 (Cargo.toml、插件注册等)
  3. 请求您的许可 在进行任何修改之前

就是这样!AI处理所有设置细节,同时让您保持控制。 🎉

Manual Setup

如果您更喜欢手动设置,请参阅 入门指南 或 插件文档.


💬 Slash命令(提示)

命令 描述
/setup 在Tauri项目中设置或更新MCP桥接插件
/fix-webview-errors 查找并修复Web视图中的JavaScript错误
/select 在应用程序中直观地选择一个元素——返回元数据和屏幕截图

只需在您的AI助手中键入命令即可启动引导式工作流程。


🧰 可用工具(共21个)

Setup & Configuration
工具 说明
get_setup_instructions 获取MCP网桥插件的设置/更新说明
UI Automation — Screenshots, clicks, typing, and more
工具 说明
driver_session 启动/停止/状态自动化会话
webview_find_element 按选择器查找元素
read_logs 读取控制台、Android、iOS或系统日志
webview_interact 点击、滚动、滑动、聚焦、长按
webview_screenshot 捕获网络视图截图
webview_keyboard 键入文本或发送关键事件
webview_wait_for 等待元素、文本或事件
webview_get_styles 获取计算CSS样式
webview_execute_js 在webview中执行JavaScript
webview_dom_snapshot 获取结构化可访问性树快照
webview_select_element 可视化元素选择器——用户点击一个元素,返回元数据+截图
webview_get_pointed_element 获取元素用户Alt+Shift+Clicked的元数据
manage_window 列出窗口、获取信息或调整大小

多窗口支持:所有webview工具都接受可选 windowId 参数以针对特定窗口。使用 manage_window 随着 action: "list" 以发现可用的窗口。

IPC & Plugin — Deep Tauri integration
工具 说明
ipc_execute_command 执行Tauri IPC命令
ipc_get_backend_state 获取应用元数据和状态
ipc_monitor 启动/停止IPC监控
ipc_get_captured 获取捕获的IPC流量
ipc_emit_event 发起自定义事件
Mobile Development — Device listing
工具 说明
list_devices 列出Android设备和iOS模拟器

🏗️ 建筑

┌─────────────────────────────────────────────────────────────────┐
│                        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)                      │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘

为什么采用这种方法?

  • ✅ 丰富的AI上下文 --截图、DOM和日志有助于AI了解应用程序的状态
  • ✅ 跨平台 --适用于Linux、Windows、macOS、Android和iOS
  • ✅ 无外部驱动程序 --无需Selenium、Playwright或浏览器自动化
  • ✅ 原生集成 --直接访问Tauri的IPC和后端

🧑‍💻 发展

# 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
Project 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 patch

看 规格/发布.md 了解详情。


📚 文档


🤝 贡献

欢迎投稿!拜托:

  1. 遵循现有的代码模式
  2. 为新功能添加测试
  3. 更新文档
  4. 确保 npm test 和 npm run standards 通过

其他注意事项

此项目使用BrowserStack进行测试。

📄 许可证

MIT© 假设


商标通知

TAURI®是Commons Conservancy旗下TAURI计划的注册商标。 https://tauri.app/

该项目不隶属于、不受公共保护协会Tauri计划的认可或赞助。