barkme-mcp-server

thevibeworks/barkme-mcp-server

3.3

If you are the rightful owner of barkme-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

Barkme MCP Server is a Model Context Protocol server that facilitates iOS push notifications using the Bark service, enabling seamless notification delivery from Claude conversations.

Tools
1
Resources
0
Prompts
0

Barkme MCP Server

A Model Context Protocol (MCP) server that provides iOS push notifications through the Bark service. Send notifications directly from Claude conversations with a simple, intelligent interface.

Features

  • Single Tool Interface: One notify tool handles all notification scenarios
  • Device Aliases: Use friendly configurable aliases like "iPhone:key1", "macOS:key2" instead of exposing device keys to AI
  • Async-First: Non-blocking notifications with background delivery and structured logging
  • Complete Bark API Support: All 20+ parameters including encrypted messages and notification management
  • Update/Delete Notifications: Modify or remove previously sent notifications using notification IDs

Quick Start

Prerequisites

via npmjs

Claude Desktop Integration

Add to your Claude Desktop configuration file:

  • macOS/Linux: ~/.config/claude-desktop/claude_desktop_config.json
  • Windows: %AppData%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "barkme": {
      "command": "npx",
      "args": ["@vibeworks/barkme-mcp-server"],
      "env": {
        "LOG_LEVEL": "info",
        "BARK_DEVICES": "iPhone:<your key>",
        "BARK_SERVER": "https://api.day.app",
        "BARK_GROUP": "Claude",
        "BARK_RETRY": "2",
        "BARK_ASYNC": "true"
      }
    }
  }
}

Restart Claude Desktop after adding the configuration. The Barkme server will appear in the MCP tools section.

via Smithery

To install barkme-mcp-server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @vibeworks/barkme-mcp-server --client claude

From source

git clone https://github.com/thevibeworks/barkme-mcp-server
cd barkme-mcp-server
npm install
npm run build
{
  "mcpServers": {
    "barkme": {
      "command": "node",
      "args": ["/absolute/path/to/barkme-mcp-server/dist/index.js"],
      "env": {
      ...
      }
    }
  }
}

Usage Examples

Ask Claude:

  • "Send me a notification saying 'Hello World'"
  • "Send a notification to my iPhone and iPad saying 'Meeting in 10 minutes'"
  • "Send a critical alert about server maintenance"
  • "Update the notification with ID 'deploy-123' to say 'Deployment completed'"

Tool Reference

notify

Send push notifications to iOS devices via Bark service.

Key Parameters:

ParameterTypeDescription
messagestringMain notification text
titlestringBold title above message
levelenumUrgency: passive, active, timeSensitive, critical
targetsarrayDevice aliases (e.g., ["iPhone", "iPad"])
iconURLCustom icon image
urlURLLink to open when tapped
idstringFor updating/deleting notifications
deletebooleanDelete notification (requires id)

Response Format:

Sending notification - queued for background delivery
To: `iPhone`, `iPad`
Level: timeSensitive

Delivery status will be logged to console:
2025-07-29T15:26:17.123Z [INFO] Notification delivered to iPhone in 0.234s
2025-07-29T15:26:17.145Z [INFO] Notification delivered to iPad in 0.267s

Environment Variables

VariableDefaultDescription
BARK_DEVICES-Required: Device keys: key1,key2 or aliases: iPhone:key1,iPad:key2
BARK_DEFAULT_DEVICEFirst deviceDefault device alias for fallback
BARK_SERVERhttps://api.day.appBark server URL
BARK_GROUPBark MCP ServerDefault notification group
BARK_SOUND-Default notification sound
BARK_ICON-Default icon URL
BARK_LEVEL-Default urgency level
BARK_VOLUME-Default volume (0-10)
BARK_RETRY1Retry count on failure (0-10)
BARK_ASYNCtrueAsync mode: true (fire-and-forget) or false (blocking)
LOG_LEVELinfoLogging level: debug, info, warn, error

Development

Project Structure

barkme-mcp-server/
├── src/
│   ├── index.ts          # Main MCP server implementation
│   └── logger.ts         # Simple structured logging
├── dist/
│   ├── index.js          # Compiled executable
│   ├── logger.js         # Compiled logger
│   └── *.d.ts           # Type definitions
├── references/           # Reference materials
├── package.json          # Project configuration
├── tsconfig.json         # TypeScript configuration
├── CLAUDE.md            # Development guide
└── README.md            # This file

Build Commands

npm run build        # Compile TypeScript
npm run watch        # Watch mode for development
npm start           # Run the compiled server

License

MIT

Related Projects