Token导航 LogoToken导航

MCP Server · 浏览器工具

Tauri Plugin MCP Bridge

Tauri 2.0插件,通过Model Context Protocol (MCP)实现桌面应用的自动化控制,支持AI助手与Tauri应用的交互。

未说明官方级别未说明来源级核验工具 0
RustClaude浏览器自动化

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
seanesla
提供方
seanesla

工具数量

0

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Tauri Plugin MCP Bridge 属于浏览器工具类 MCP Server,公开资料标注 0 个工具,通过传输方式未标注接入,适配 Claude,没有现成的安装命令;接入前先确认权限范围。

分类

浏览器工具

传输方式

未说明

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    先确认运行方式

    公开资料没有标注传输方式,先看仓库 README,确认是本地进程还是远程地址。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 0 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

公开资料仍需确认:安装命令

详细介绍

Tauri插件MCP桥

Tauri 2.0插件,支持桌面应用程序自动化的模型上下文协议(MCP)集成。允许像Claude这样的人工智能助手检查您的Tauri应用程序并与之交互。

特性

  • ✅ 窗口管理(列表、信息、显示/隐藏、移动、调整大小)
  • ✅ 浏览器控件(导航、状态、执行JS、选项卡)
  • ✅ DevTools集成(仅限macOS)
  • ✅ DOM交互(点击、键入、等待、快照)
  • ✅ 事件订阅
  • ✅ 性能指标
  • ✅ 测试记录/回放
  • 🚧 截图(需要tauri插件截图)

安装

添加到您的 Cargo.toml:

[dependencies]
tauri-plugin-mcp-bridge = { path = "../path/to/tauri-plugin-mcp-bridge" }

或者通过git:

[dependencies]
tauri-plugin-mcp-bridge = { git = "https://github.com/yourusername/tauri-mcp-bridge" }

用法

基本设置

在Tauri应用程序中初始化插件:

// src-tauri/src/main.rs
fn main() {
    tauri::Builder::default()
        .plugin(tauri_plugin_mcp_bridge::init())
        .run(tauri::generate_context!())
        .expect("error while running tauri application");
}

就是这样!该插件将:

  1. 在以下位置创建Unix套接字 ~/.tauri/mcp.sock (仅调试版本)
  2. 启动JSON-RPC 2.0服务器
  3. 处理传入的MCP命令
  4. 执行Tauri API调用

使用DevTools功能

要在生产构建中启用DevTools:

[dependencies]
tauri-plugin-mcp-bridge = { path = "../path/to/tauri-plugin-mcp-bridge", features = ["devtools"] }

建筑

该插件实现了一个在Unix套接字上监听的JSON-RPC 2.0服务器:

MCP Server (TypeScript)
  ↓ Unix socket (~/.tauri/mcp.sock)
Plugin (JSON-RPC server)
  ↓ Routes to command handlers
Command Handlers (Rust modules)
  ↓ Execute Tauri APIs
Your Tauri App

组件

1.套接字服务器(src/server.rs)
  • 在以下位置创建Unix套接字 ~/.tauri/mcp.sock
  • 接受传入连接
  • 解析JSON-RPC 2.0请求
  • 命令处理程序的路由
  • 返回JSON-RPC 2.0响应
2.国家管理(src/state.rs)

全局插件状态:

pub struct MCPState {
    pub event_subscriptions: Arc>>,
    pub js_callbacks: Arc>>,
    pub recordings: Arc>>>,
}
3.命令处理程序(src/commands/)

模块化命令处理程序:

  • window.rs -窗口管理(6个命令)
  • webview.rs -浏览器控件(4个命令)
  • devtools.rs -DevTools(2个命令,仅限macOS)
  • script.rs -JS与回调模式的交互(4个命令)
  • events.rs -事件订阅(3个命令)
  • performance.rs -性能指标(1个命令)
  • testing.rs -测试记录/回放(2个命令)
  • screenshot.rs -屏幕截图(1个命令,存根)

JavaScript回调模式

自从Tauri的 eval() 不返回值,插件使用回调模式:

// 1. Generate callback ID
let callback_id = uuid::Uuid::new_v4().to_string();

// 2. Create oneshot channel
let (tx, rx) = oneshot::channel();

// 3. Store in state
app.state::()
    .js_callbacks
    .lock()
    .unwrap()
    .insert(callback_id.clone(), tx);

// 4. Inject JS that invokes callback
let js = format!(r#"
    window.__TAURI__.invoke('js_callback', {{
        id: '{}',
        data: {{ result: 'value' }}
    }});
"#, callback_id);

window.eval(&js)?;

// 5. Await result with timeout
tokio::time::timeout(Duration::from_secs(30), rx).await??

API 参考

窗口管理

所有窗口命令都接受 label 参数。如果没有提供,则使用第一个窗口。

window_list

返回窗口标签数组。

window_info

参数:

  • label (字符串):窗口标签

返回窗口位置、大小和状态标志。

window_show / window_hide

参数:

  • label (字符串):窗口标签
window_move

参数:

  • label (字符串):窗口标签
  • x (数字):X坐标
  • y (数字):Y坐标
window_resize

参数:

  • label (字符串):窗口标签
  • width (数字):宽度(像素)
  • height (数字):高度(像素)

浏览器控件

browser_navigate

参数:

  • url (字符串):要导航到的URL
  • label (字符串,可选):窗口标签
browser_state

参数:

  • label (字符串,可选):窗口标签

返回当前URL和窗口状态。

browser_execute

参数:

  • code (string):JavaScript代码
  • label (字符串,可选):窗口标签

即发即弃JavaScript执行。

browser_tabs

参数:

  • action (string):“列表”、“创建”、“关闭”、“切换”
  • label (字符串,可选):窗口标签
  • index (数字,可选):窗口索引
  • url (字符串,可选):新窗口的URL

交互

browser_click

参数:

  • element (string):CSS选择器
  • button (字符串,可选):鼠标按钮
  • modifiers (数组,可选):键盘修饰符
  • label (字符串,可选):窗口标签
browser_type

参数:

  • text (string):要键入的文本
  • clear (boolean,可选):键入前清除
  • submit (布尔值,可选):提交表单
  • label (字符串,可选):窗口标签
browser_wait

参数:

  • condition (string):“选择器”、“url”、“标题”
  • value (string):等待的值
  • timeout (数字,可选):超时(毫秒)
  • label (字符串,可选):窗口标签
browser_snapshot

参数:

  • includeText (布尔值,可选):包含文本
  • maxDepth (数字,可选):最大深度
  • label (字符串,可选):窗口标签

返回DOM HTML快照。

DevTools(仅限macOS)

需要macOS 10.15+以及调试版本或 devtools 功能。

devtools_open / devtools_close

参数:

  • label (字符串,可选):窗口标签

事件

events_subscribe

参数:

  • types (数组):事件类型字符串

将EventId存储在状态中,以便以后取消订阅。

events_unsubscribe

参数:

  • types (数组):事件类型字符串
events_list

返回所有可用Tauri事件类型的列表。

演出

performance_metrics

参数:

  • label (字符串,可选):窗口标签

通过JavaScript回调返回性能API数据。

测试

test_record / test_replay

尚未实现-返回存根响应。

截图

browser_screenshot

参数:

  • label (字符串,可选):窗口标签
  • fullPage (布尔值,可选):整页
  • format (字符串,可选):图像格式

需要 tauri-plugin-screenshots 待安装。

发展

建筑

cargo build

运行测试

cargo test

使用Tauri应用程序进行测试

  1. 将插件添加到您的Tauri应用程序
  2. 运行应用程序: npm exec tauri dev
  3. 检查插座是否存在: ls -la ~/.tauri/mcp.sock
  4. 使用MCP服务器进行测试: node ../tauri-mcp-server/test-connection.js

平台支持

  • ✅ macOS 10.15+
  • ✅ Linux(Ubuntu 20.04+,Fedora 36+)
  • 🚧 窗户(计划中)

平台特定功能

macOS
  • 完全支持DevTools
  • 所有可用功能
Linux
  • DevTools不可用
  • 所有其他功能均正常工作
视窗
  • 尚未测试/支持
  • 欢迎捐款

配置

调试与发布

调试版本和发布版本之间的插件行为不同:

调试版本:

  • Socket服务器始终启动
  • 插座在 ~/.tauri/mcp.sock
  • 所有可用命令

发布版本:

  • 默认情况下禁用套接字服务器
  • 启用 TAURI_MCP_ENABLE=1 环境变量
  • 或使用插件配置(未来功能)

特性

[features]
default = []
devtools = []  # Enable DevTools in release builds

安全考虑

⚠️ 重要安全注意事项:

  1. 默认情况下仅调试构建 -套接字服务器仅在调试版本中运行,以防止在生产中进行未经授权的访问。
  1. 仅限本地插座 -使用Unix域套接字,而不是网络套接字,限制对本地计算机的访问。
  1. 无身份验证 -目前没有身份验证机制。任何具有套接字访问权限的人都可以控制该应用程序。
  1. 生产使用 -如果在生产中启用,请实施额外的安全措施:

- 身份验证令牌 - 许可制度 - 命令分配列表 - 审核日志记录

故障排除

套接字未创建

  • 检查您是否正在运行调试版本
  • 验证 ~/.tauri 目录存在并且可写
  • 检查应用程序日志是否有错误

命令不起作用

  • 确保窗户标签正确
  • 检查DevTools中的JavaScript错误
  • 验证Tauri版本兼容性(2.0+)

编译过程中的借用错误

常见模式-始终存储 app.webview_windows() 打电话之前 .get():

// ❌ Wrong - temporary value
let window = app.webview_windows().get(label)?;

// ✅ Correct - stored first
let windows = app.webview_windows();
let window = windows.get(label)?;

贡献

欢迎投稿!需要工作的领域:

  • \[\]Windows平台支持
  • \[\]身份验证/授权
  • \[\]截图插件集成
  • \[\]测试记录实施
  • \[\]事件通知转发
  • \[\]性能优化
  • \[\]更全面的测试

许可证

麻省理工学院或阿帕奇-2.0

鸣谢

内置:

工具与能力

工具数量

0

资源数量

0

提示词数量

0

能力标签

桌面自动化Rust本地部署AI集成窗口管理浏览器控制DOM交互

支持客户端

Claude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

自动操作网页

打开页面、点击、填表,把浏览器动作交给模型执行。

抓结构化数据

把页面内容整理成表格或 JSON,省掉手工复制粘贴。

走一遍关键流程

按步骤检查页面是否正常,回归时少漏环节。

选择建议

值得选的地方

  • 只提供 0 个工具,职责集中,接入后不容易误操作。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在浏览器工具场景里让模型直接调用外部能力的人。
  • 已经在用 Claude 的用户,接入路径最短。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Tauri Plugin MCP Bridge

MCP World · 本页

0未说明未标注1 个2026-05-17
Fetch 9a2682de

MCP.so

1SSE有3 个2026-05-17
Browser 738d52bc

MCP World

0stdio有1 个2026-05-17
Playwright MCP Server

MCP.so

21stdio有4 个2026-05-17
Skyvern MCP

MCP World

0stdio有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Tauri Plugin MCP Bridge 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

Tauri Plugin MCP Bridge 怎么在 Claude Desktop、Cursor 里配置?

它是传输方式未标注,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

Tauri Plugin MCP Bridge 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Tauri Plugin MCP Bridge 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Tauri Plugin MCP Bridge 支持哪些客户端?

公开资料标注支持 Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP