What Apprise RMCP MCP server does
Apprise RMCP MCP server projects an upstream Apprise API into MCP and command-line interfaces. It does not own notification destinations or delivery backends; those remain configured in Apprise. The server validates requests, applies its authentication policy, shapes responses, and forwards supported operations upstream.
The MCP surface exposes one tool named apprise. Agents can use it to send notifications through tags defined by the Apprise API, submit a one-off notification using an Apprise URL schema, or check upstream health. The package also exposes a send_alert prompt for critical alert workflows. Direct shell commands are available through the rapprise CLI, including health, setup, and doctor operations.
How it works
Apprise RMCP MCP server can run as a local child process over MCP stdio or as a Streamable HTTP service. The stdio entry point is rapprise mcp; the HTTP entry point is rapprise serve, with MCP requests sent to /mcp. A separate unauthenticated /health endpoint provides liveness information, while /ready is available for readiness or status checks.
The default upstream Apprise API address is http://localhost:8000. Set APPRISE_URL when the API runs elsewhere, and set APPRISE_TOKEN when that upstream requires bearer authentication. Notification sends are write operations with intentional external side effects, so clients should treat tool calls accordingly.
HTTP deployments support loopback development mode, static bearer tokens, and Google OAuth through lab-auth. The README also documents shared HTTP deployment with Docker Compose and direct local use through stdio.
Setup and configuration
Install with npx -y @dinglebear/rapprise, use a verified release installer, build the Rust binary, or run the supplied Docker Compose setup. The npm package downloads a platform release during installation and supports x86_64 Linux and Windows release assets. Source builds require Rust 1.90 or newer.
A minimal local setup starts an Apprise API, optionally exports APPRISE_URL, and checks connectivity with:
npx -y @dinglebear/rapprise health --json
For HTTP MCP, bind the service to loopback with APPRISE_MCP_HOST=127.0.0.1 and call /mcp using JSON-RPC. Client configuration can provide the stdio command and environment variables, or an HTTP URL with an authorization header. Keep upstream tokens, OAuth secrets, passwords, and other credentials in environment variables, configuration files, or client secret storage rather than MCP tool arguments.
Tools and capabilities
The Apprise RMCP MCP server provides:
- Tagged notification sends using destinations configured in the upstream Apprise API.
- One-off sends addressed with Apprise URL schemas through
notify_url.
- Upstream health checks through the MCP tool and CLI.
- The
send_alert prompt for critical notification workflows.
- Setup and diagnostic commands for local plugin or runtime checks.
- Stdio MCP, Streamable HTTP MCP, and direct shell execution.
Limitations and notes
Apprise RMCP MCP server does not replace the Apprise API and does not store destinations in this repository. It does not schedule reminders, implement a generic webhook relay, provide multi-tenant isolation, or add retry behavior beyond the upstream service. Upstream delivery semantics, configured tags, destination credentials, and notification backends remain Apprise responsibilities.
Do not pass upstream Apprise bearer tokens through tool arguments. HTTP liveness is unauthenticated, so deployments should account for that behavior when exposing the service beyond a trusted local environment.