AI代理邮件系统

为AI编码团队设计的代理间邮件系统,支持发送、接收、搜索和线程消息,无需外部服务或API密钥。

  • by PayEz-Net
  • Rust
  • 本地部署
  • 更新于
在 GitHub 查看 PayEz-Net/vibesql-mail-mcp

使用说明

vibesql邮件

人工智能编码团队的代理到代理邮件系统。在代理之间发送、接收、搜索和线程消息——由VibeSQL提供支持。

三个组件一起装运:

组件 内容 语言
MCP服务器 适用于Claude Code、OpenCode和MCP兼容客户端的模型上下文协议服务器 Rust
npm包 npx vibesql-mail-mcp --自动下载的零安装分发 Node.js包装器
TUI客户 具有收件箱、撰写、线程和搜索功能的交互式终端邮件客户端 TypeScript+Ink

为什么

在团队中工作的AI代理需要异步通信,以保持会话之间的上下文。vibesql-mail为每个代理提供了一个持久的收件箱,其中包含线程、重要性级别和全文搜索-没有外部服务,没有API密钥,没有帐户。

消息通过以下方式存储在本地PostgreSQL数据库中 vibesql微型 (嵌入式PG,单二进制,零配置)或 vibesql服务器 用于生产部署。

快速开始

MCP服务器(推荐)

添加到您的 .mcp.json (克劳德代码)或MCP客户端配置:

{
  "mcpServers": {
    "agent-mail": {
      "command": "npx",
      "args": ["-y", "vibesql-mail-mcp", "--agent", "MyAgent"],
      "env": {}
    }
  }
}

Windows用户: 用……包 cmd /c:

"command": "cmd",
"args": ["/c", "npx", "-y", "vibesql-mail-mcp", "--agent", "MyAgent"]

需要 vibesql微型 运行于 localhost:5173 (默认)。覆盖 --micro-url.

来源(Rust)

cd server
cargo build --release --bin vibesql-mail-mcp
./target/release/vibesql-mail-mcp --agent BAPert --micro-url http://localhost:5173

TUI客户

cd client
npm install && npm run build
node bin/vibesql-mail.js --agent BAPert

首轮?使用 --setup 要配置服务器连接,请执行以下操作:

node bin/vibesql-mail.js --setup

MCP服务器工具

MCP服务器提供了6个工具,任何兼容MCP的AI客户端都可以调用:

工具 说明
check_inbox 检查收件箱--返回包含发件人、主题、日期和阅读状态的邮件
read_message 按ID读取消息--返回全文并将其标记为已读
send_mail 向一个或多个代理发送消息
reply 回复消息——自动填充thread_id、收件人和RE:subject
list_agents 列出所有已注册的代理及其角色和状态
search_mail 按关键字、发件人或日期范围搜索邮件

MCP资源

资源 描述
mail://agents 代理目录
mail://inbox/{agent} 特定代理的收件箱
mail://thread/{thread_id} 完整的对话线索

消息格式

send_mail:
  to: "BAPert, DotNetPert"     # comma-separated recipients
  subject: "Deploy ready"
  body: "All tests pass."
  cc: "QAPert"                  # optional
  importance: "high"            # low, normal, high, urgent
  thread_id: "abc123"           # optional — continues a thread

限制

字段 限制
正文 65536字节
主题 256个字符
收件人(至+cc) 10

TUI客户端屏幕

屏幕 按键 描述
收件箱 i 带有未读标记的邮件列表
阅读 Enter 带标题的完整消息显示
作曲 c 带有交互式字段的新消息
回复 r 带引用正文的预填回复
转发 f 预填转发
已发送 s 已发送消息
代理商 a 代理目录与组成
线程 t 完整对话视图
帮助 ? 键盘快捷键
退出 q 退出

建筑

┌──────────────────┐     ┌──────────────────┐     ┌──────────────────┐
│  Claude Code /   │     │  TUI Client      │     │  Other MCP       │
│  AI Agent        │     │  (terminal)       │     │  Clients         │
└────────┬─────────┘     └────────┬──────────┘     └────────┬─────────┘
         │ MCP (stdin/stdout)     │ HTTP                     │ MCP
         v                        v                          v
┌──────────────────────────────────────────────────────────────────────┐
│                    vibesql-mail-mcp (Rust)                          │
│                    JSON-RPC 2.0 over stdio                          │
└────────────────────────────┬─────────────────────────────────────────┘
                             │ POST /v1/query
                             v
              ┌──────────────────────────────┐
              │  vibesql-micro               │
              │  (embedded PostgreSQL 16.1)  │
              │  localhost:5173              │
              └──────────────────────────────┘

地方发展: vibesql-micro——单二进制,零配置,嵌入式PostgreSQL。

生产: vibesql服务器--。NET 9,外部PostgreSQL,HMAC认证,水平扩展。

两个后端都使用相同的协议: POST /v1/query 和 {"sql": "...", "params": [...]}.

数据库模式

首次连接时自动迁移。核心表:

表 目的
agents 代理配置文件--名称、角色、显示名称、活动状态
messages 邮件--发件人、主题、正文、重要性
inbox 交付跟踪——每个收件人的读取/存档状态
teams 代理团队
team_members 团队成员
projects 项目跟踪
kanban_boards 看板板、栏和卡片

配置

环境变量

变量 默认值 描述
AGENT_NAME -- 代理名称(替代 --agent)
VIBESQL_MAIL_MICRO_URL http://localhost:5173 VibeSQL端点(替代 --micro-url)

CLI参数

vibesql-mail-mcp --agent <name> [--micro-url <url>]

支持平台

平台 架构 状态
Windows x64 支持
Linux x64 支持
macOS x64(英特尔) 支持
macOS arm64(苹果硅) 计划中

需求

  • vibesql微型 >=1.1.0(参数化查询支持)或 vibesql服务器 >=2.0
  • Node.js >=14(npm包)
  • 锈 >=1.70(从源头开始构建)

许可证

阿帕奇-2.0

链接