notifyLABSCO SUMMARY
Auto-detected project name is what makes it usable with more than one agent.
A notification that says "Build Complete" is ambiguous the moment you have two projects open. Because the subtitle is filled from the current project, three agents in three checkouts produce three distinguishable alerts with no per-project configuration. The log file is the quiet second feature: notifications you missed are still on disk in JSON, so "what did it try to tell me at 3am" has an answer.
What it is
A small MCP server that sends real macOS system notifications through osascript. It exists for the case where the assistant is working and you are not watching: the build finishes, the agent needs an answer, and a notification lands in Notification Center rather than scrolling past in a terminal.
What you get
- A native notification with a title and message, typed as
success,error,infoorwarning, with sound on by default —notify - The current project name detected and used as the subtitle automatically, so several agents in several checkouts stay distinguishable without configuring anything
- A subtitle override when the automatic project name is not what you want
- Every notification appended to
~/.mcp-notifications.login JSON with timestamp, project, type, title, message and any error — an audit trail of what the agent tried to tell you while you were away
Requirements
macOS, since notifications go through the native osascript. Node.js 20+ and TypeScript 5.5+. There is no published package: clone the repository and run the bundled install.sh, which installs dependencies, builds, and writes an example config; then point your client at dist/index.js by absolute path. No account, no key, no network.
Setup effort
Build from source — git clone https://github.com/msageryd/mcp-macos-utils.git
USE CASES
Being told when a long run finishes
Have the agent send a success notification at the end, so you can leave the terminal instead of watching it.
Noticing a failure while you are elsewhere
Send an error-typed notification when something breaks, which reads differently from the routine ones at a glance.
Keeping several agents apart
Let the project name fill the subtitle automatically, so the alert says which checkout it came from.
Catching up on what you missed
Read the JSON log to see every notification with its timestamp and project, including any that failed to display.
1 tool
Listed in project docs. Your client may show a different list.
BEFORE YOU INSTALL
What to know first
Tools you get
1 tool named in the project's documentation.
Requires
Node.js 20+
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone this one yourself.
Server setup
git clone https://github.com/msageryd/mcp-macos-utils.git
cd mcp-macos-utils
./install.shMCP Clients
Any MCP client
{
"mcpServers": {
"macos-utils": {
"command": "node",
"args": [
"<YOUR_PATH_TO_MCP_MACOS_UTILS>/dist/index.js"
],
"env": {}
}
}
}