io.github.CloudCorpRecords/pushnote
Gotify push notifications: send, read messages, manage apps and clients, one router tool.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
@reneturcios/pushnoteclaude mcp add pushnote -- npx -y @reneturcios/pushnote@0.1.0 mcp
{
"mcpServers": {
"pushnote": {
"command": "npx",
"args": [
"-y",
"@reneturcios/pushnote@0.1.0",
"mcp"
]
}
}
}
ghcr.io/cloudcorprecords/pushnote:0.1.0claude mcp add pushnote -- docker run -i --rm ghcr.io/cloudcorprecords/pushnote:0.1.0 mcp
{
"mcpServers": {
"pushnote": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/cloudcorprecords/pushnote:0.1.0",
"mcp"
]
}
}
}
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
pushnote
pushnote talks to a Gotify server: it sends push notifications,
reads back messages, server health and version, and manages the
Gotify applications and clients that notifications flow through.
Everything is exposed as one action-router tool, gotify, over a
command-line interface and a stdio MCP server, both served by the
same binary.
Three environment variables configure it. GOTIFY_URL is the
base URL of your Gotify server and is required — without it, every
action except the local help fails before any request is made.
GOTIFY_CLIENT_TOKEN is a Gotify client token used for reads and
management (current user, messages, applications, clients).
GOTIFY_APP_TOKEN is a Gotify application token used only by the
send action. Tokens come from the environment only; they are
never tool arguments.
Install
npx @reneturcios/pushnote health
Or run the container image:
docker run -i ghcr.io/cloudcorprecords/pushnote
The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.
CLI
Each command mirrors one router action. Multi-word commands accept
both the hyphenated form shown here and the underscore action name
(for example create-application or create_application).
export GOTIFY_URL=https://gotify.example.com
export GOTIFY_CLIENT_TOKEN=<client token>
export GOTIFY_APP_TOKEN=<app token>
pushnote health
pushnote version
pushnote me
pushnote messages --limit 25 --since 40
pushnote messages --app-id 7
pushnote applications
pushnote clients
pushnote status
pushnote send "deploy finished" --title CI --priority 5
pushnote create-application alerts --description "Alert channel" --default-priority 4
pushnote update-application 3 --name renamed
pushnote create-client phone
pushnote delete-message 9 --confirm
pushnote delete-all-messages --confirm
pushnote delete-application 4 --confirm
pushnote delete-client 5 --confirm
pushnote help
pushnote --version
Successful commands print the upstream JSON payload (status and
help print local output instead). Exit codes: 0 on success,
1 when a call fails (including an upstream API error or a
refused destructive action), 2 for usage errors.
Destructive commands — the four delete-* commands — do nothing
unless --confirm is passed. Without it they fail before any
request reaches the Gotify server.
MCP server
The mcp subcommand starts a stdio MCP server:
npx -y @reneturcios/pushnote mcp
MCP client configuration:
{
"mcpServers": {
"pushnote": {
"command": "npx",
"args": ["-y", "@reneturcios/pushnote", "mcp"],
"env": {
"GOTIFY_URL": "https://gotify.example.com",
"GOTIFY_CLIENT_TOKEN": "<client token>",
"GOTIFY_APP_TOKEN": "<app token>"
}
}
}
}
Tool
One tool, gotify, takes a required action argument plus the
parameters that action needs as optional top-level arguments:
| Action | Required | Optional | Token |
|---|---|---|---|
health | — | — | none |
version | — | — | none |
me | — | — | client |
messages | — | app_id, limit, since | client |
applications | — | — | client |
clients | — | — | client |
status | — | — | none (local) |
send | message | title, priority, extras | app |
create_application | name | description, default_priority | client |
update_application | app_id | name, description, default_priority | client |
create_client | name | — | client |
delete_message | id, confirm | — | client |
delete_all_messages | confirm | — | client |
delete_application | app_id, confirm | — | client |
delete_client | client_id, confirm | — | client |
help | — | — | none (local) |
All four delete actions refuse to run unless confirm is true,
and that check happens before any request. status returns a
local snapshot (Gotify URL, which tokens are configured, action
count) and never includes a token value. help returns the action
documentation locally.
Development
npm install
npm run build # tsc -> dist/
npm test # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev # run the CLI from source via tsx
License
MIT — see LICENSE.
Questions fréquentes
Qu'est-ce que io.github.CloudCorpRecords/pushnote ?
Gotify push notifications: send, read messages, manage apps and clients, one router tool.
Comment installer io.github.CloudCorpRecords/pushnote ?
Il s'exécute sur votre machine. Dans Claude Code : claude mcp add pushnote -- npx -y @reneturcios/pushnote@0.1.0 mcp. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour io.github.CloudCorpRecords/pushnote ?
Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.
io.github.CloudCorpRecords/pushnote est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient io.github.CloudCorpRecords/pushnote ?
Il est publié par CloudCorpRecords. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.