关于 mq-bridge
mq-bridge 是基于 Rust 的数据迁移与消息桥接工具,面向需要连接数据库、队列和文件的团队。它以同一引擎和配置格式提供命令行、桌面应用、库及 MCP 服务模式。
主要功能
- 01在数据库、队列和文件间桥接数据
- 02通过单条命令运行 ETL 复制任务
- 03应用重试、转换和速率限制
- 04在内置界面检查流量
- 05使用 YAML、JSON 或 TOML 配置路由
适用场景
- 01将数据库行复制到文件
- 02在不同协议间转发消息
- 03管理长期运行的消息路由
- 04通过 Agent 迁移数据而不将行载入上下文
MCP 相关
同一可执行程序可作为 MCP 服务运行,向 Agent 提供数据迁移操作。README 提到可向 Claude Code、Claude Desktop 或 Cursor 注册。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
mqb · mq-bridge-app
贯通数据流
mq-bridge-app 是一款使用 Rust 构建的快速、单命令 ETL 和数据迁移工具,并基于同一引擎提供多协议桥接和消息流量工作台。
它以三种共用同一引擎和配置格式的形式提供:桌面应用(可视化工作台)、CLI / 服务(无头桥接和一行命令 copy),以及库(在 Rust、Python 或 Node.js 中嵌入引擎)。只需设计一次路由,即可在任何地方运行,无需重新编写。
支持的集成类型包括 Kafka、RabbitMQ(AMQP)、NATS、AWS SQS、MQTT、IBM MQ(可选)、HTTP、gRPC、ZeroMQ、MongoDB、**sqlx(MySQL、MariaDB、PostgreSQL)**以及文件系统端点。
📖 所有文档都收录在文档手册中——包括安装、快速入门、教程、操作指南、连接器参考、CLI、MCP 和性能调优。本 README 仅作简要介绍;文档手册是唯一可信来源。
快速体验
其核心是无需配置的 copy 命令,只需一行 bash 命令,即可在数据库、队列和文件之间迁移数据——无需 YAML、无需定义管道、无需编写代码:
mqb copy \
'postgres://${PGUSER}:${PGPASSWORD}@localhost/db?table=src&sslmode=disable' \
'file://out.jsonl?format=raw' \
--filter 'amount > 100' \
--drain
方案决定端点,查询参数负责配置端点,因此任意源→目标组合(Postgres、MySQL、MariaDB、SQLite、NATS、Redis、MongoDB、文件等)都只需各用一个 URL。速度也很快。
当源支持安全的原生位置时,请使用 --resume(例如 Kafka
消费者组、MongoDB 更改流游标、Postgres CDC 槽,或显式配置的
SQL 游标)。仍支持旧版 --from ... --to ... 写法。
三种运行方式
在受 Postman 启发的 UI 中测试连接并调整路由,导出 JSON/YAML,然后将该配置作为服务运行,或从库代码中运行。同一引擎,同一种配置格式。
| 形式 | 说明 | 快速安装 |
|---|---|---|
| 桌面应用(UI) | 可视化工作台 — 构建/测试路由、运行请求/响应流量、查看消息历史记录 | brew install --cask marcomq/tap/mq-bridge |
| CLI / 服务 | 无头二进制文件:单行 copy、排空后退出的批处理作业,或长期运行的桥接服务(也可在浏览器中提供同一 UI) | brew install marcomq/tap/mq-bridge-app |
| 库 | 嵌入自有代码的引擎 — 原生 Rust、Python 或 Node.js 绑定 | cargo add mq-bridge · pip install mq-bridge · npm install mq-bridge |

在手册中了解每种形式:三种运行方式 · 桌面 / Web UI · CLI 命令 · MCP 服务 · 库绑定。
安装
在 macOS 和 Linux 上,brew 是最快捷的安装方式:
brew install marcomq/tap/mq-bridge-app # CLI / server
brew install --cask marcomq/tap/mq-bridge # desktop app
在 Windows 上,使用 cargo binstall mq-bridge-app 安装 CLI,或从 Releases 页面下载桌面安装程序 / CLI。也可通过 cargo install mq-bridge-app(从源码安装)和 Docker 镜像 ghcr.io/marcomq/mq-bridge-app:latest 获取。
→ 所有安装方式和平台(包括 IBM MQ 版本和 Docker)都列在**安装指南**中;如需从源码编译,请参阅构建。
在 AI Agent 中使用
同一二进制文件也是 MCP 服务,因此 Agent 可以传输数据,而无需让数据行经过其上下文:
mqb mcp install # register with Claude Code / Claude Desktop / Cursor
- MCP Registry 名称:
mcp-name: io.github.marcomq/mq-bridge
→ 工具、传输方式和令牌成本测量:MCP 服务。
功能
- 多协议桥接 — Kafka、IBM MQ、NATS、AMQP(RabbitMQ)、MQTT、AWS SQS、gRPC、ZeroMQ、MongoDB、sqlx(MySQL/MariaDB/PostgreSQL)、HTTP 和文件。可同时作为 HTTP 服务端和客户端,并全面支持请求-响应。
- 中间件链 — 重试、死信队列、去重、速率限制、缓冲、转换、弱连接关联等,可包装任意端点。
- 内置 Web UI — 基于 Svelte 的管理界面,可管理发布者、消费者、路由、运行时状态、预设和导入;也是 CLI 在浏览器中提供的同一 UI。
- 原生插件 — 通过配置中的
plugins:或--plugin <path>,从共享库加载此二进制文件未编译的端点或中间件(例如 Pulsar、内部传输),并在路由中按名称使用。无需特殊构建;插件路径仅在启动时读取,因此添加插件需要编辑受信任的启动配置并重启:原生插件。 - 可观测性 — 结构化 JSON 日志、Prometheus 指标端点,以及用于实时查看机器上所有运行实例的表格的
mqb status。 - 灵活配置 — 分层配置文件(YAML/JSON/TOML)加环境变量,适用于 Container/Kubernetes。
- 安全与存储 — 配置安全模式(明文 / 提取密钥 / 加密配置 / 持久化加密历史记录)、静态加密和本地优先运行。
- 高性能 — Rust + Tokio:低延迟、高并发、占用内存小。
为什么不直接使用 API 客户端?
mq-bridge-app 的 UI 与 Postman、Bruno、Insomnia 和 Hoppscotch 等 API 客户端有重叠,但它的重点不同:消息桥接、运行时操作和长期路由管理,而不只是请求编写。不同产品和版本的具体功能有所差异;下表体现的是侧重点上的区别。
| 能力 | mq-bridge | Postman | Bruno | Insomnia | Hoppscotch |
|---|---|---|---|---|---|
| 基本 HTTP/API 请求 | ✓ | ✓ | ✓ | ✓ | ✓ |
| 脚本编写 | — | ✓ | ✓ | ✓ | ✓ |
| Cookie 容器 | 尚未支持 | ✓ | ✓ | ✓ | ~ |
| 多部分表单 | — | ✓ | ✓ | ✓ | ✓ |
| 十六进制级别的负载调试 | ✓ | — | — | — | — |
| Broker 发布/订阅工作流 | ✓ | MQTT | — | — | MQTT |
| 长期运行的消费者/路由 | ✓ | — | — | — | — |
| 在协议之间桥接流量 | ✓ | — | — | — | — |
| 重放消息 | ✓ | ~ | — | — | ~ |
| 本地优先工作区 | ✓ | ~ | ✓ | ✓ | ~ |
| 便于 Git 管理的配置 | ✓ | ~ | ✓ | ✓ | ~ |
| 默认云同步 | — | ✓ | — | 可选 | 可选 |
| AI / Agent 功能 | — | ✓ | — | ~ | ~ |
| 加密配置 | ✓ | ~ | ~ | ~ | ~ |
如果你的主要工作是编写和共享 API 请求,请使用 Postman/Bruno;如果你需要连接系统、在协议之间传递消息、检查实时流量并管理桥接式运行时配置,请使用 mq-bridge-app。
性能
CSV → JSONL 转换达到了 3,134,796 行/秒(mq-bridge 0.4.20)——使用的核心数更少、内存约少 18 倍,速度仍约为 DuckDB 使用全部核心复制同一文件的 1.5 倍。同一任务通过 MCP 工具调用运行时达到了 3,108,517 行/秒(mq-bridge 1.2.0),与该会话中 CLI 的 3,076,923 行/秒基准相当:MCP 接口只增加少量固定的请求/响应开销,不会按行增加开销。无论行数多少,Agent 的开销都是固定的约 385 个 token,因为这些行不会进入模型的上下文。
在 Kafka → 文件中继测试中,使用 mq-bridge-app 的默认文件格式且不进行转换, 同一引擎的速度比 Sea Streamer 快约 78%(两者都使用 mimalloc 分配器时;相比其默认分配器构建版本快约 82%);原生文件格式的注意事项 详见链接中的基准测试文档。
→ 完整数据、方法和调节参数:性能调优 和 benches/etl/README.md。
在 nats / kafka / postgres 等上进行测试……
测试时,可使用适用于受支持后端的 docker-compose 文件:
docker-compose -f https://raw.githubusercontent.com/marcomq/mq-bridge/main/tests/integration/docker-compose/postgres.yml up
构建方式
mq-bridge-app 使用 mq-bridge 引擎来构建自身——管理 UI 通过引擎自身的 HTTP 请求/响应路由提供服务,UI 表单则根据 Rust 配置架构生成(无需手写表单代码)。请参阅应用的构建方式。
状态
正在积极开发。最初是 mq-bridge 引擎的参考实现和测试平台。UI/Tauri 层是可运行的演示,而非参考实现——在生产环境中依赖它之前,请先进行测试。
许可证
mq-bridge-app 采用双重许可,你可以选择遵循 MIT 许可证 或 Apache License, Version 2.0。CLI 和桌面发行版的第三方条款 见 THIRD_PARTY_LICENSES.txt。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。