MCP Server

Mushu includes an MCP (Model Context Protocol) server that lets AI assistants like Claude and Cursor interact with your Mushu account directly. You can create organizations, manage tenants, and send push notifications through natural language.

What is MCP?

The Model Context Protocol is an open standard for connecting AI assistants to external tools and data sources. Mushu's MCP server provides tools for authentication, organization management, and push notifications.

Setup

Prerequisites

  • Node.js 18 or later
  • Mushu CLI installed and authenticated (mushu auth login)

Claude Desktop

Add Mushu to your Claude Desktop configuration:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "mushu": {
      "command": "npx",
      "args": [
        "-y",
        "mushu-mcp"
      ]
    }
  }
}

Restart Claude Desktop to load the server.

Cursor

Add to your Cursor MCP settings:

{
  "mushu": {
    "command": "npx",
    "args": [
      "-y",
      "mushu-mcp"
    ]
  }
}

Claude Code

Add to your project's .mcp.json:

{
  "mcpServers": {
    "mushu": {
      "command": "npx",
      "args": [
        "-y",
        "mushu-mcp"
      ]
    }
  }
}

Authentication

The MCP server uses the same credentials as the CLI. Make sure you've authenticated with mushu auth login before using the MCP tools.

Available Tools

Tool Reference

Example Workflows

Send a push notification

Ask Claude: "Send a push notification to user abc123 with the title 'Hello' and body 'Test message'"

List your organizations

Ask Claude: "What organizations do I belong to?"

Create a new tenant

Ask Claude: "Create a new tenant for my app com.example.myapp with this APNs key: [paste key contents]"

Troubleshooting

Tools not appearing

  • Restart your AI assistant after updating the config
  • Verify the config JSON is valid
  • Check that Node.js is installed and in your PATH

Authentication errors

  • Run mushu auth status to verify you're logged in
  • Run mushu auth refresh if tokens are expired