Pushover MCP Server: Push Instant Device Notifications
Send instant notifications to your devices with the Pushover MCP server for reliable, real-time alerts and easy setup.
npx -y @ashiknesin/pushover-mcpOverview
The Pushover MCP Server is a small HTTP service that exposes Pushover push-notification functionality through a Model Context Protocol (MCP)–compatible endpoint. It lets model-driven agents, automation pipelines, or developer tools trigger immediate notifications to phones, tablets, and desktops via Pushover without embedding Pushover credentials into each client. By operating as an MCP tool, the server can be invoked by language models or other components that support the MCP call pattern.
This server is useful when you need reliable, low-latency alerts from automated systems (CI/CD pipelines, monitoring, chatbots, or model agents). Instead of implementing direct calls to the Pushover API in many places, you centralize notification logic and credentials in a single, auditable microservice that exposes a simple JSON API compatible with model tooling.
Features
- MCP-compatible HTTP endpoint to send notifications programmatically
- Thin bridge to the Pushover API (user token + app token)
- Support for common Pushover fields: message, title, device, priority, sound, URL
- Environment-driven configuration for credentials and port
- Simple install/run options (Docker and source-based)
- Minimal dependencies and lightweight runtime suitable for containers
Installation / Configuration
Prerequisites:
- A Pushover account and application token (https://pushover.net/)
- A Pushover user key (or group key) for the recipient(s)
- Docker (optional) or Node.js (or the runtime the project uses)
Clone the repository and run the server. The examples below assume the repository includes a Dockerfile and a Node-based start script (package.json). Adjust commands for the actual project runtime if different.
- Environment variables (example .env)
# Pushover credentials
PUSHOVER_TOKEN=your-pushover-app-token
PUSHOVER_USER=your-pushover-user-key
# Optional configuration
PORT=8080
LOG_LEVEL=info
- Run with Docker
# Build (if Dockerfile present)
# Run container, passing env file
- Run from source (Node.js example)
# install deps (if package.json exists)
# start server
- Export environment variables (shell)
Endpoints and request format (example)
- POST /message — send a push notification
- Content-Type: application/json
- Body: JSON with at least
message. Additional fields map to common Pushover parameters.
Example request:
Example response (success):
If your deployment requires authentication for the MCP endpoint, configure API keys or network restrictions in front of the service (reverse proxy, API gateway, or firewall).
Available Resources
- GitHub repository: https://github.com/ashiknesin/pushover-mcp
- Pushover API docs: https://pushover.net/api
- MCP (Model Context Protocol) — consult your model/tooling documentation for how to register external HTTP tools compatible with MCP calls
Consider exposing the server behind an internal API gateway if you want RBAC, rate limiting, or auditing. Logs should be monitored to track failed deliveries or invalid requests.
Use Cases
CI/CD notifications: Send build success/failure messages to on-call engineers or channel devices when pipelines finish. Example: The build system POSTs a short JSON payload to /message including title, message, and URL to the build log.
Model-driven alerts: A language model agent that detects actionable events (e.g., security alerts, anomalous metrics) invokes the MCP server to notify the responsible engineer in real time.
Home automation: Trigger device notifications from scripts or agents controlling home devices (e.g., “Garage door opened” pushed to a phone).
On-call escalation: Integrate with orchestration tools so the server sends higher-priority messages (priority > 0) and targets the currently on-call user device.
Monitoring and incident triage: Convert alerts from Prometheus, Datadog, or custom monitors into Pushover notifications with a concise title and URL for quick triage.
Field mapping quick reference
| JSON field | Pushover param | Description |
|---|---|---|
| message | message | Main notification body (required) |
| title | title | Short heading shown with the message |
| device | device | Specific device identifier (optional) |
| priority | priority | -2..2, controls alert behavior |
| sound | sound | Named Pushover sound (optional) |
| url | url | Supplementary link to show with notification |
| url_title | url_title | Title for the supplementary link |
Keep in mind rate limits and post size limits enforced by Pushover. For production use, secure the MCP endpoint, rotate credentials, and monitor delivery status returned in API responses.