MCP Server
The Notifery MCP server lets AI agents send push notifications through the Model Context Protocol. It exposes a send_notification tool that maps directly to the Notifery API, so any MCP-compatible client (Claude Code, Claude Desktop, Cursor, etc.) can notify you about task completions, errors, and progress updates.
Prerequisites
Section titled “Prerequisites”- A Notifery account with at least one zone and an API key (see Getting Started)
- Node.js >= 18
- Git
Installation
Section titled “Installation”Clone the repository and build:
git clone https://github.com/notifery/mcp.git notifery-mcpcd notifery-mcpnpm installnpm run buildThen configure your MCP client to run the server. The exact config location depends on your client (Claude Code, Claude Desktop, Cursor, etc.), but the server entry is the same:
{ "mcpServers": { "notifery": { "command": "node", "args": ["/path/to/notifery-mcp/build/index.js"], "env": { "NOTIFERY_API_KEY": "your-api-key-here" } } }}Replace /path/to/notifery-mcp with the absolute path where you cloned the repository.
Environment variables
Section titled “Environment variables”| Variable | Required | Description |
|---|---|---|
NOTIFERY_API_KEY | Yes | Your zone API key. |
NOTIFERY_API_URL | No | API base URL. Defaults to https://api.notifery.com. |
NOTIFERY_DEFAULT_GROUP | No | Default group alias. Used when no group is passed to the tool. |
DEBUG | No | Set to true to enable debug logging. |
Tool reference
Section titled “Tool reference”The server exposes a single tool: send_notification.
Parameters
Section titled “Parameters”| Parameter | Type | Required | Description |
|---|---|---|---|
title | string | Yes | Notification title. 1-255 characters. |
message | string | No | Body text. Max 2048 characters. |
group | string | No | Group alias. Falls back to the configured default group. |
code | number | No | Status code. 0 = success, >0 = error. |
duration | number | No | Duration in milliseconds (positive integer). Use to report how long a task took. |
ttl | number | No | Auto-expiry in seconds (60-31536000). The notification is deleted after this period. |
icon | string | No | Icon name override. |
iconColor | string | No | Hex color for the icon (e.g. ff0000). |
Response
Section titled “Response”On success:
{ "success": true, "message": "Notification sent" }On failure, returns an error with success: false and an error message.
Usage examples
Section titled “Usage examples”Task completion
Section titled “Task completion”Send a notification: title "Build finished", message "All 342 tests passed",code 0, duration 48200Error notification
Section titled “Error notification”Send a notification: title "Deploy failed", message "Container health checktimed out after 120s", code 1Progress update
Section titled “Progress update”Send a notification: title "Migration: 450/1200 rows processed",code 0, ttl 300