# Alphorn [Health: Active]

**Category:** 💬 Communication  
**Repository:** https://github.com/alphorn-dev/mcp  
**GitHub Stars:** 0  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/alphorn

## Description
Let AI agents notify you on Slack, Telegram, email, SMS, or push via an Alphorn webhook.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "alphorn": {
    "command": "npx",
    "args": ["-y","@alphorn/mcp"],
    "env": {
      "ALPHORN_WEBHOOK_URL": "",
      "ALPHORN_API_KEY": ""
    }
  }
}
```

**Requires environment variables:** `ALPHORN_WEBHOOK_URL`, `ALPHORN_API_KEY` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What Alphorn MCP server does

The Alphorn MCP server connects MCP-compatible AI agents to Alphorn, an open-source notification router. It gives an agent a `send_notification` tool for reporting events or requesting a decision from a person. Alphorn then routes each notification according to the webhook's configuration and filters.

Supported destination types named in the project include Slack, Telegram, Discord, email, SMS, and push notifications. Routing is handled by Alphorn rather than by the MCP server itself. For example, Alphorn filters can send only high-priority notifications to SMS while delivering other messages through a different channel. This places the server in the Communication category for workflows where an agent needs to reach someone outside its chat session.

## How it works

The server wraps Alphorn's notification send endpoint. When the agent calls `send_notification`, it supplies a required message and can optionally provide a short title, a priority from 1 to 5, and an array of tags. Messages can contain up to 4,000 characters, while titles can contain up to 200 characters.

Priority values provide a convention for notification urgency: 2 represents completion, 3 indicates that input is needed, 4 represents a blocked or failed task, and 5 is urgent. Tags can be used by Alphorn filters for routing and selection. The MCP process sends the request to the webhook URL configured in its environment.

## Setup and configuration

Create a webhook in Alphorn and copy its Endpoint URL. If the webhook has API-key protection enabled, also copy its key. Set `ALPHORN_WEBHOOK_URL` to the endpoint and set `ALPHORN_API_KEY` to the key. The API-key variable can be omitted when the webhook does not require authentication.

The package can be launched with `npx -y @alphorn/mcp`. Claude Code can register it with the `claude mcp add` command. Claude Desktop also has a downloadable `alphorn.mcpb` bundle that prompts for the endpoint and key. For Claude Desktop, Cursor, and other JSON-configured clients, add the server command and environment values to the client's MCP configuration. OpenAI Codex CLI uses its TOML MCP configuration.

The endpoint may belong to Alphorn's hosted service at `app.alphorn.dev` or to a self-hosted Alphorn installation. The repository's development instructions use pnpm for installation and testing, including tests against a local fake endpoint.

## Tools and capabilities

The Alphorn MCP server provides one tool:

- `send_notification`: Sends a notification through the configured Alphorn webhook. It requires `message` and accepts optional `title`, `priority`, and `tags` values.

The server does not define separate tools for individual delivery channels. Channel selection and routing rules are configured in Alphorn, including filters based on priority or tags. Direct HTTP callers can use Alphorn's API instead, but MCP clients use the exposed tool.

## Limitations and notes

A webhook must be created before the server can send notifications. Delivery destinations depend on the channels and routing rules configured in Alphorn; adding this server alone does not configure Slack, Telegram, Discord, email, SMS, or push delivery.

The tool accepts one message at a time and enforces the documented message and title limits. An API key is needed only when the selected webhook requires one. The project is licensed under AGPL-3.0-or-later.

_Full upstream README: https://allmcps.com/mcp/alphorn/readme_

