1. Conduid
  2. Developer Tools
  3. Push CLI
MCP server · Developer Tools

Push CLI

CLI and MCP server for Pushover notifications - send/receive push notifications from terminal

Unclaimed last commit 6 months ago devtools
48Fair

Scored 2 days ago · breakdown

About Push CLI

Push CLI is an MCP server published by harperreed in the Developer Tools category: cLI and MCP server for Pushover notifications - send/receive push notifications from terminal. It has been installed 0 times through Conduid.

The repository has 1 stars and 0 forks, with the last commit 6 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues (0) before depending on it in production.

Install

Install
npx push-cli

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

Ask AI about Push CLI

Powered by Claude · Grounded in docs

I know everything about Push CLI. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ·README presentNot checked yet.
  • ·License declaredNot checked yet.
  • ·Tests presentNot checked yet.
  • ·Dependencies pinnedNot checked yet.
  • ·No dynamic code executionNot checked yet.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

Releases

v0.2.3v0.2.3 · 10 Feb 2026Changelog Bug fixes 7c10536a237a770424df83944a62ede8ff884265: fix(deps): use published mdstore module, remove local replace (@harperreed)
v0.1.1v0.1.1 · 1 Feb 2026Changelog Features e06bc5a1fb704092d9371473b68f6575584ce099: feat: add install-skill command with confirmation prompt (@harperreed)
v0.1.0v0.1.0 · 1 Feb 2026Changelog Features 62d5b51077d7d83a7b5a561335dd3cb9e6fabdc0: feat: add export command with markdown/yaml/json formats (@harperreed)
v0.0.2v0.0.2 · 15 Dec 2025Changelog Bug fixes c6881eca19f16767f4cea13f45db5334d3930c2d: fix: correct Linux build path in release workflow (@harperreed) ab52fd95d4d5d9bf561aac5c36959caa3860dc21: fix: correct goreleaser main path and add README (@harperreed)…

README

push

A CLI and MCP server for the Pushover notification service. Send and receive push notifications from the command line or integrate with AI assistants via the Model Context Protocol.

Features

  • Send notifications to your devices via the Pushover Message API
  • Receive messages via the Pushover Open Client API
  • Persist messages to a local SQLite database for history and search
  • MCP server for AI assistant integration (Claude, etc.)
  • XDG-compliant paths on all platforms (~/.config/push/, ~/.local/share/push/)

Prerequisites

You'll need:

  1. A Pushover account
  2. An application token from pushover.net/apps (create a new application)
  3. Your user key from pushover.net (shown on your dashboard)

Installation

# From source
git clone https://github.com/harper/push.git
cd push
go build -o push .

# Or with go install
go install github.com/harper/push@latest

Quick Start

1. Login and register a device

push login

You'll be prompted for:

  • App token - from your Pushover application
  • User key - from your Pushover dashboard
  • Email - your Pushover account email
  • Password - your Pushover account password
  • 2FA code - if two-factor authentication is enabled

This registers a device for receiving messages and stores credentials securely.

2. Send a notification

push send "Hello from the CLI!"
push send -t "Alert" -p 1 "Something important happened"

3. Check for new messages

push messages

4. View message history

push history
push history --since yesterday
push history --search "important"

CLI Reference

Global Flags

Flag Description
--config Config file path (default: ~/.config/push/config.toml)
--data Data directory path (default: ~/.local/share/push/)

Commands

push login

Authenticate with Pushover and register a device for receiving messages.

push login
push login --device-name "my-server"
Flag Description
--device-name Device name to register (default: push-cli)

push logout

Remove stored device credentials (keeps app token and user key).

push logout

push send [message]

Send a push notification.

push send "Simple message"
push send -t "Title" "Message with title"
push send -p 2 "Emergency priority message"
push send -u "https://example.com" "Message with link"
push send -d "iphone" "Send to specific device"
push send -s "cosmic" "Message with custom sound"
Flag Short Description
--title -t Notification title
--priority -p Priority level (-2 to 2)
--url -u Supplementary URL
--url-title Title for the URL
--sound -s Notification sound name
--device -d Target device name (sends to all if omitted)

Priority levels:

  • -2 - Lowest (no notification)
  • -1 - Low (quiet)
  • 0 - Normal (default)
  • 1 - High (bypass quiet hours)
  • 2 - Emergency (requires acknowledgment)

push messages

Fetch unread messages from Pushover. Messages are automatically persisted to the local database.

push messages
push messages -n 5
Flag Short Description
--limit -n Maximum messages to return (default: 10)

push history

Query persisted message history from the local SQLite database.

push history
push history -n 50
push history --since "2025-01-01"
push history --since yesterday
push history --search "error"
Flag Short Description
--limit -n Maximum messages to return (default: 20)
--since Filter by date (ISO format or natural language)
--search Full-text search in message and title

push config

Show current configuration.

push config           # Show config contents
push config --path    # Show config file path only

push mcp

Start the MCP server for AI assistant integration.

push mcp

The server runs on stdio and implements the Model Context Protocol.

MCP Integration

The push mcp command starts a Model Context Protocol server, allowing AI assistants like Claude to send and receive Pushover notifications.

Configuration

Add to your Claude Code MCP settings (~/.claude/claude_desktop_config.json):

{
  "mcpServers": {
    "push": {
      "command": "/path/to/push",
      "args": ["mcp"]
    }
  }
}

Available Tools

send_notification

Send a push notification through Pushover.

Parameters:

Name Type Required Description
message string yes Body of the notification
title string no Notification title
priority integer no Priority from -2 to 2
url string no Supplementary URL
sound string no Notification sound
device string no Target device name

check_messages

Poll the Pushover Open Client API, persist new messages, and return the newest ones.

Parameters:

Name Type Required Description
limit integer no Maximum messages to return (default: 10)

list_history

Query persisted message history from the local SQLite database.

Parameters:

Name Type Required Description
limit integer no Number of rows to return (default: 20)
since string no Natural language or ISO date filter
search string no Full text search over message and title

mark_read

Delete unread messages from Pushover up to (and including) the provided ID.

Parameters:

Name Type Required Description
message_id integer yes Highest Pushover message ID to acknowledge

Available Resources

URI Description
push://unread Current unread messages (fetched live from Pushover)
push://history Last 20 persisted messages from the local database
push://status Credential and database health summary

Configuration

Configuration is stored in TOML format at ~/.config/push/config.toml:

app_token = "your-app-token"
user_key = "your-user-key"
device_id = "device-identifier"
device_secret = "device-secret-from-login"
default_device = "push-cli"
default_priority = 0

Environment Variables

Variable Description
XDG_CONFIG_HOME Override config directory (default: ~/.config)
XDG_DATA_HOME Override data directory (default: ~/.local/share)

Data Storage

Messages are persisted to a SQLite database at ~/.local/share/push/push.db.

The database contains two tables:

  • messages - Received messages from Pushover
  • sent - Log of sent notifications

Security

  • Config file is created with mode 0600 (owner read/write only)
  • Credentials are stored locally, never transmitted except to Pushover's API
  • Device secrets are obtained via Pushover's official Open Client API

API Reference

Push uses two Pushover APIs:

License

MIT

README mirrored from the source repository 2 days ago. The original is authoritative.

Questions

About Push CLI

How do I install Push CLI?

Run npx push-cli, then add the server to your MCP client's configuration. Conduid has recorded 0 installs, so the command is known to work with current clients.

Is Push CLI safe to use with an AI agent?

Its trust score is 48 out of 100 (fair). It passes 0 of 1 static security checks; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Push CLI still maintained?

The last commit was 6 months ago, with 0 open issues. That's long enough that you should check whether the maintainer is responding to issues before depending on it.