Pushpush

MCP integration

Pushpush is an MCP server. Connect it to Claude Code, AI agents, or any MCP-compatible client to send push notifications programmatically.

Setup

Add Pushpush to Claude Code:

claude mcp add -t http \
  pushpush https://a.pushpu.sh/mcp

The first time you use a Pushpush tool, you’ll be prompted to sign in via your browser.

Available tools

ToolDescription
send_pushSend a notification to a topic (delivered to all subscribed devices)
list_messagesView recent messages on a topic
get_tokenGenerate a Bearer token for use with curl, scripts, or CI
manage_accountGet a link to manage subscription and billing

The tools are self-documenting — ask Claude to “send a push” or “help manage your Pushpush account” and it’ll figure it out.

Claude Code in GitHub Actions

You can use Pushpush from Claude Code in GitHub Actions. This lets an AI agent summarize CI results and push a notification — no shell scripting needed.

All approaches require your Pushpush API token stored as a repository secret. Generate one by asking Claude Code: “Get me a Push API token that doesn’t expire”.

Claude Code CLI

Call the Claude Code CLI directly. This works on any event type, including push-triggered deploys where Claude Code Action doesn’t apply.

- name: Notify deploy result
  if: always()
  env:
    ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
  run: |
    npx -y @anthropic-ai/claude-code \
      --allowedTools mcp__pushpush__send_push \
      --mcp-config '{"mcpServers":{"pushpush":{"type":"http","url":"https://a.pushpu.sh/mcp","headers":{"Authorization":"Bearer ${{ secrets.PUSH_TOKEN }}"}}}}' \
      -p "The deploy finished with status: ${{ job.status }}. Send a push to the deploys topic."

Claude Code Action

Claude Code Action wraps the CLI as a GitHub Action with built-in PR/issue integration. It supports pull_request, issues, workflow_dispatch, and other event types — but not push. Use the CLI approach above for push-triggered workflows.

- name: Notify on failure
  if: failure()
  uses: anthropics/claude-code-action@main
  with:
    anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
    github_token: ${{ github.token }}
    prompt: |
      Summarize the CI failure and send a push notification
      to the "ci" topic with the result.
    claude_args: >-
      --allowedTools Bash,Read,Glob,Grep,mcp__pushpush__send_push
      --mcp-config '{"mcpServers":{"pushpush":{"type":"http","url":"https://a.pushpu.sh/mcp","headers":{"Authorization":"Bearer ${{ secrets.PUSH_TOKEN }}"}}}}'

Or using the mcp_config input as a one-liner:

- name: Notify on failure
  if: failure()
  uses: anthropics/claude-code-action@main
  with:
    anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
    github_token: ${{ github.token }}
    mode: agent
    allowed_tools: Bash,Read,Glob,Grep,mcp__pushpush__send_push
    mcp_config: '{"mcpServers":{"pushpush":{"type":"http","url":"https://a.pushpu.sh/mcp","headers":{"Authorization":"Bearer ${{ secrets.PUSH_TOKEN }}"}}}}'
    direct_prompt: |
      Summarize the CI failure and send a push notification
      to the "ci" topic with the result.

Or multi-line, which is easier to read with multiple servers or long headers:

- name: Notify on failure
  if: failure()
  uses: anthropics/claude-code-action@main
  with:
    anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
    github_token: ${{ github.token }}
    mode: agent
    allowed_tools: Bash,Read,Glob,Grep,mcp__pushpush__send_push
    mcp_config: |
      {
        "mcpServers": {
          "pushpush": {
            "type": "http",
            "url": "https://a.pushpu.sh/mcp",
            "headers": {
              "Authorization": "Bearer ${{ secrets.PUSH_TOKEN }}"
            }
          }
        }
      }
    direct_prompt: |
      Summarize the CI failure and send a push notification
      to the "ci" topic with the result.

Using with other MCP clients

Any MCP client that supports HTTP transport can connect to Pushpush. The MCP endpoint is:

https://a.pushpu.sh/mcp

Authenticate with a Bearer token in the Authorization header.

Next steps