Skip to content

pingwa

by grzgrzgrz3 · remote · local (pypi) · no sign-in to list tools · v0.4.1 · published by GitHub user grzgrzgrz3

Zero-setup WhatsApp notifications + human-in-the-loop for AI agents — text 'join', send in 60s.

Final · 2Changes · 1

5 tools: 2 do something that can't be undone, 1 change things and 2 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http pingwa https://pingwa.dev/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

5 tools

Can't be undone 2Claude Code: ask
  • check_repliesPull inbound WhatsApp messages the human sent to pingwa (out-of-band instructions, or late answers to an `ask`).No findings

    Why it is in this group

    • The name "check_replies" says "reply": a word for sending, and what is sent cannot be taken back.
    Description, as the server wrote it
    Pull inbound WhatsApp messages the human sent to pingwa (out-of-band instructions, or late answers to an `ask`). `since` is a cursor from a previous call (pass it back to get only newer messages); `wait` long-polls up to that many seconds for something to arrive. Returns the messages and a new cursor.
  • notifySend a WhatsApp notification to the account owner's own phone.No findings

    Why it is in this group

    • The name "notify" says "notify": a word for sending, and what is sent cannot be taken back.
    Description, as the server wrote it
    Send a WhatsApp notification to the account owner's own phone. `text` is the message (1-1024 chars). `image_url` (optional) is a public https image link — a screenshot, chart or diff — delivered as an image with `text` as the caption when the user's 24h window is open (otherwise text only). Returns a confirmation with the queued message id; raises an actionable error on quota/auth.
Changes things 1Claude Code: ask
  • askAsk the human a question on WhatsApp and BLOCK until they reply (or timeout).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Ask the human a question on WhatsApp and BLOCK until they reply (or timeout). `text` is the question. `buttons` (optional, up to 3) render as tappable reply buttons; omit them to invite a free-text answer the human types on their phone — use this to let the human steer you mid-task. `timeout` is seconds to wait (max 90). Returns the human's reply (free text and/or the chosen option). On timeout, returns a note — the question was delivered and the answer is still retrievable via `check_replies`.
Only reads 2Claude Code: allow
  • check_statusShow the pingwa account's plan, remaining monthly quota, and whether the free 24h WhatsApp reply window is currently open.No findings

    Why it is in this group

    • The name "check_status" says "status": a word for reading.
    Description, as the server wrote it
    Show the pingwa account's plan, remaining monthly quota, and whether the free 24h WhatsApp reply window is currently open.
  • upgradeGet a link to upgrade the account to Pro (raises the monthly quota).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a link to upgrade the account to Pro (raises the monthly quota). Returns a Stripe Checkout URL for the human to open and pay — no pingwa password needed, the card is handled by Stripe. If the account is already Pro, returns a billing-portal URL to manage or cancel instead.

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 0.4.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http pingwa https://pingwa.dev/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__pingwa__check_status",
      "mcp__pingwa__upgrade"
    ],
    "ask": [
      "mcp__pingwa__notify",
      "mcp__pingwa__ask",
      "mcp__pingwa__check_replies"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as pingwa. Review it before you use it.