MCP server for self-hosted Gotify that exposes a unified action router and a companion tool for managing notifications and account metadata.
From the registry: MCP server for self-hosted Gotify push notifications and message management.
$ pip install uvhttps://docs.astral.sh/uv/$ git clone https://github.com/jmagar/gotify-mcp && cd gotify-mcp && uv synchttps://github.com/jmagar/gotify-mcpPlease install the `gotify-mcp-jmagar` MCP server into my current AI client (that's you).
Required prerequisites (do these first if not already done):
- **Install uv** — Python package manager used to run the server locally Run: `pip install uv` (https://docs.astral.sh/uv/)
- **Clone repository** — Clone the gotify-mcp repo and install dependencies Run: `git clone https://github.com/jmagar/gotify-mcp && cd gotify-mcp && uv sync` (https://github.com/jmagar/gotify-mcp)
- **Gotify server** — A running Gotify instance is required (https://gotify.net/)
Canonical MCP server config (stdio transport):
- command: `uv`
- args: ["run","gotify-mcp-server"]
- required environment variables:
- `GOTIFY_URL`: Base URL of your Gotify server (no trailing slash) (example: `<your-gotify-url>`)
- `GOTIFY_CLIENT_TOKEN`: Client token for management operations (example: `<your-gotify-client-token>`)
- optional environment variables:
- `GOTIFY_APP_TOKEN`: App token used in HTTP fallback examples (tool still requires app_token per call) (example: `<your-gotify-app-token>`)
- `GOTIFY_MCP_TRANSPORT`: Transport mode: http or stdio (default http) (example: `stdio`)
- `GOTIFY_MCP_HOST`: Interface for the MCP HTTP server to bind to (example: `0.0.0.0`)
- `GOTIFY_MCP_PORT`: Port for the MCP HTTP server (example: `9158`)
- `GOTIFY_MCP_TOKEN`: Bearer token for MCP HTTP server auth (required when transport=http) (example: `<your-bearer-token>`)
- `GOTIFY_MCP_NO_AUTH`: Set true to disable bearer auth (only behind trusted proxy) (example: `false`)
- `GOTIFY_LOG_LEVEL`: Log level (example: `INFO`)
- `ALLOW_DESTRUCTIVE`: Set true to skip confirm=True gate for destructive actions (example: `false`)
- `ALLOW_YOLO`: Alias for ALLOW_DESTRUCTIVE (example: `false`)
Note: Server supports both HTTP (default) and stdio transports. Set GOTIFY_MCP_TRANSPORT=stdio for MCP stdio usage. HTTP transport requires bearer auth via GOTIFY_MCP_TOKEN.
Add this MCP server to my current client's config in the correct format for you. If you need secrets or credentials I haven't provided, ASK me — do not invent values or leave raw placeholders. After adding it, tell me how to verify the server is connected.GOTIFY_MCP_TOKENrequiredBearer token for HTTP transport authentication.GOTIFY_CLIENT_TOKENrequiredToken used for management actions.MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API