mcpField
W
Webhooky

Webhooky

Local
webhooky.appCommunication0Updated 3d ago

About Webhooky

Webhooky is an MCP server that lets AI assistants send push notifications to a phone through a Webhooky endpoint. It is intended for long-running tasks and provides notification controls while keeping the endpoint URL in an environment variable rather than a tool argument.

Key features

  1. 01Send a push notification with title and message
  2. 02Choose a sound and vibration setting
  3. 03List sounds grouped by meaning
  4. 04Report accepted notifications that were not delivered
  5. 05Keep the endpoint URL in environment configuration

Use cases

  1. 01Get notified when a long-running migration finishes
  2. 02Receive phone alerts when an assistant completes a task

MCP support

The MCP server provides `send_notification` and `list_sounds` tools. It sends notifications through the endpoint specified by `WEBHOOKY_URL`.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"matthiasmaigner-webhooky": {
"command": "npx",
"args": [
"-y",
"webhooky-mcp"
],
"env": {
"WEBHOOKY_URL": "<WEBHOOKY_URL>"
}
}
}
}
Run commandnpx -y webhooky-mcp
Environment variables to set
WEBHOOKY_URLSecretYour Webhooky endpoint URL, copied from the app.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmwebhooky-mcp1.0.3

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

webhooky-mcp

An MCP server for Webhooky.

Gives an AI assistant one ability: send a push notification to your phone. Useful when you ask it to do something long-running and then walk away, it can tell you itself instead of writing code that tells you.

You:  Run the migration and let me know when it's done.
Claude: [runs it, then calls send_notification]
📱      ✅ Migration done · 14,203 rows · 6m12s

Setup

Install the Webhooky app (iOS · Android), create an endpoint and copy its URL. No account needed, the URL exists the moment the app opens. The free plan covers 100 notifications per month across up to 3 endpoints.

Claude Code
claude mcp add webhooky -e WEBHOOKY_URL=https://api.webhooky.app/YOUR_KEY -- npx -y webhooky-mcp
Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "webhooky": {
      "command": "npx",
      "args": ["-y", "webhooky-mcp"],
      "env": { "WEBHOOKY_URL": "https://api.webhooky.app/YOUR_KEY" }
    }
  }
}
Cursor, Zed and other MCP clients

Same shape: command npx, args ["-y", "webhooky-mcp"], and WEBHOOKY_URL in the environment.

Tools

send_notification
ArgumentTypeRequiredNotes
titlestringyesMax 100 characters
messagestringnoMax 500 characters. Omit to use the endpoint's configured text
soundenumnoOne of the 40 sound ids. Omit to use the endpoint's sound
vibratebooleannoOverrides the endpoint's vibration setting

Returns a confirmation including how many devices it reached. It reports an error, rather than a cheerful success, when the notification was accepted but not delivered, which is what happens when the free plan's monthly quota is used up. Webhooky answers HTTP 200 in that case on purpose, so that senders like Stripe don't retry, and this server unpacks that distinction for you.

list_sounds

The 40 sounds grouped by meaning (money, success, failure, informational, attention-grabbing, playful), so the assistant can pick one that matches the event instead of guessing from an id.

Configuration

VariableRequiredDefaultNotes
WEBHOOKY_URLyes(none)Your full endpoint URL, key included
WEBHOOKY_TIMEOUT_MSno10000Request timeout

WEBHOOKY_URL must be https, except on localhost / 127.0.0.1, where plain http is allowed because nothing leaves the machine.

A note on your URL

Your endpoint URL can do exactly one thing: trigger a notification on your phone. It cannot read your history, reach your account or expose any data. Anyone who knows it can send you notifications, and that is the whole blast radius. This server therefore takes it only from the environment, never as a tool argument: a model can't be talked into sending to a different endpoint, and the key never enters the conversation. It is also stripped from any error message before it is returned.

Treat WEBHOOKY_URL the way you would a Slack incoming webhook URL: keep it out of public repositories, but it is not a password. If it leaks, delete the endpoint in the app and create a new one. The old URL dies instantly.

Development

npm install
npm test     # drives the server over real stdio against a stub endpoint

Links

MIT · Aigner Software e.U.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.