Component Inventory

July 30, 2026 · View on GitHub

Complete listing of all MCP actions, CLI commands, environment variables, and HTTP endpoints.

MCP tool: gotify

One MCP tool is exposed. The required action argument selects the operation.

Read actions

ActionDescriptionRequired paramsOptional params
healthServer health check (no Gotify auth)
versionServer version (no Gotify auth)
meCurrent authenticated user
messagesList messagesapp_id (integer), limit (integer, default 50), since (integer message ID)
applicationsList all applications
clientsList all clients
statusRuntime status, config snapshot, and counters

Write actions

ActionDescriptionRequired paramsOptional params
sendSend a push notificationmessage (string)title (string), priority (integer), extras (object)
create_applicationCreate an applicationname (string)description (string), default_priority (integer)
update_applicationUpdate an applicationapp_id (integer)name (string), description (string), default_priority (integer)
create_clientCreate a clientname (string)

Destructive actions

Require confirm=true or GOTIFY_ALLOW_DESTRUCTIVE=true. Without either, returns error: "destructive operation — pass confirm=true or set GOTIFY_ALLOW_DESTRUCTIVE=true".

ActionDescriptionRequired params
delete_messageDelete one messageid (integer), confirm (boolean)
delete_all_messagesDelete all messagesconfirm (boolean)
delete_applicationDelete an application and all its messagesapp_id (integer), confirm (boolean)
delete_clientDelete a clientclient_id (integer), confirm (boolean)

Meta

ActionDescription
helpBuilt-in markdown documentation for all actions

CLI commands

All CLI commands call the same GotifyService methods as the MCP actions.

Read commands

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]

Write commands

rgotify send <message> [--title T] [--priority N] [--json]
rgotify create app <name> [--description D] [--priority N] [--json]
rgotify create client <name> [--json]

Destructive commands

rgotify delete message <id> [--confirm] [--json]
rgotify delete all [--confirm] [--json]
rgotify delete app <app_id> [--confirm] [--json]
rgotify delete client <client_id> [--confirm] [--json]

Server modes

rgotify                  # HTTP MCP server (port 40020)
rgotify serve            # Same
rgotify serve mcp        # Same
rgotify mcp              # stdio MCP transport
rgotify --help
rgotify --version

Environment variables

VariableRequiredDefaultSensitiveDescription
GOTIFY_URLyesnoGotify server base URL
GOTIFY_CLIENT_TOKENyesyesClient token (starts C) for management
GOTIFY_APP_TOKENyes for sendyesApp token (starts A) for sending
GOTIFY_ALLOW_DESTRUCTIVEnofalsenoSkip confirm gate for destructive ops
GOTIFY_MCP_HOSTno0.0.0.0noMCP HTTP bind host
GOTIFY_MCP_PORTno40020noMCP HTTP bind port
GOTIFY_MCP_TOKENnoyesStatic bearer token for MCP auth
GOTIFY_MCP_NO_AUTHnofalsenoDisable MCP authentication
GOTIFY_MCP_PUBLIC_URLnonoPublic URL (reserved for OAuth mode)
GOTIFY_MCP_AUTH_ADMIN_EMAILnonoAdmin email (reserved for OAuth mode)
RUST_LOGnoinfonoLog filter

HTTP endpoints

EndpointMethodAuth requiredDescription
/mcpPOSTYes (when token set)RMCP Streamable HTTP endpoint
/healthGETNoHealth probe — always {"status":"ok"}

Network ports

PortProtocolPurpose
40020TCPRMCP Streamable HTTP MCP server

Runtime dependencies

CratePurpose
tokioAsync runtime
axumHTTP framework
rmcpMCP SDK (Streamable HTTP + stdio)
tower-httpCORS and tracing middleware
reqwestGotify REST API HTTP client
serde / serde_jsonSerialization
chronoTimestamps
tomlConfig file parsing
lab-authOAuth/JWT auth
tracing / tracing-subscriberStructured logging
anyhowError handling
urlURL validation

Development dependencies

CratePurpose
tempfileTemporary directories for tests
towerHTTP testing utilities
rmcp (client features)MCP client for integration tests