Gotify RMCP
ภาพรวม
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Rust MCP server and CLI for Gotify push notifications and message management.
สามเสาของ PopNx MCP
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
- เสียงผู้ใช้iยังไม่มีรีวิวรีวิวจากคนที่เข้าสู่ระบบ คะแนนเฉลี่ยขึ้นเมื่อมีรีวิว
- ผลตรวจเบื้องต้นของเราiผ่าน 2 จาก 3 ข้อตรวจจากข้อมูลที่เปิดอยู่ ยังไม่ได้สแกนโค้ด
- การใช้งานiยังใหม่มาก★ 2 (ดาวเป็นของรีโปอื่น)
ใช้ทำอะไรได้
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
- การเชื่อมต่อ: รันบนเครื่อง
- ช่องทาง (transport): stdio
- หมวด: เครื่องมือนักพัฒนา
- ต้องใส่ค่าเหล่านี้: GOTIFY_URL, GOTIFY_CLIENT_TOKEN, GOTIFY_APP_TOKEN
ติดตั้ง
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ก่อนติดตั้ง
- ผลตรวจเบื้องต้น: ผ่าน 2 จาก 3 ข้อ
- รันในเครื่องคุณด้วยสิทธิ์ของผู้ใช้คุณ (ไฟล์ อินเทอร์เน็ต แอปต่าง ๆ)
- ค่าที่คุณต้องใส่เอง:
GOTIFY_URL,GOTIFY_CLIENT_TOKEN,GOTIFY_APP_TOKEN,GOTIFY_RMCP_VERSION,GOTIFY_RMCP_REPO,GOTIFY_RMCP_RELEASE_BASE_URL,RUST_LOG
ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"gotify-rmcp": {
"command": "npx",
"args": [
"-y",
"gotify-rmcp",
"mcp"
],
"env": {
"GOTIFY_URL": "ใส่ค่าของคุณ",
"GOTIFY_CLIENT_TOKEN": "ใส่ค่าของคุณ",
"GOTIFY_APP_TOKEN": "ใส่ค่าของคุณ",
"GOTIFY_RMCP_VERSION": "ใส่ค่าของคุณ",
"GOTIFY_RMCP_REPO": "ใส่ค่าของคุณ",
"GOTIFY_RMCP_RELEASE_BASE_URL": "ใส่ค่าของคุณ",
"RUST_LOG": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add gotify-rmcp --env GOTIFY_URL='ใส่ค่าของคุณ' --env GOTIFY_CLIENT_TOKEN='ใส่ค่าของคุณ' --env GOTIFY_APP_TOKEN='ใส่ค่าของคุณ' --env GOTIFY_RMCP_VERSION='ใส่ค่าของคุณ' --env GOTIFY_RMCP_REPO='ใส่ค่าของคุณ' --env GOTIFY_RMCP_RELEASE_BASE_URL='ใส่ค่าของคุณ' --env RUST_LOG='ใส่ค่าของคุณ' -- npx -y gotify-rmcp mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"gotify-rmcp": {
"command": "npx",
"args": [
"-y",
"gotify-rmcp",
"mcp"
],
"env": {
"GOTIFY_URL": "ใส่ค่าของคุณ",
"GOTIFY_CLIENT_TOKEN": "ใส่ค่าของคุณ",
"GOTIFY_APP_TOKEN": "ใส่ค่าของคุณ",
"GOTIFY_RMCP_VERSION": "ใส่ค่าของคุณ",
"GOTIFY_RMCP_REPO": "ใส่ค่าของคุณ",
"GOTIFY_RMCP_RELEASE_BASE_URL": "ใส่ค่าของคุณ",
"RUST_LOG": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"gotify-rmcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"gotify-rmcp",
"mcp"
],
"env": {
"GOTIFY_URL": "ใส่ค่าของคุณ",
"GOTIFY_CLIENT_TOKEN": "ใส่ค่าของคุณ",
"GOTIFY_APP_TOKEN": "ใส่ค่าของคุณ",
"GOTIFY_RMCP_VERSION": "ใส่ค่าของคุณ",
"GOTIFY_RMCP_REPO": "ใส่ค่าของคุณ",
"GOTIFY_RMCP_RELEASE_BASE_URL": "ใส่ค่าของคุณ",
"RUST_LOG": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าที่ต้องใส่เอง
- Gotify server base URL.
- Gotify client token for read and management actions.
- Gotify app token for sending notifications.
GOTIFY_RMCP_VERSIONenvOptional GitHub release tag override for the downloaded Gotify RMCP binary.GOTIFY_RMCP_REPOenvOptional GitHub owner/repo override for release asset downloads.GOTIFY_RMCP_RELEASE_BASE_URLenvOptional release download base URL override.RUST_LOGenvTracing filter for Gotify RMCP logs.
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ใช้กับโปรแกรมไหนได้
ดูจากแบบการต่อของ server ตัวนี้ และเอกสารของผู้ทำโปรแกรมแต่ละตัว ตรวจเมื่อ 10 พ.ย. 2569
ติดตั้งบนเครื่องได้ใน
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
คู่มือที่เกี่ยวข้อง
ทำอะไรได้บ้าง
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
ผลตรวจเบื้องต้นi
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 11 พ.ย. 2569
- ! ควรระวัง
ตัวตนผู้ทำตรงกับ repo
ผู้ลงทะเบียน (dinglebear.ai) ไม่ใช่เจ้าของ repo (dinglebear-ai) อาจเป็นคนอื่นที่นำมาลงต่อ
- ✓ ผ่าน
ยังมีคนดูแล
มีการแก้โค้ดล่าสุด 7 วันที่ผ่านมา
- ✓ ผ่าน
มีสัญญาอนุญาต (license)
ใช้ AGPL-3.0
- – ไม่เกี่ยว
endpoint ตอบ
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
- – ไม่เกี่ยว
ล็อกอินแบบ OAuth
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
- … ยังไม่ตรวจ
คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
รีวิวจากผู้ใช้
ยังไม่มีรีวิว
เทียบกับตัวอื่นในหมวด เครื่องมือนักพัฒนาi
- ดาวมากกว่า 0% ของอีก 5742 ตัวในหมวดนี้
- ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 21% ของอีก 5742 ตัวในหมวดนี้
- ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 27% ของอีก 5742 ตัวในหมวดนี้
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
คำถามที่พบบ่อย
Gotify RMCP ปลอดภัยไหม?
จากการตรวจเบื้องต้นของเรา ผ่าน 2 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใช้กุญแจหรือรหัสอะไรบ้าง?
ต้องใส่ค่าเหล่านี้: GOTIFY_URL, GOTIFY_CLIENT_TOKEN, GOTIFY_APP_TOKEN
ตัวนี้รันบนเครื่องหรือบนคลาวด์?
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
ยังมีคนดูแลอยู่ไหม?
repo บน GitHub มีการแก้โค้ดล่าสุด 7 วันที่ผ่านมา และส่งรุ่นล่าสุด (0.1.3) เข้า registry 4 เดือนที่ผ่านมา
ใช้กับโปรแกรมไหนได้บ้าง?
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
มีตัวไหนใช้แทนได้บ้าง?
ในหมวดเดียวกันมี REA, Netdata, Front-End Checklist
ตัวที่ใช้แทนได้
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
README จากผู้ทำ
เปิดอ่าน README
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
gotify-rmcp
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.
Contents
- Naming
- Capabilities And Boundaries
- Install
- Quickstart
- Client Configuration
- Runtime Surfaces
- MCP Tool Reference
- CLI Reference
- Configuration
- Authentication
- Safety And Trust Model
- Architecture
- Distribution Contract
- Development
- Verification
- Deployment
- Troubleshooting
- Related Servers
- Documentation
- License
Naming
| 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.
Capabilities And Boundaries
- Send Gotify push notifications with message, title, priority, and extras.
- Read server health, runtime status, server version, current user, messages, applications, and clients.
- Create or update applications and create clients.
- Delete messages, all messages, applications, or clients only after explicit destructive confirmation.
- Expose MCP prompts for common workflows and a resource containing the current tool schema.
| 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. |
Install
| 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. |
npm / npx
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. |
Build From Source
git clone https://github.com/dinglebear-ai/rgotify
cd rgotify cargo build --release ./target/release/rgotify --help
Minimum supported Rust version: 1.86.
Quickstart
1. Configure Gotify
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. |
2. Run A Safe CLI Call
npx -y @dinglebear/rgotify health --json
3. Start Loopback HTTP MCP
GOTIFY_MCP_HOST=127.0.0.1 npx -y @dinglebear/rgotify serve
In another shell:
curl -sf http://127.0.0.1:40020/health
4. Make A First MCP Call
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"}}}'
Client Configuration
Claude Code Stdio
{
"mcpServers": { "gotify": { "command": "npx", "args": ["-y", "gotify-rmcp", "mcp"], "env": { "GOTIFY_URL": "https://gotify.example.com", "GOTIFY_CLIENT_TOKEN": "Cxxxxxxxxxxxxxxxx", "GOTIFY_APP_TOKEN": "Axxxxxxxxxxxxxxxx" } } } }
Claude Code HTTP
{
"mcpServers": { "gotify": { "type": "http", "url": "http://127.0.0.1:40020/mcp", "headers": { "Authorization": "Bearer ${GOTIFY_MCP_TOKEN}" } } } }
Codex / Labby Gateway
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"]
Generic MCP JSON
{
"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.
Runtime Surfaces
| 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. |
MCP Tool Reference
One MCP tool is exposed: gotify. Pass the required action argument to select the operation.
Read Actions
| 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 |
Write Actions
| 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
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 |
Meta, Prompts, And Resource
| 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.
CLI Reference
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
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.
Required Upstream 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.