Let your AI assistant send you push notifications
Quick Start Β· Features Β· Documentation Β· Examples
π PRE-LAUNCH: kweenkl is currently in pre-launch mode. Join our early access program to get notifications from your AI assistant!
MCP (Model Context Protocol) server that enables AI assistants (Claude, etc.) to send real-time push notifications through kweenkl.
The verb "kweenkl" means to send a notification using kweenkl. When an AI can "kweenkl" you, it transforms from a conversational tool into an active assistant that can tap you on the shoulder when needed.
- π± Push Notifications: Send real-time notifications from your AI to your phone
- π§ Channel Management: Create, list, update, and delete notification channels
- β‘ Priority Levels: Set notification priority (low, normal, high)
- π¨ Customization: Add titles, custom payloads, and metadata
- π Secure: Token-based authentication
- π Easy Setup: Works with Claude Desktop and other MCP clients
kweenkl is currently in pre-launch. During this phase:
- β The service is fully functional and ready to use
- π We're gathering feedback from early adopters
- π Official launch coming soon with more features
Try it now with our demo webhook token: 51fa2b2d-2080-4a73-b059-7e67712d93f7
Use directly without installation:
{
"mcpServers": {
"kweenkl": {
"command": "npx",
"args": ["-y", "kweenkl-mcp-server"]
}
}
}git clone https://github.com/antoinedelorme/kweenkl-mcp.git
cd kweenkl-mcp
npm installEdit: ~/Library/Application Support/Claude/claude_desktop_config.json
Basic setup (notifications only):
{
"mcpServers": {
"kweenkl": {
"command": "node",
"args": ["/absolute/path/to/kweenkl-mcp-server/index.js"]
}
}
}With channel management (recommended):
{
"mcpServers": {
"kweenkl": {
"command": "node",
"args": ["/absolute/path/to/kweenkl-mcp-server/index.js"],
"env": {
"KWEENKL_DEVICE_TOKEN": "your-device-token-here"
}
}
}
}Edit: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"kweenkl": {
"command": "node",
"args": ["C:\\path\\to\\kweenkl-mcp-server\\index.js"]
}
}
}Consult your MCP client's documentation for stdio server configuration. The server requires:
- Node.js executable
- Path to index.js
- Optional environment variables
For clients that support HTTP Streamable MCP transport (like n8n, ChatGPT, or other automation tools), you can use our hosted MCP server instead of running a local one.
Endpoint: https://api.kweenkl.com/mcp
Authentication:
- For full access (channel management): Include
X-Kweenkl-Device-Tokenheader with your device token - For ChatGPT: Use OAuth flow (contact us for setup)
This allows AI workflows and assistants to send kweenkl notifications without local installation. The remote server supports all the same tools as the local version.
Example n8n configuration:
MCP Server URL: https://api.kweenkl.com/mcp
Headers: X-Kweenkl-Device-Token: your-device-token
Once configured, simply ask your AI assistant natural questions like:
π‘ "kweenkl me when you're done"
π‘ "Send a high priority kweenkl about the deployment"
π‘ "kweenkl the team with the summary"
π‘ "Analyze this log file and kweenkl me if you find errors"
Basic notification:
User: "kweenkl me with 'Hello World'"
AI: I'll send that notification now.
Response: β
Successfully kweenkled! π± 1 subscriber(s) notified
With priority:
User: "Send a high priority kweenkl about the server being down"
AI: I'll send a high priority notification.
Response: β
Successfully kweenkled! π± 3 subscriber(s) notified
Contextual notification:
User: "Analyze this log file and kweenkl me if you find errors"
AI: I'll analyze the log file now.
[AI analyzes file and finds errors]
AI: Found 5 errors. I'll kweenkl you with the summary.
Response: β
Successfully kweenkled!
Try kweenkl immediately with our demo webhook token:
51fa2b2d-2080-4a73-b059-7e67712d93f7
This demo token lets you test the service right away. Notifications sent to this token will be delivered to the kweenkl team's test channel.
- Open kweenkl iOS app (join our TestFlight for pre-launch access)
- Open a channel
- Tap info icon
- Copy webhook token
KWEENKL_DEVICE_TOKEN- Your device token for channel management (optional but recommended)KWEENKL_API_URL- API base URL (default: https://api.kweenkl.com)KWEENKL_DEBUG- Enable debug logging (set to 'true')
Send a push notification to a channel
The kweenkl tool accepts the following parameters:
webhook_token(required): Your channel's webhook tokenmessage(required): The notification message (max 500 chars recommended)title(optional): Brief title for the notification (max 50 chars recommended)priority(optional): Priority level - "low", "normal" (default), or "high"payload(optional): Custom JSON object for additional metadata
(requires KWEENKL_DEVICE_TOKEN)
π List all your notification channels with their webhook URLs
No parameters required
Example usage:
User: "Show me all my kweenkl channels"
AI: [Uses kweenkl_list_channels tool]
Response:
π’ Your kweenkl channels (3):
1. **Production Alerts**
ID: abc-123
Webhook: https://api.kweenkl.com/webhook/xyz-789
Notifications: 42
2. **Daily Reports**
ID: def-456
Webhook: https://api.kweenkl.com/webhook/uvw-789
Notifications: 7
β Create a new notification channel
Parameters:
name(required): Channel namedescription(optional): Channel descriptioncolor(optional): Hex color code (e.g., "#FF0000")icon(optional): Icon name
Example usage:
User: "Create a channel called 'Server Alerts' with a red color"
AI: [Uses kweenkl_create_channel tool]
Response:
β
Channel created!
**Server Alerts**
ID: new-channel-id
Webhook URL: https://api.kweenkl.com/webhook/new-token
You can now send notifications to this channel!
βοΈ Update an existing channel's properties
Parameters:
channel_id(required): Channel ID to updatename(optional): New namedescription(optional): New descriptioncolor(optional): New hex coloricon(optional): New icon name
Example usage:
User: "Rename the 'Test' channel to 'Production'"
AI: [Uses kweenkl_list_channels to find the channel ID, then kweenkl_update_channel]
Response:
β
Channel updated!
**Production**
ID: abc-123
Webhook: https://api.kweenkl.com/webhook/xyz-789
ποΈ Delete a notification channel permanently
Parameters:
channel_id(required): Channel ID to delete
Example usage:
User: "Delete the 'Old Test' channel"
AI: [Uses kweenkl_list_channels to find the channel ID, then kweenkl_delete_channel]
Response:
β
Channel "Old Test" deleted successfully.
Run the test suite:
npm testOr test manually with the MCP Inspector:
npm install -g @modelcontextprotocol/inspector
mcp-inspector node /path/to/kweenkl-mcp-server/index.js| Issue | Solution |
|---|---|
| Server not appearing in AI | Check JSON syntax in config file, verify file path, restart AI client |
| 404 errors | Verify webhook token in kweenkl app |
| No notifications received | Ensure you're subscribed to the channel in the iOS app |
| Network errors | Check firewall/proxy settings, ensure api.kweenkl.com is accessible |
- Node.js 18+
- Valid kweenkl webhook token
- Internet connection
Contributions are welcome! Please feel free to submit a Pull Request.
MIT License - see LICENSE file for details