Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Apprise notifications over MCP and CLI with authenticated stdio and HTTP transports.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
APPRISE_URL, APPRISE_TOKEN, APPRISE_RMCP_VERSION, APPRISE_RMCP_REPO, APPRISE_RMCP_RELEASE_BASE_URL, RUST_LOG「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"rapprise": {
"command": "npx",
"args": [
"-y",
"@dinglebear/rapprise",
"mcp"
],
"env": {
"APPRISE_URL": "your-value",
"APPRISE_TOKEN": "your-value",
"APPRISE_RMCP_VERSION": "your-value",
"APPRISE_RMCP_REPO": "your-value",
"APPRISE_RMCP_RELEASE_BASE_URL": "your-value",
"RUST_LOG": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add rapprise --env APPRISE_URL=your-value --env APPRISE_TOKEN=your-value --env APPRISE_RMCP_VERSION=your-value --env APPRISE_RMCP_REPO=your-value --env APPRISE_RMCP_RELEASE_BASE_URL=your-value --env RUST_LOG=your-value -- npx -y @dinglebear/rapprise mcp動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"rapprise": {
"command": "npx",
"args": [
"-y",
"@dinglebear/rapprise",
"mcp"
],
"env": {
"APPRISE_URL": "your-value",
"APPRISE_TOKEN": "your-value",
"APPRISE_RMCP_VERSION": "your-value",
"APPRISE_RMCP_REPO": "your-value",
"APPRISE_RMCP_RELEASE_BASE_URL": "your-value",
"RUST_LOG": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"rapprise": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@dinglebear/rapprise",
"mcp"
],
"env": {
"APPRISE_URL": "your-value",
"APPRISE_TOKEN": "your-value",
"APPRISE_RMCP_VERSION": "your-value",
"APPRISE_RMCP_REPO": "your-value",
"APPRISE_RMCP_RELEASE_BASE_URL": "your-value",
"RUST_LOG": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
APPRISE_URL envAPPRISE_RMCP_VERSION envAPPRISE_RMCP_REPO envAPPRISE_RMCP_RELEASE_BASE_URL envRUST_LOG envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名はドメイン dinglebear.ai で確認済みです(レジストリがドメインの所有を確認しています)
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:APPRISE_TOKEN
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.3.0)がレジストリに届いたのは3 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Python MCP
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Local-only Python MCP server for the Files.com API.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Apprise notifications over MCP and CLI with authenticated stdio and HTTP transports.
It exposes one MCP tool, apprise, plus the rapprise CLI. Agents can send tagged notifications through a preconfigured Apprise server, run one-off Apprise URL sends, and check upstream health through stdio MCP, Streamable HTTP MCP, or direct shell commands.
30-second path: run npx -y @dinglebear/rapprise health --json -> start loopback HTTP with APPRISE_MCP_HOST=127.0.0.1 npx -y @dinglebear/rapprise serve -> call tools/call with {"action":"health"}.
Status: operational RMCP upstream-client server. Write-capable; notification sends are intentional side effects. HTTP MCP supports loopback dev mode, static bearer tokens, and Google OAuth through lab-auth.
Not for: replacing Apprise API, storing notification destinations in this repo, scheduling reminders, building a generic webhook relay, multi-tenant isolation, or passing upstream Apprise bearer tokens through MCP tool arguments.
| Surface | This repo |
|---|---|
| Repository | apprise-rmcp |
| Rust crate | apprise-mcp |
| Binary / CLI | rapprise |
| npm package | @dinglebear/rapprise |
| npm binary aliases | apprise-rmcp, rapprise |
| MCP tool | apprise |
| Config home | ~/.apprise on hosts, /data in containers |
| Env prefixes | APPRISE_*, APPRISE_MCP_*, APPRISE_RMCP_* for npm launcher controls |
The repo and npm package use the RMCP family name, while the shipped binary uses the short Rust CLI name rapprise.
notify_url.send_alert prompt for critical alert workflows.| This repo owns | Apprise owns | Explicitly out of scope |
|---|---|---|
| MCP/CLI projection, request validation, auth policy, response shaping, setup checks, and transport wiring. | Notification delivery, configured destinations, tags, delivery backend credentials, upstream API semantics. | Destination storage, scheduling, retry policy beyond upstream behavior, multi-tenant sandboxing, arbitrary webhook relay behavior. |
| Path | Command | Best for | Notes |
|---|---|---|---|
| npm / npx | npx -y @dinglebear/rapprise --help | Linux/Windows x86_64 clients. | Verifies the release archive SHA-256 before atomic install. |
| Release installer | Verified installer procedure | Linux x86_64 without Node. | Verifies checksum and offline provenance before executing installer code. |
| Docker / Compose | docker compose up -d | Shared HTTP MCP deployments. | Reads .env and exposes container port 40050. Needs the external network first — see Deployment. |
| Build from source | cargo build --release | Development and audits. | Produces target/release/rapprise. |
| Plugin | just build-plugin && claude plugin install ./plugins/apprise | Claude Code from this checkout. | Bundled rapprise stdio plugin. Ships no hooks. |
Releases publish SHA-256 files and offline GitHub build-provenance bundles. The installers verify both the checksum and provenance identity with GitHub CLI 2.68+. The npm launcher supports x86_64 Linux and Windows release assets.
Run the stdio MCP server or CLI without a manual binary install:
npx -y @dinglebear/rapprise --help
npx -y @dinglebear/rapprise mcp npx -y @dinglebear/rapprise health --json
The npm package downloads rapprise during postinstall. Override download behavior only when testing packaging:
| Variable | Purpose |
|---|---|
APPRISE_RMCP_SKIP_DOWNLOAD=1 | Skip postinstall binary download. |
APPRISE_RMCP_VERSION or APPRISE_RMCP_BINARY_VERSION | Select the GitHub Release tag. |
APPRISE_RMCP_REPO | Select the GitHub repo used for release downloads. |
APPRISE_RMCP_RELEASE_BASE_URL | Select a custom release base URL. |
Verified binary installation is fail-closed and pins the repository, release workflow, and source tag. Install gh 2.68 or newer before using npm or the release installer.
Download the installer and its verification material without executing it, then verify both integrity and provenance before running it:
Replace version with the release tag you want; v0.2.0 is current.
version=v0.2.0
base="https://github.com/dinglebear-ai/rapprise/releases/download/${version}/rapprise-installer.sh" curl -fsSLO "$base" curl -fsSLO "$base.sha256" curl -fsSLO "$base.sigstore.json" sha256sum --check rapprise-installer.sh.sha256 gh attestation verify rapprise-installer.sh \ --repo dinglebear-ai/rapprise \ --bundle rapprise-installer.sh.sigstore.json \ --signer-workflow dinglebear-ai/rapprise/.github/workflows/release.yml \ --source-ref "refs/tags/${version}" \ --deny-self-hosted-runners APPRISE_RMCP_VERSION="$version" bash rapprise-installer.sh
The --repo and --signer-workflow values must match the identity recorded in the attestation at build time. Releases cut before the repository moved to the dinglebear-ai org are attested as jmagar/rapprise; use dinglebear-ai/rapprise for releases cut afterwards.
The npm launcher supports Windows x86_64 only when GitHub CLI 2.68+ is installed and gh.exe is available on PATH; provenance verification is not skipped.
git clone https://github.com/dinglebear-ai/rapprise
cd rapprise cargo build --release ./target/release/rapprise --help
Minimum supported Rust version: 1.90. Rust edition 2021. The Cargo workspace has two members: the root apprise-mcp package and xtask.
The default upstream is http://localhost:8000.
docker run --rm -p 8000:8000 caronc/apprise:latest
Use APPRISE_URL when the API server is elsewhere:
export APPRISE_URL=http://198.51.100.2:8766
Set APPRISE_TOKEN only when your Apprise API server requires bearer auth:
export APPRISE_TOKEN=...
npx -y @dinglebear/rapprise health --json
APPRISE_MCP_HOST=127.0.0.1 npx -y @dinglebear/rapprise serve
In another shell:
curl -sf http://127.0.0.1:40050/health
curl -s -X POST http://127.0.0.1:40050/mcp \
-H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"apprise","arguments":{"action":"health"}}}'
{
"mcpServers": { "apprise": { "command": "npx", "args": ["-y", "apprise-rmcp", "mcp"], "env": { "APPRISE_URL": "http://localhost:8000" } } } }
{
"mcpServers": { "apprise": { "type": "http", "url": "http://127.0.0.1:40050/mcp", "headers": { "Authorization": "Bearer ${APPRISE_MCP_TOKEN}" } } } }
Register Apprise through Labby as an HTTP upstream when sharing one long-running server, or run it directly as stdio for local-only use.
[mcp_servers.apprise]
command = "npx" args = ["-y", "apprise-rmcp", "mcp"]
{
"command": "rapprise", "args": ["mcp"], "env": { "APPRISE_URL": "http://localhost:8000" } }
Do not put APPRISE_TOKEN, OAuth secrets, SSH keys, passwords, or upstream bearer tokens in MCP tool arguments. Use env, config files, or the MCP client's secret storage.
| Surface | Status | Entry point | Purpose |
|---|---|---|---|
| MCP stdio | Supported | rapprise mcp, npx -y @dinglebear/rapprise mcp | Local child-process MCP clients. |
| MCP HTTP | Supported | rapprise serve, POST /mcp | Streamable HTTP MCP for local or shared server deployments. |
| Liveness | Supported | GET /health | Always unauthenticated. |
| Readiness / status | Supported | GET /ready, GET /status | Behind the same auth layer as /mcp. |
| OAuth discovery | Conditional | /mcp/.well-known/* and lab-auth routes | Mounted only when auth_mode = oauth. |
| CLI | Supported | rapprise | Scriptable parity and debugging. |
| Prompt | Supported | send_alert | Reusable critical-alert workflow. |
| REST API | Not shipped | N/A | Apprise API already owns the REST API. |
| Web UI | Not shipped | N/A | Apprise API already owns the web UI. |
One MCP tool is exposed: apprise. Pass the required action argument to select the operation.
| Action | Description | Required params | Optional params |
|---|---|---|---|
health | Check Apprise API server health. | none | none |
status | Return authenticated deployment and runtime status. | none | none |
help | Return built-in markdown tool help. | none | none |
| Action | Description | Required params | Optional params |
|---|---|---|---|
notify | Send to a configured Apprise tag, or all configured services when tag is omitted. | body | tag, title, type |
notify_url | Send a stateless one-off notification to one or more Apprise URL schemas. | urls, body | title, type |
| Type | Meaning |
|---|---|
info | Informational notification. |
success | Successful operation. |
warning | Non-critical warning. |
failure | Critical failure or error. |
curl -s -X POST http://127.0.0.1:40050/mcp \
-H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"apprise","arguments":{"action":"health"}}}'
{
"name": "apprise", "arguments": { "action": "notify", "body": "Deployment succeeded", "tag": "ops", "title": "Deploy complete", "type": "success" } }
Curated action summaries live here. docs/INVENTORY.md is the current source of truth for complete parameters until a generated docs/MCP_SCHEMA.md is added.
The CLI calls the same service methods as the MCP tool.
rapprise health [--json]
rapprise notify [--tag TAG] [--title T] [--type info|success|warning|failure] [--json] rapprise notify-url [--title T] [--type info|success|warning|failure] [--json]
rapprise serve # Streamable HTTP MCP on :40050 rapprise serve mcp # same as serve rapprise mcp # stdio MCP rapprise doctor [--json] # pre-flight environment validation rapprise setup check # read-only audit of appdata/env rapprise setup repair # idempotent: create missing setup files rapprise setup install # copy this binary into ~/.local/bin rapprise setup plugin-hook [--no-repair]
rapprise help # or --help / -h ra
冒頭だけを表示しています。続きはリポジトリで読めます