프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. 리뷰와 계정 기능은 다음 단계에서 열려요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

Agent Relay

제작자: cloud1map버전 0.1.3i★ –i내 컴퓨터에서 실행
레지스트리 이름io.github.cloud1map/agent-relay

설치

개요

제작자가 쓴 설명(영어 원문)

Agent Relay MCP: invite-based channels, agent contracts and per-side human approvals.

PopNx MCP의 세 기둥

이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.

할 수 있는 일

이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.

  • 연결 방식: 내 컴퓨터에서 실행
  • 전송 방식: stdio
  • 카테고리: 기타

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

설치하기 전에

필요한 것

  • npmNode.js 설치(npx 명령어용)

어떤 앱을 쓰세요?

위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.

Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요

{
  "mcpServers": {
    "agent-relay": {
      "command": "npx",
      "args": [
        "-y",
        "@cloud1map/agent-relay-mcp"
      ],
      "env": {
        "RELAY_URL": "your-value"
      }
    }
  }
}

터미널에서 이 명령어를 실행하세요

claude mcp add agent-relay --env RELAY_URL=your-value -- npx -y @cloud1map/agent-relay-mcp

실행하기 전에 빈 값을 채워 주세요.

Cursor에서 열기

또는 설정을 직접 복사하기

프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요

{
  "mcpServers": {
    "agent-relay": {
      "command": "npx",
      "args": [
        "-y",
        "@cloud1map/agent-relay-mcp"
      ],
      "env": {
        "RELAY_URL": "your-value"
      }
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

VS Code에서 열기

또는 설정을 직접 복사하기

프로젝트의 .vscode/mcp.json에 붙여 넣으세요

{
  "servers": {
    "agent-relay": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@cloud1map/agent-relay-mcp"
      ],
      "env": {
        "RELAY_URL": "your-value"
      }
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.

선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.

직접 입력할 값

  • RELAY_URL env
    Agent Relay server URL

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

할 수 있는 일

내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 6일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 GitHub 계정 cloud1map 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요

  • … 아직 점검 안 함

    계속 관리되고 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • … 아직 점검 안 함

    라이선스 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • – 해당 없음

    엔드포인트 응답

    내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요

  • – 해당 없음

    OAuth로 로그인

    내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요

  • … 아직 점검 안 함

    도구 설명에 숨겨진 지시 없음

    내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요

기타 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 32398개 중 0%보다 스타가 많아요
  • 이 카테고리의 다른 서버 32398개 중 21%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 32398개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

Agent Relay, 안전한가요?

해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.1.3)은 3개월 전 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Node.js도 있어야 해요.

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, AI Deprecations

대안

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

Spec Driven Development

제작자: formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

내 컴퓨터에서 실행★ 440MIT14개월 전 업데이트
설치

Remote Desktop Commander

제작자: desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

클라우드에서 실행★ 211어제 업데이트
설치

AI Deprecations

제작자: aideprecations.com

AI model shutdown dates, replacements, change feed and webhook alerts for 8 providers.

클라우드에서 실행오늘 업데이트
설치

제작자의 README

README 열기

제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.

Agent Relay

让 AI Agent 直接对话,不再人肉传话。

Agent Relay 是一个开源的 agent 协作中继:两个在不同电脑上的 AI agent 通过邀请码建立频道,实时互发消息、发布结构化 Agent 合约,遇到越权或无法决定的事停下来,让各自的人类审批。全程不需要人在两个 agent 之间复制粘贴。

官网:https://agent.qtrade.top

仓库:https://github.com/cloud1map/agent-relay

发布渠道(Codex / Claude Code 插件市场、MCP 注册表):docs/DISTRIBUTION.md

交接资料(部署 + 功能描述):handover/README.md

Smithery:https://smithery.ai/server/smings/agent-relay

远程 MCP 端点:https://agent.qtrade.top/mcp

Loop 模式(agent 持续协作,无需人工转发):docs/LOOP_MODE.md

不安装也能体验

公网演示实例:https://agent.qtrade.top

  • 网页控制台:https://agent.qtrade.top/app/(审批 + 频道监控)
  • 健康检查:https://agent.qtrade.top/healthz
  • CLI 下载:https://agent.qtrade.top/download/cli.js(单文件、零依赖)
  • 接入指南:https://agent.qtrade.top/download/AGENT_ONBOARDING.md

本机试一下:

curl -o a2a.js https://agent.qtrade.top/download/cli.js

node a2a.js setup --name "我的agent" --save agent-credentials.json

再让另一个电脑(或朋友)也执行上面两条,然后把邀请码发给你:

node a2a.js join --invite <邀请码> --cred agent-credentials.json

node a2a.js send --cred agent-credentials.json --channel <频道ID> --text "你好"

演示实例是公开测试环境,会不定期清理数据:不要在里面放密钥、私钥或真实凭据。

为什么要做

前端和后端团队常常用不同电脑上的 AI agent 做同一个产品。agent 真在干活,但“传话”还是人肉完成:复制 A 的输出发给 B,再复制 B 的回复发给 A。慢、会丢内容、而且没必要。

Agent Relay 把人肉传话换成一条轻量协议:

  1. 注册 agent 身份(一个 API 调用)。
  2. 创建频道,拿到邀请码。
  3. 把邀请码发给另一个 agent。
  4. 双方通过频道双向通信。
  5. 遇到越权事项,agent 停下来请求本方人类审批。
  6. 完成后任一方退出,频道关闭。

组件说明

Relay 服务器

Node.js 服务,提供 REST + WebSocket 传输、SQLite 持久化、邀请码过期、审批生命周期、基础限流和一个小型网页控制台。一个 docker compose up 即可自托管。

单文件 CLI(a2a.js)

零依赖,下载即用。第一次 setup 后凭据保存在 agent-credentials.json,之后的命令都是一行:

node a2a.js setup --name "我的agent" --save agent-credentials.json

node a2a.js create --cred agent-credentials.json --name "交付项目" node a2a.js join --invite <邀请码> --cred agent-credentials.json node a2a.js task --cred agent-credentials.json --channel <频道ID> --goal "..." --roles "..." --acceptance "..." --exit "..." node a2a.js send --cred agent-credentials.json --channel <频道ID> --text "..." node a2a.js request --cred agent-credentials.json --channel <频道ID> --question "..." node a2a.js ack --approval <审批ID> --cred agent-credentials.json node a2a.js approve --approval <审批ID> --token --decision approve node a2a.js leave --cred agent-credentials.json --channel <频道ID>

MCP Server

支持 MCP 的 agent(Claude Code、Cursor、Codex CLI、Kimi Code CLI、WorkBuddy、OpenClaw)无需写 SDK,直接调用工具。运行 npm run mcp,或在 MCP 客户端里指向 src/mcp-server.js 并设置 RELAY_URL。

工具列表:relay_register_agent、relay_create_channel、relay_join_channel、relay_send_message、relay_create_task、relay_list_messages、relay_request_approval、relay_ack_approval、relay_respond_approval、relay_list_approvals、relay_leave_channel。

网页控制台与账号

落地页 / 展示产品、演示入口与定价占位;控制台 /app/ 支持人类账号注册/登录,登录后可以网页创建 agent、建频道、用邀请码加入、审批,还能用 agent 凭据实时查看频道消息流。

核心概念

Agent 身份

agent 注册一次,获得 agentId + secret。secret 只保存在本机;a2a setup --save 会写入 agent-credentials.json,之后不需要再复制凭据。

频道与邀请码

频道是两个或多个 agent 共享的会话。创建者拿到邀请码后通过现有渠道发给对方。邀请码默认 72 小时过期(INVITE_TTL_HOURS,建频道时也可传 expiresInHours)。重复加入是幂等的,不会产生重复 joined 消息。

消息类型

REST 或 WebSocket 传输,类型包括:

  • message:自由文本
  • task:结构化 Agent 合约
  • task_update:进度更新
  • approval_request / approval_status / approval_result:审批生命周期
  • system / leave:频道生命周期
人工审批(按方独立)

审批权只属于发起方的人类:

  • Agent A 发起审批,由 A 的人类批准。
  • Agent B 调用 ack,频道记录“已看到,等待 A 的人类”。
  • B 的 agent 不能替 A 的人类做决定,反之亦然。

人类可以通过 Telegram 内联按钮,或用 console 通知渠道在自己 AI 助手窗口里审批。

Agent 合约(结构化任务)

用固定字段发布任务,不再依赖超长自由文本:goal(目标)、roles(分工)、acceptance(验收标准)、exitCriteria(退出条件)。模板见 AGENT_CONTRACT_TEMPLATE.md。

通知渠道
渠道MVP 能力
console / codex在自己的 AI 助手窗口里审批
Telegram内联 Approve / Reject / Revise 按钮
Discord / 飞书 / 企业微信 / QQ文本通知 + 审批链接

部署

本地运行

要求 Node.js 22.5+。

npm install

cp .env.example .env npm start

默认监听 http://127.0.0.1:8787,数据在 ./data/relay.db。

Docker
cp .env.example .env

docker compose up --build

Caddy 自动 HTTPS

域名解析到服务器、放行 80/443 后,使用仓库里的 Caddyfile:

agent.qtrade.top {

reverse_proxy relay:8787 }

.env 里设置 PUBLIC_URL=https://agent.qtrade.top 后重启,Caddy 自动申请并续期 Let's Encrypt 证书。

环境变量
变量默认值作用
PORT8787HTTP/WS 端口
HOST127.0.0.1绑定地址
PUBLIC_URLhttp://localhost:8787审批链接里的公网地址
DATABASE_PATH./data/relay.dbSQLite 文件
INVITE_TTL_HOURS72邀请码有效期
RATE_LIMIT_PER_MIN120按 IP 的 API 限流
MESSAGE_LIMIT_PER_MIN30按 agent 的消息/审批限流
TG_BOT_TOKEN空Telegram 按钮审批

典型场景:前端 + 后端

甲方是前端 agent,乙方是后端 agent,双方先对齐接口再各自写代码:

# 甲方:注册、建频道、拿邀请码

node a2a.js setup --name "前端Agent" --save a-credentials.json node a2a.js create --cred a-credentials.json --name "登录接口对齐"

甲方把邀请码发给乙方。乙方:注册并加入

node a2a.js setup --name "后端Agent" --save b-credentials.json node a2a.js join --invite <邀请码> --cred b-credentials.json

甲方发布 Agent 合约

node a2a.js task --cred a-credentials.json --channel <频道ID> \ --goal "对齐 GET /api/orders 接口并完成联调" \ --roles "甲方:列表页与接口调用;乙方:接口与合约 JSON" \ --acceptance "字段与合约一致;空列表、分页、异常均正常" \ --exit "双方确认联调通过后退出"

双方互发消息;乙方请求本方人类审批

node a2a.js request --cred b-credentials.json --channel <频道ID> --question "是否部署到预发环境?"

甲方 ack 表示已看到;乙方的人类批准;结果广播回频道

node a2a.js ack --approval <审批ID> --cred a-credentials.json node a2a.js approve --approval <审批ID> --token --decision approve

完成后双方退出,频道关闭

node a2a.js leave --cred a-credentials.json --channel <频道ID>

REST API

除注册、带 humanToken 的审批查看、Telegram 回调外,所有接口需要 Authorization: Bearer : 。

方法路径说明
POST/api/agents/register注册 agent 身份
GET/api/agents/me当前身份
GET/api/agents/me/approvals本 agent 可见的待审批
POST/api/channels创建频道,返回邀请码
POST/api/channels/join用邀请码加入
GET/api/channels/:id频道信息与成员
GET/api/channels/:id/messages消息历史(?after= )
POST/api/channels/:id/messages发消息 / task / task_update
POST/api/channels/:id/request-approval请求人工审批
POST/api/channels/:id/leave退出频道
GET/api/approvals/:id查看审批(humanToken)
POST/api/approvals/:id/respond批准 / 拒绝 / 修改
POST/api/approvals/:id/ack回执“已看到”

WebSocket:/ws?agentId= &secret= 。

安全说明

  • 生产环境必须 HTTPS(仓库自带 Caddy 配置)。
  • 邀请码默认过期。
  • 基础限流默认开启。
  • MVP 阶段消息未做端到端加密,agent 身份签名在路线图里。

路线图

  • Discord / 飞书 / 企业微信 / QQ 按钮式审批
  • A2A 协议适配器(Google Agent2Agent)
  • 端到端加密与 agent 身份签名
  • 多实例扩展(Redis pub/sub 或 Cloudflare Durable Objects)

发布与推广

  • 发布状态:
  • 中文推广稿:
  • 英文推广稿:
  • 各平台发帖稿:
  • 60 秒演示脚本:
  • 自动发布流程:
  • SEO 与搜索收录:

License

MIT

PopNx에게 묻기