原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。评价和账户功能将在后续阶段推出。
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

Herald

作者:btouchard版本 1.0.0i★ –i在云端运行
注册名称io.github.btouchard/herald

安装

概览

作者提供的说明(英文原文)

Stop copy-pasting between Claude Chat and Claude Code.

PopNx MCP 的三大支柱

这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。

它能帮你做什么

我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。

  • 连接方式: 在云端运行
  • 传输方式: Streamable HTTP
  • 分类: 聊天与邮件

安装

选择你使用的 AI 应用,然后复制设置。

安装之前

你需要

你用的是哪个应用?

在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。

适用于网页版、桌面版和手机版 Claude:

  1. 打开 Settings → Connectors
  2. 点击 Add custom connector
  3. 粘贴下面的地址,然后点击 Add
  4. 如果要求登录,请登录作者的服务
SettingsConnectors1+ Add2https://…3
https://your-herald-instance.example.com/mcp

在终端中运行这条命令

claude mcp add --transport http herald https://your-herald-instance.example.com/mcp

在 Cursor 中打开

或者自己复制设置

粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json

{
  "mcpServers": {
    "herald": {
      "url": "https://your-herald-instance.example.com/mcp"
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

在 VS Code 中打开

或者自己复制设置

粘贴到项目中的 .vscode/mcp.json

{
  "servers": {
    "herald": {
      "type": "http",
      "url": "https://your-herald-instance.example.com/mcp"
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

ChatGPT 只能连接互联网上的服务器:

  1. 打开网页版 ChatGPT → Settings → Connectors (Apps)
  2. 点击 Create 或 Add(部分套餐需要先在 Advanced 中开启 Developer mode)
  3. 粘贴下面的地址,起个名字,然后保存
  4. 如果要求登录,请登录作者的服务
SettingsConnectors1+ Create2https://…3
https://your-herald-instance.example.com/mcp

菜单名称可能因套餐和版本不同而略有差异。

你的选择通过 Cookie 保存在这台设备上,无需账户。

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

它能做什么

我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过 GitHub 账户 btouchard 验证,该账户拥有此仓库

  • … 尚未检查

    仍在维护

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    有许可证

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    端点有响应

    尚未检查;我们会轮流检查各个端点

  • … 尚未检查

    使用 OAuth 登录

    尚未检查;我们会轮流检查各个端点

  • … 尚未检查

    工具描述中没有隐藏指令

    尚未检查;我们会在检查端点时读取工具列表

与“聊天与邮件”中的其他服务器比较i

  • 星标数多于此分类中其他 1773 个服务器的 0%
  • 发布到注册中心的时间比此分类中其他 1773 个服务器的 3% 更新
  • 基础检查结果等于或优于此分类中其他 1773 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

Herald 安全吗?

它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。

它在我的电脑上运行还是在云端?

它在作者的云端运行。通过互联网连接,无需安装,但你发送的内容会经过作者的服务器。

它还在维护吗?

GitHub 仓库最后更新于–,最新版本(1.0.0)于9个月前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。

有什么可以替代它?

同一分类中有:Vexa, emailmd, MCP WhatsApp Cloud

替代选择

同一分类中其他作者的服务器,按星标数排序。

如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

Vexa

作者:Vexa-ai

Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.

在云端运行★ 2,949Apache-2.02个月前更新
安装

emailmd

作者:anypost

Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.

电脑或云端★ 1,385MIT31天前更新
安装

MCP WhatsApp Cloud

作者:codespar

MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API

在你的电脑上运行★ 277MIT5个月前更新
安装

作者的 README

打开 README

按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。

Herald

Code from your phone. Seriously.

The self-hosted MCP bridge between Claude Chat and Claude Code.

Documentation · Quick Start · How It Works · Features · Security · Roadmap

🇫🇷 Version française


You're on the couch. On your phone. You open Claude Chat and type:

*"Refactor the auth middleware in my-api to use JWT instead of session cookies. Run the tests."*

Four minutes later, it's done. Branch created, code refactored, tests passing, changes committed. Your workstation did all the work. You never opened your laptop.

That's Herald.

The Problem

Claude Chat and Claude Code are two brilliant tools that live in completely separate worlds.

Claude ChatClaude Code
WhereBrowser, phone, anywhereYour terminal
WhatConversations, analysis, thinkingReads, writes, and ships actual code
GapCan't touch your codebaseCan't leave your desk

You've been copy-pasting between them. Or worse — you've been waiting until you're back at your desk. That's over.

The Solution

Herald is a self-hosted MCP server that bridges Claude Chat to Claude Code using Anthropic's official Custom Connectors protocol. One Go binary. Zero hacks.

  You (phone/tablet/browser)

│ │ "Add rate limiting to the API" ▼ Claude Chat ──── MCP over HTTPS ────► Herald (your workstation) │ ▼ Claude Code ├── reads your codebase ├── writes the code ├── runs the tests └── commits to a branch

You (terminal) │ │ Claude Code calls herald_push ▼ Claude Code ──── MCP ────► Herald ────► Claude Chat picks it up └── session context, summary, files modified, git branch

The bridge is bidirectional. Claude Chat dispatches tasks to Claude Code, and Claude Code can push session context back to Herald for remote monitoring and continuation from another device.

Your code never leaves your machine. Herald just orchestrates.

How It Works

You (Claude Chat)          Herald                     Claude Code

───────────────── ────── ─────────── "Refactor auth..." ──► start_task → creates branch → spawns Claude Code ──► reads codebase refactors code runs tests commits changes ◄── task_id: herald-a1b2c3d4

"How's it going?" ──► check_task ◄── ✅ Completed (4m 12s) 4 files changed (+127/-23)

"Show me the diff" ──► get_diff ◄── auth/middleware.go +func ValidateJWT(...) -func CheckSession(...)

Three tools. That's the core loop. Start, check, get results — all from wherever you are.

Reverse flow: Claude Code → Herald

Working in your terminal and want to continue from your phone? Claude Code pushes its session to Herald:

You (terminal)             Claude Code                Herald

────────────── ─────────── ────── "Push this to Herald" ──► herald_push → session_id, summary, files, branch ──► linked task created 🔗 visible in list_tasks

You (phone, later) Claude Chat Herald ────────────────── ─────────── ────── "What sessions are list_tasks waiting for me?" ──► (status: linked) ──► 🔗 herald-a1b2c3d4 my-api / feat/auth

"Resume that session" ──► start_task (session_id) ──► picks up where you left off

Features

Core
  • Native MCP bridge — Uses Anthropic's official Custom Connectors protocol. Not a hack, not a wrapper, not a proxy.
  • Async task execution — Start tasks, check progress, get results. Claude Code runs in the background while you do other things.
  • Git branch isolation — Each task runs on its own branch. Your main branch stays untouched.
  • Session resumption — Multi-turn Claude Code conversations. Pick up where you left off.
  • Bidirectional bridge — Claude Code can push session context to Herald via herald_push for remote monitoring and continuation from another device.
Multi-Project
  • Multiple projects — Configure as many projects as you need, each with its own settings.
  • Per-project tool restrictions — Control exactly which tools Claude Code can use. Full sandboxing per project.
Operations
  • MCP push notifications — Herald pushes task updates directly to Claude Chat via MCP server notifications. No polling needed.
  • SQLite persistence — Tasks survive server restarts. Full history, fully searchable.
Engineering
  • Single binary — One Go executable, ~15MB. No Docker, no runtime, no node_modules.
  • Zero CGO — Pure Go. Cross-compiles to Linux, macOS, Windows, ARM.
  • 6 dependencies — chi, mcp-go, modernc/sqlite, uuid, yaml, testify. That's the entire dependency tree.

Quick Start

Prerequisites: Claude Code CLI installed, HTTPS via ngrok (built-in) or a domain with reverse proxy.

1. Install

curl -fsSL https://raw.githubusercontent.com/btouchard/herald/main/install.sh | sh

Or build from source (requires Go 1.26+)

git clone https://github.com/btouchard/herald.git

cd herald && make build

Binary is in ./bin/herald

</details>

2. Configure

mkdir -p ~/.config/herald

cp configs/herald.example.yaml ~/.config/herald/herald.yaml

Edit with your domain and projects (see below)

3. Run

herald serve

Client secret is auto-generated on first start and displayed in the console

Edit ~/.config/herald/herald.yaml with your domain and projects:

server:

host: "127.0.0.1" port: 8420 public_url: "https://herald.yourdomain.com"

auth: client_id: "herald-claude-chat"

projects: my-api: path: "/home/you/projects/my-api" description: "Main backend API" default: true allowed_tools:

  • "Read"
  • "Write"
  • "Edit"
  • "Bash(git *)"
  • "Bash(go *)"
  • "Bash(make *)" git: auto_branch: true branch_prefix: "herald/"

Then connect from Claude Chat:

  1. Claude Chat → Settings → Custom Connectors
  2. Add connector: https://herald.yourdomain.com/mcp
  3. Authenticate via OAuth
  4. Done — Claude Chat now has 10 new tools to control your workstation
Quick Start with ngrok (No Reverse Proxy Needed)

Don't have a domain or reverse proxy? Use ngrok to expose Herald instantly over HTTPS:

1. Get ngrok auth token

Sign up at ngrok.com (free plan works) and grab your auth token from the dashboard.

2. Enable tunnel in config

Edit ~/.config/herald/herald.yaml:

tunnel:

enabled: true provider: "ngrok" authtoken: "2abc..." # or set HERALD_NGROK_AUTHTOKEN env var

domain: "my-herald.ngrok-free.app" # optional: fixed domain (paid plans)

3. Run Herald

herald serve

Tunnel URL appears in the banner:

Tunnel: https://abc123.ngrok-free.app (ngrok)

Connect from Claude Chat using the ngrok URL shown in the banner. That's it — no Traefik, Caddy, or DNS setup required.

Note: The ngrok tunnel is optional. If you already have a reverse proxy (Traefik/Caddy), leave tunnel.enabled: false and use your domain as usual.

Full configuration reference

server:

host: "127.0.0.1" # Always localhost — reverse proxy handles external port: 8420 public_url: "https://herald.yourdomain.com" log_level: "info" # debug, info, warn, error log_file: "" # Optional file path for log output

auth: client_id: "herald-claude-chat"

client_secret is auto-generated — override with HERALD_CLIENT_SECRET env var if needed

access_token_ttl: 1h refresh_token_ttl: 720h # 30 days redirect_uris:

  • "https://claude.ai/oauth/callback"
  • "https://claude.ai/api/oauth/callback"
  • "https://claude.ai/api/mcp/auth_callback"

database: path: "~/.config/herald/herald.db" retention_days: 90

execution: claude_path: "claude" model: "claude-sonnet-4-5-20250929" # Default model for tasks default_timeout: 30m max_timeout: 2h work_dir: "~/.config/herald/work" max_concurrent: 3 max_prompt_size: 102400 # 100KB max_output_size: 1048576 # 1MB env: CLAUDE_CODE_ENTRYPOINT: "herald" CLAUDE_CODE_DISABLE_AUTO_UPDATE: "1"

projects: my-api: path: "/home/you/projects/my-api" description: "Main backend API" default: true allowed_tools:

  • "Read"
  • "Write"
  • "Edit"
  • "Bash(git *)"
  • "Bash(go *)"
  • "Bash(make *)" max_concurrent_tasks: 1 git: auto_branch: true auto_stash: true auto_commit: true branch_prefix: "herald/"

tunnel: enabled: false # Set to true to enable ngrok tunnel provider: "ngrok" authtoken: "" # or set HERALD_NGROK_AUTHTOKEN env var

domain: "" # optional: fixed domain (paid ngrok plans)

rate_limit: requests_per_minute: 200 burst: 100

MCP Tools

Herald exposes 10 tools that Claude Chat discovers automatically via the MCP protocol:

ToolWhat it does
start_taskLaunch a Claude Code task. Returns an ID immediately. Supports priority, timeout, session resumption, and Git branch options.
check_taskCheck status and progress. Optionally include recent output.
get_resultGet the full result of a completed task (summary, full, or json).
list_tasksList tasks with filters — status, project, time range.
cancel_taskCancel a running or queued task. Optionally revert Git changes.
get_diffGit diff for a task's branch or uncommitted changes.
list_projectsList configured projects with Git status.
read_fileRead a file from a project (path-safe — cannot escape project root).
herald_pushPush a Claude Code session to Herald for remote monitoring and continuation from another device.
get_logsView logs and activity history.

Security

Herald expos

只显示了开头部分;其余内容请在仓库中阅读

问 PopNx