mcpField
A
Alphorn

Alphorn

本地服务
docs.alphorn.dev通信协作02 周前更新

关于 Alphorn

Alphorn MCP 服务将 Alphorn 通知路由器接入 AI Agent 工作流,适用于需要获知任务完成、失败或等待决策的场景。通知通过已配置的渠道发送,并支持托管服务或自托管 Alphorn。

主要功能

  1. 01通过 send_notification 发送通知
  2. 02支持标题、优先级和标签
  3. 03沿 Alphorn 配置的规则路由通知
  4. 04可连接托管或自托管 Alphorn

适用场景

  1. 01在编码任务完成时发送通知
  2. 02任务失败或受阻时提醒相关人员
  3. 03Agent 需要人工决策时发送提示
  4. 04按优先级将告警路由到不同渠道

MCP 相关

MCP 服务向客户端提供 send_notification 工具,将消息发送至 Alphorn webhook。通知可按 Alphorn 设置路由到 Slack、Telegram、Discord、电子邮件、SMS 或推送等渠道。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"alphorn-dev": {
"command": "npx",
"args": [
"-y",
"@alphorn/mcp"
],
"env": {
"ALPHORN_WEBHOOK_URL": "<ALPHORN_WEBHOOK_URL>",
"ALPHORN_API_KEY": "<ALPHORN_API_KEY>"
}
}
}
}
启动命令npx -y @alphorn/mcp
需要配置的环境变量
ALPHORN_WEBHOOK_URL密钥Webhook Endpoint URL, e.g. https://app.alphorn.dev/n/V1StGXR8_Z5jdHi6B-myT
ALPHORN_API_KEY密钥Webhook API key (alp_...), if the webhook requires one

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@alphorn/mcp0.1.1

工具

1

收录的工具列表 · 更新于 2 周前

参数类型必填说明
tagsarray否用户可用于筛选和路由的标签,例如 ["ai-agent", "completed"]。
titlestring否简短标题。以项目名称开头,例如 "my-app - tests passing"。
messagestring是用一到两句话说明发生了什么,以及需要用户做什么。
priorityinteger否1(最低)到 5(紧急)。完成时使用 2,需要用户提供信息时使用 3,受阻或失败时使用 4。

详细介绍

Alphorn MCP 服务

Alphorn 的 MCP 服务。Alphorn 是一款开源通知路由器。它为 AI Agent(Claude Code、Claude Desktop、Cursor、Codex,以及任何其他 MCP 客户端)提供 send_notification 工具,让 Agent 能通过你在 Alphorn 中配置的任意渠道通知你任务已完成、失败或需要你做出决定;支持 Slack、Telegram、Discord、电子邮件、SMS、推送等。

支持托管服务 app.alphorn.dev 和可自托管的 Alphorn。

设置

  1. 在 Alphorn 中创建一个 webhook,并复制其 Endpoint URL;如果你启用了 Require API key,还要复制 API 密钥(文档)。
  2. 使用两个环境变量将服务添加到你的 MCP 客户端:
变量值
ALPHORN_WEBHOOK_URLEndpoint URL,例如 https://app.alphorn.dev/n/V1StGXR8_Z5jdHi6B-myT
ALPHORN_API_KEYWebhook API 密钥(alp_...)。如果 webhook 不需要密钥,请不设置此变量。
Claude Code
claude mcp add alphorn -s user \
  -e ALPHORN_WEBHOOK_URL=https://app.alphorn.dev/n/V1StGXR8_Z5jdHi6B-myT \
  -e ALPHORN_API_KEY=alp_... \
  -- npx -y @alphorn/mcp
Claude Desktop(一键安装包)

从最新版本下载 alphorn.mcpb 并打开。Claude Desktop 会提示你输入 Endpoint URL 和 API 密钥。

Claude Desktop、Cursor 和其他使用 JSON 配置的客户端

将以下内容添加到 claude_desktop_config.json、~/.cursor/mcp.json 或客户端的 MCP 配置中:

{
  "mcpServers": {
    "alphorn": {
      "command": "npx",
      "args": ["-y", "@alphorn/mcp"],
      "env": {
        "ALPHORN_WEBHOOK_URL": "https://app.alphorn.dev/n/V1StGXR8_Z5jdHi6B-myT",
        "ALPHORN_API_KEY": "alp_..."
      }
    }
  }
}
OpenAI Codex CLI
# ~/.codex/config.toml
[mcp_servers.alphorn]
command = "npx"
args = ["-y", "@alphorn/mcp"]
env = { ALPHORN_WEBHOOK_URL = "https://app.alphorn.dev/n/V1StGXR8_Z5jdHi6B-myT", ALPHORN_API_KEY = "alp_..." }

工具

send_notification
参数类型必填描述
messagestring是说明发生了什么,以及 Agent 需要你做什么(最多 4,000 个字符)
titlestring否简短标题,例如 my-app - tests passing(最多 200 个字符)
priorityinteger 1-5否2 = 已完成,3 = 需要输入,4 = 受阻或失败,5 = 紧急
tagsstring[]否用于在 Alphorn 中筛选和路由的标签,例如 ["ai-agent", "completed"]

此工具封装了 Alphorn 的发送端点。若要直接使用 HTTP,请参阅 API 参考和 OpenAPI 3.1 规范。

使用 Alphorn 的筛选器来决定每条通知的发送位置,例如仅在优先级为 4 及以上时发送 SMS。

开发

pnpm install
pnpm test   # builds, then runs the tests against a local fake endpoint
发布
  1. 更新 package.json、server.json(两个字段)、manifest.json 和 src/server.ts 中的 VERSION。
  2. npm publish --access public
  3. 推送 v<version> 标签(或运行 Publish to MCP Registry 工作流):通过 GitHub OIDC 将 server.json 发布到 MCP Registry
  4. 执行 pnpm bundle,然后将 alphorn.mcpb 附加到 GitHub 发行版

许可证

AGPL-3.0-or-later

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。