Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
Gotify notifications and app, client, and message management over MCP and CLI.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
GOTIFY_URL, GOTIFY_CLIENT_TOKEN, GOTIFY_APP_TOKEN, GOTIFY_RMCP_VERSION, GOTIFY_RMCP_REPO, GOTIFY_RMCP_RELEASE_BASE_URL, RUST_LOGLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"rgotify": {
"command": "npx",
"args": [
"-y",
"@dinglebear/rgotify",
"mcp"
],
"env": {
"GOTIFY_URL": "your-value",
"GOTIFY_CLIENT_TOKEN": "your-value",
"GOTIFY_APP_TOKEN": "your-value",
"GOTIFY_RMCP_VERSION": "your-value",
"GOTIFY_RMCP_REPO": "your-value",
"GOTIFY_RMCP_RELEASE_BASE_URL": "your-value",
"RUST_LOG": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add rgotify --env GOTIFY_URL=your-value --env GOTIFY_CLIENT_TOKEN=your-value --env GOTIFY_APP_TOKEN=your-value --env GOTIFY_RMCP_VERSION=your-value --env GOTIFY_RMCP_REPO=your-value --env GOTIFY_RMCP_RELEASE_BASE_URL=your-value --env RUST_LOG=your-value -- npx -y @dinglebear/rgotify mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"rgotify": {
"command": "npx",
"args": [
"-y",
"@dinglebear/rgotify",
"mcp"
],
"env": {
"GOTIFY_URL": "your-value",
"GOTIFY_CLIENT_TOKEN": "your-value",
"GOTIFY_APP_TOKEN": "your-value",
"GOTIFY_RMCP_VERSION": "your-value",
"GOTIFY_RMCP_REPO": "your-value",
"GOTIFY_RMCP_RELEASE_BASE_URL": "your-value",
"RUST_LOG": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"rgotify": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@dinglebear/rgotify",
"mcp"
],
"env": {
"GOTIFY_URL": "your-value",
"GOTIFY_CLIENT_TOKEN": "your-value",
"GOTIFY_APP_TOKEN": "your-value",
"GOTIFY_RMCP_VERSION": "your-value",
"GOTIFY_RMCP_REPO": "your-value",
"GOTIFY_RMCP_RELEASE_BASE_URL": "your-value",
"RUST_LOG": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
GOTIFY_RMCP_VERSION envGOTIFY_RMCP_REPO envGOTIFY_RMCP_RELEASE_BASE_URL envRUST_LOG envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 6 nov 2026
El nombre en el registro se verificó con el dominio dinglebear.ai (el registro comprueba quién es dueño del dominio)
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: GOTIFY_URL, GOTIFY_CLIENT_TOKEN, GOTIFY_APP_TOKEN
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.2.0) llegó al registro hace 3 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, AI Deprecations
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
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.
AI model shutdown dates, replacements, change feed and webhook alerts for 8 providers.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Gotify notifications and app, client, and message management over MCP and CLI.
It exposes one MCP tool, gotify, plus the rgotify CLI. Agents can send notifications, inspect server health, list messages, and manage Gotify apps and clients through stdio MCP, Streamable HTTP MCP, or direct shell commands.
30-second path: set GOTIFY_URL, then run npx -y @dinglebear/rgotify health --json -> start loopback HTTP with GOTIFY_MCP_HOST=127.0.0.1 npx -y @dinglebear/rgotify serve -> call tools/call with {"action":"health"}.
Status: operational RMCP upstream-client server. Write-capable; destructive delete actions are gated by explicit confirmation. HTTP MCP supports loopback dev mode, static bearer tokens, and Google OAuth through lab-auth.
Not for: replacing Gotify, storing notifications independently, generic webhook routing, scheduling reminders, multi-tenant isolation, or passing Gotify tokens through MCP tool arguments.
| Surface | This repo |
|---|---|
| Repository | dinglebear-ai/rgotify |
| Rust crate (Cargo package) | gotify-mcp |
| Binary / CLI | rgotify |
| npm package | @dinglebear/rgotify |
| npm binary aliases | gotify-rmcp, rgotify |
| MCP tool | gotify |
| MCP registry name | ai.dinglebear/rgotify |
| Config home | ~/.gotify on hosts, /data in containers |
| Env prefixes | GOTIFY_*, GOTIFY_MCP_*, GOTIFY_RMCP_* for npm launcher controls |
These names intentionally differ. The npm package and registry entry use the RMCP family name, the Cargo package is gotify-mcp, the git repo is rgotify, and the shipped binary uses the short Rust CLI name rgotify.
| This repo owns | Gotify owns | Explicitly out of scope |
|---|---|---|
| MCP/CLI projection, request validation, auth policy, response shaping, setup checks, destructive gates. | Notification storage, delivery, Gotify users, token issuance, app/client state, upstream API semantics. | Notification scheduling, independent persistence, arbitrary webhook relay behavior, multi-tenant sandboxing, credential brokerage. |
| Path | Command | Best for | Notes | |
|---|---|---|---|---|
| npm / npx | npx -y @dinglebear/rgotify --help | Local MCP clients and quick trials. | Downloads the matching rgotify binary from GitHub Releases. | |
| Release installer | `curl -fsSL https://raw.githubusercontent.com/dinglebear-ai/rgotify/main/scripts/install.sh \ | bash` | Host installs without Node. | Installs rgotify for the current Linux host. |
| Docker / Compose | docker compose up -d | Shared HTTP MCP deployments. | Reads .env and exposes container port 40020. | |
| Build from source | cargo build --release | Development and audits. | Produces target/release/rgotify. | |
| Plugin | claude plugin install plugins/gotify | Claude Code local plugin setup from this checkout. | Ships no hooks — run rgotify setup repair once by hand afterwards. |
Run the stdio MCP server or CLI without a manual binary install:
npx -y @dinglebear/rgotify --help
npx -y @dinglebear/rgotify mcp npx -y @dinglebear/rgotify health --json
The npm package downloads rgotify during postinstall. Override download behavior only when testing packaging:
| Variable | Purpose |
|---|---|
GOTIFY_RMCP_SKIP_DOWNLOAD=1 | Skip postinstall binary download. |
GOTIFY_RMCP_VERSION or GOTIFY_RMCP_BINARY_VERSION | Select the GitHub Release tag. |
GOTIFY_RMCP_REPO | Select the GitHub repo used for release downloads. |
GOTIFY_RMCP_RELEASE_BASE_URL | Select a custom release base URL. |
git clone https://github.com/dinglebear-ai/rgotify
cd rgotify cargo build --release ./target/release/rgotify --help
Minimum supported Rust version: 1.86.
For the safest first call, only GOTIFY_URL is required:
export GOTIFY_URL=https://gotify.example.com
Create tokens in the Gotify web UI before using management or send actions:
export GOTIFY_CLIENT_TOKEN=Cxxxxxxxxxxxxxxxx
export GOTIFY_APP_TOKEN=Axxxxxxxxxxxxxxxx
Token roles:
| Token | Env var | Used for |
|---|---|---|
| Client token | GOTIFY_CLIENT_TOKEN | Read and management actions such as messages, apps, clients, and current user. |
| App token | GOTIFY_APP_TOKEN | Sending notifications with send. |
npx -y @dinglebear/rgotify health --json
GOTIFY_MCP_HOST=127.0.0.1 npx -y @dinglebear/rgotify serve
In another shell:
curl -sf http://127.0.0.1:40020/health
curl -s -X POST http://127.0.0.1:40020/mcp \
-H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"gotify","arguments":{"action":"health"}}}'
{
"mcpServers": { "gotify": { "command": "npx", "args": ["-y", "gotify-rmcp", "mcp"], "env": { "GOTIFY_URL": "https://gotify.example.com", "GOTIFY_CLIENT_TOKEN": "Cxxxxxxxxxxxxxxxx", "GOTIFY_APP_TOKEN": "Axxxxxxxxxxxxxxxx" } } } }
{
"mcpServers": { "gotify": { "type": "http", "url": "http://127.0.0.1:40020/mcp", "headers": { "Authorization": "Bearer ${GOTIFY_MCP_TOKEN}" } } } }
Register Gotify through Labby as an HTTP upstream when sharing one long-running server, or run it directly as stdio for local-only use.
[mcp_servers.gotify]
command = "npx" args = ["-y", "gotify-rmcp", "mcp"]
{
"command": "rgotify", "args": ["mcp"], "env": { "GOTIFY_URL": "https://gotify.example.com" } }
Do not put API keys, passwords, OAuth secrets, SSH keys, Gotify client tokens, Gotify app tokens, 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 | rgotify mcp, npx -y @dinglebear/rgotify mcp | Local child-process MCP clients. |
| MCP HTTP | Supported | rgotify serve, POST /mcp | Streamable HTTP MCP for local or shared server deployments. |
| CLI | Supported | rgotify | Scriptable parity and debugging. |
| Prompts | Supported | send_notification, check_status | Reusable agent prompts. |
| Resource | Supported | gotify://schema/mcp-tool | JSON schema for the gotify tool. |
| REST API | Not shipped | N/A | Gotify already owns the REST API. |
| Web UI | Not shipped | N/A | Gotify already owns the web UI. |
One MCP tool is exposed: gotify. Pass the required action argument to select the operation.
| Action | Description | Required params | Optional params |
|---|---|---|---|
health | Gotify server health check. | none | none |
version | Gotify server version. | none | none |
me | Current authenticated user. | none | none |
messages | List messages. | none | app_id, limit, since |
applications | List applications. | none | none |
clients | List clients. | none | none |
status | Return runtime status, config snapshot, and counters. | none | none |
| Action | Description | Required params | Optional params |
|---|---|---|---|
send | Send a push notification. | message | title, priority, extras |
create_application | Create an application. | name | description, default_priority |
update_application | Update an application. | app_id | name, description, default_priority |
create_client | Create a client. | name | none |
Destructive actions require confirm=true in MCP arguments, --confirm on the CLI, or GOTIFY_ALLOW_DESTRUCTIVE=true in the process environment.
| Action | Description | Required params |
|---|---|---|
delete_message | Delete one message. | id, confirm |
delete_all_messages | Delete all messages. | confirm |
delete_application | Delete an application and its messages. | app_id, confirm |
delete_client | Delete a client. | client_id, confirm |
| Primitive | Name / URI | Purpose |
|---|---|---|
| Tool action | help | Return built-in markdown tool help. |
| Prompt | send_notification | Guide an agent through a notification send. |
| Prompt | check_status | Check health and recent messages. |
| Resource | gotify://schema/mcp-tool | Return the current action-based JSON schema. |
Curated action summaries live here. The current branch source code and docs/INVENTORY.md are the 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.
rgotify health [--json]
rgotify version [--json] rgotify me [--json] rgotify messages [--app-id N] [--limit N] [--since N] [--json] rgotify applications [--json] rgotify clients [--json]
rgotify send [--title T] [--priority N] [--json] rgotify create app [--description D] [--priority N] [--json] rgotify update app [--name N] [--description D] [--priority N] [--json] rgotify create client [--json]
rgotify delete message [--confirm] [--json] rgotify delete all [--confirm] [--json] rgotify delete app [--confirm] [--json] rgotify delete client [--confirm] [--json]
rgotify serve rgotify serve mcp rgotify mcp rgotify doctor [--json] rgotify setup check [--json] rgotify setup repair [--json] rgotify setup install [--json] rgotify setup plugin-hook [--no-repair] [--json]
Hyphenated aliases are accepted for the two-word forms: create-app, update-app, create-client, delete-message, delete-all, delete-app, delete-client.
Known parity exception: MCP action=status is MCP-only observability. The CLI equivalent for operator checks is rgotify doctor --json.
Configuration loads from config.toml when present, then environment variables override those values. On startup, the binary also loads ~/.gotify/.env on hosts or /data/.env in containers without overriding already-set variables.
| Variable | Required | Description |
|---|---|---|
GOTIFY_URL | yes | Gotify server base URL, for example https://gotify.example.com. |
GOTIFY_CLIENT_TOKEN | for management | Gotify client token for read and management actions. |
| GOTIFY_APP_TOKEN | for send | Gotify app token used only to send notifications.
Solo se muestra el principio; lee el resto en el repo