mcp-macos-popup
Provides native macOS popup notifications with multi-screen support, including tools to show quick notifications and larger Markdown popups, dismiss all popups, list connected displays, and identify the focused display. Popups can optionally target a specific screen by display id, index, label, primary, or focused.
Click on "Deploy 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., "@mcp-macos-popup show a popup on my focused screen saying the build finished"
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.
mcp-macos-popup
MCP server for native macOS popup notifications, with multi-screen support.
It shows dark glassy popup cards on macOS and lets an AI agent target a specific display. On multi-monitor setups, it can list every screen and return the screen that currently has focus.
Tools
show_popup— quick notification popupshow_docs— larger Markdown popupdismiss_all_popups— close all popupslist_screens— list connected displaysget_focused_screen— return the focused display
show_popup and show_docs accept an optional screen argument: display id, index, label, primary, or focused.
Related MCP server: MCPing
Install
npm install -g mcp-macos-popupOr run directly:
npx mcp-macos-popupElectron is installed automatically as a dependency.
MCP configuration
{
"mcpServers": {
"macos-popup": {
"command": "mcp-macos-popup"
}
}
}Usage
mcp-cli call macos-popup show_popup '{"title":"Elia","message":"the answer","level":"info","duration":10}'
mcp-cli call macos-popup list_screens '{}'
mcp-cli call macos-popup get_focused_screen '{}'Multi-screen
If four displays are connected, call list_screens or get_focused_screen first, then pass the chosen display id as screen:
mcp-cli call macos-popup show_popup '{"title":"Elia","message":"hello","screen":"focused"}'Development
npm install
npm run daemonAvailable Tools
5 toolsdismiss_all_popupsA
Immediately close every popup currently shown on screen.
Inputs: no named parameters.
get_focused_screenA
Return the display that currently has focus, so a popup can be shown on the right screen.
Inputs: no named parameters.
list_screensA
List every connected macOS display, including ids, labels, sizes and which one is focused.
Inputs: no named parameters.
show_docsA
Show a larger documentation-style popup on Wael's macOS screen that renders MARKDOWN (headings, lists, code blocks, links, quotes). Use it to surface rich information: a summary report, API results, a changelog, key findings. Stays longer on screen than show_popup.
Inputs: title (required), markdown (required), level, screen, +2 more.
show_popupA
Show a quick notification popup on Wael's macOS screen via a native Electron window (dark glassy card, top-right, auto-dismiss). Use it to alert Wael of important information: task done, deploy finished, error found, etc.
Inputs: title (required), level, screen, source, +2 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 5 tools
show_popup vs show_docs are the closest pair, but descriptions clearly separate them by content type (quick notification vs markdown) and duration. list_screens and get_focused_screen overlap since list_screens already reports focus, making the focused-only tool somewhat redundant, but each still has a distinct intent.
All five tools follow a clean snake_case verb_noun pattern (list_screens, get_focused_screen, dismiss_all_popups, show_popup, show_docs). No mixed conventions or camelCase deviations.
Five tools is well-scoped for a popup-display server: enumerate screens, get the active screen, show a quick popup, show a rich popup, and dismiss all. Each earns its place with no filler.
Core lifecycle is covered: discover screens, target the focused one, show two popup styles, and clear them. Minor gaps exist—no individual popup dismissal (only dismiss_all_popups) and no way to list currently active popups.
Maintenance
Related MCP Connectors
Push notifications for AI agents - send instant iPhone notifications from any MCP client.
- DNS-DATA RemoteDeprecatedcom.dns-data
Connect AI assistants to authorized Windows and macOS devices for files, commands, and management.
Display delivery platform for AI agents. Push HTML, dashboards and live data to screens.
An MCP connector that lets your AI agents ask you questions, request permission approvals, and send alerts as push notifications to your phone and mac notch, so you can unblock and approve your agents from anywhere.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to automate macOS desktop tasks including mouse control, keyboard input, screenshots, window management, and UI interaction.10 npm415MIT
- AlicenseBqualityDmaintenanceEnables AI assistants to send desktop notifications on macOS with rich formatting, urgency levels, and sound options.128 npm1MIT
- AlicenseNot gradedqualityDmaintenanceProvides native macOS desktop automation for AI agents, enabling screen capture, mouse/keyboard control, window management, and iOS/Android simulator control in both foreground and background modes without focus stealing.5MIT
- AlicenseAqualityDmaintenanceEnables AI agents to control macOS desktop apps via screenshots, mouse clicks, keyboard input, accessibility queries, and AppleScript.1112 npmMIT