A Pushover notification MCP server for AI agents, built in Go. Send push notifications and manage emergency-priority messages via the Pushover API.
- Send notifications: Push messages to any Pushover device with full parameter support (priority, sounds, HTML, URLs, TTL)
- Emergency priority: Send priority=2 notifications that repeat until acknowledged, with receipt tracking
- Receipt management: Poll receipt status, cancel individual receipts, or cancel by tag
- Simple configuration: Just two environment variables (
PUSHOVER_TOKEN,PUSHOVER_USER_KEY)
| Tool | Description |
|---|---|
pushover_send_message |
Send a push notification with configurable priority, sound, formatting, and more |
pushover_check_receipt |
Check the status of an emergency-priority notification (acknowledged, expired, etc.) |
pushover_cancel_receipt |
Cancel retries for a specific emergency-priority notification |
pushover_cancel_receipt_by_tag |
Cancel all emergency-priority notifications matching a tag |
go install github.com/freeformz/pushover-mcp@latestOr pull the Docker image:
docker pull ghcr.io/freeformz/pushover-mcp:latestYou need a Pushover application token and your user key.
Add to your project's .mcp.json:
{
"mcpServers": {
"pushover": {
"type": "stdio",
"command": "pushover-mcp",
"args": ["mcp"],
"env": {
"PUSHOVER_TOKEN": "your-app-token",
"PUSHOVER_USER_KEY": "your-user-key"
}
}
}
}{
"mcpServers": {
"pushover": {
"type": "stdio",
"command": "docker",
"args": ["run", "--rm", "-i", "-e", "PUSHOVER_TOKEN", "-e", "PUSHOVER_USER_KEY", "ghcr.io/freeformz/pushover-mcp:latest", "mcp"],
"env": {
"PUSHOVER_TOKEN": "your-app-token",
"PUSHOVER_USER_KEY": "your-user-key"
}
}
}
}| Priority | Name | Behavior |
|---|---|---|
| -2 | Lowest | No notification, badge count only |
| -1 | Low | No sound/vibration |
| 0 | Normal | Default sound and vibration |
| 1 | High | Bypasses quiet hours, highlighted in red |
| 2 | Emergency | Repeats until acknowledged (requires retry and expire) |
- Send a message with
priority=2,retry(min 30s), andexpire(max 10800s) - You'll receive a receipt ID in the response
- Poll the receipt with
pushover_check_receiptto check acknowledgment - Cancel with
pushover_cancel_receiptif no longer needed
| Variable | Required | Description |
|---|---|---|
PUSHOVER_TOKEN |
Yes | Application API token from pushover.net/apps |
PUSHOVER_USER_KEY |
Yes | Your user key from pushover.net |
MIT