push-notification-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@push-notification-mcpsend a notification 'Daily Standup' with body 'Meeting in 5 minutes'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
push-notification-mcp
A local MCP server that sends push notifications on macOS.
Quick Start
pnpm install && pnpm run build && npx @anthropic-ai/mcpb pack .Drag the .mcpb into Claude Desktop or any MCPB-compatible client of your choice.
Related MCP server: MCP Notifications Server
Specification
NOTE: This project was generated from an NLSpec (included) and was wholly implemented (or "dark-complied") by a Claude model (code formatting not included) as an experiment/initial evaluation of the NLSpec approach (see below). Also
An NLSpec (as la the @TG-Techie flavor) is a prescriptive, generative specification written in natural language — precise enough to derive a faithful implementation from, flexible enough to leave genuine implementation choices to the builder. For background on the approach, see the strongdm/attractor repo where the concept was developed in practice.
How It Works
The server exposes a single MCP tool — send_notification — over stdio. When called, it delivers a native macOS notification displaying a title and body. The notification mechanism is osascript with display notification, invoked via execFile (no shell). User input is passed as argv to the AppleScript on run argv handler — never interpolated into script text.
Installation
As an MCPB Bundle
Build and pack:
pnpm install && pnpm run build && npx @anthropic-ai/mcpb pack .This produces a .mcpb file you can install in Claude Desktop or any MCPB-compatible client.
As a Standalone MCP Server
Add to your MCP client configuration:
{
"mcpServers": {
"push-notification": {
"command": "node",
"args": ["/absolute/path/to/push-notification-mcp/dist/index.js"]
}
}
}Or if published to npm:
{
"mcpServers": {
"push-notification": {
"command": "npx",
"args": ["-y", "push-notification-mcp"]
}
}
}Run Directly
npm install
npm run build
node dist/index.jsThe server communicates over stdio (stdin/stdout). Diagnostic logs go to stderr.
Environment Variables
All configuration is optional. The server works out of the box with sensible defaults.
Variable | Type | Default | Description |
| boolean |
| Set to |
| integer |
| Token bucket capacity (max burst) |
| integer |
| Milliseconds between token refills |
Boolean values accept true/1 (truthy) and false/0 (falsy), case-insensitive. Integer values must be positive; invalid values are ignored and defaults are used, with a warning logged to stderr.
With defaults: burst of 5 notifications, then sustained rate of ~5 per minute (one every 12 s). The bucket refills continuously — idle for 60 s and it's full again.
Platform
macOS only. The notification delivery mechanism (osascript display notification) is available on all default macOS installations. macOS may prompt you to allow notifications from "Script Editor" — this is expected.
License
MIT
Available Tools
1 toolsend_notificationSend NotificationA
Send a push notification to the user. Use this to alert the user when a long-running task completes, when input is needed, or when something requires their attention.
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Notification body text. Describes what happened or what the user needs to know. | |
| title | Yes | Short notification title. Typically identifies the context: branch name, workspace name, project name, or repository name. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are all false, so description carries full burden. It states 'send' but does not disclose potential side effects (e.g., rate limits, user opt-in, delivery guarantees). Basic behavior is clear but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action. Every sentence adds value with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple notification tool with no output schema and no siblings, the description covers purpose and usage well. Minor lack of detail on return behavior, but acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% with detailed descriptions for each parameter. The description reinforces overall context but does not add new parameter-level details beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Send a push notification') and provides specific use cases (long-running task completion, input needed, attention required), making the purpose highly distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit guidance is given on when to use: 'when a long-running task completes, when input is needed, or when something requires their attention.' No alternatives exist, so no exclusion needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
1 tool update
v0.1.0- First observed
send_notification
TDQS
With only a single tool, there is no possibility of confusion between tools. The tool's purpose is clearly unique and distinct by default.
The single tool name 'send_notification' follows a clear verb_noun pattern. Naming consistency is not an issue with only one tool.
A single tool for sending push notifications is on the low end. While it covers the core action, additional tools for registration or configuration would improve completeness, but the count is borderline acceptable.
The toolset covers the primary operation of sending a notification, but lacks any features for managing devices, subscriptions, or checking delivery status. This makes the surface incomplete for a full push notification service.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Push notifications for AI agents - send instant iPhone notifications from any MCP client.
MCP connector for iMessage & Contacts via a local Mac agent + Vercel relay
- mcp-serverOAuthnet.vybit
Push notifications with personalized sounds - manage and trigger your vybits via MCP
Let agents send content-free push notifications to a paired phone via MCP.
Related MCP Servers
- AlicenseAqualityCmaintenanceA simple MCP server that can send notifications on mac devices.51726MIT
- FlicenseBqualityDmaintenanceEnables Claude and other MCP clients to display native macOS notifications with customizable titles, messages, icons, and sounds through the macOS Notification Center.116-
- AlicenseAqualityDmaintenanceMCP server that lets Claude Desktop or another MCP client trigger macOS sound and visual notifications through a task_status tool.116MIT
- AlicenseNot gradedqualityDmaintenanceEnhanced MCP server for sending native macOS notifications with terminal-notifier, interactive dialogs, text-to-speech, screenshots, and file selection.171MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/TG-Techie/push-notif-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server