Endpoints: 28,729MCP servers: 18,414Payout addresses: 2,071Paid calls: 1,562Letters: 14Defects: 1,336counted just now
teppi

Server definition

Hash
sha256:8db63c643c7a4f4d220bb81efce16bf4c67c12f5c440fe19b6942c563c9a2109
What it is
What a remote MCP server returned when asked what it offers: 5 tools

The blob, as servednamed by its sha256

{ "instructions": "pingwa is a two-way WhatsApp bridge to the account owner's own phone — a human in the loop for AI agents. There is no recipient field; messages always go to the key owner. Use `notify` to tell the human something happened (build done, task finished). Use `ask` to ask a question and BLOCK until the human answers on WhatsApp — they can reply with free text (steer you: 'use the other API', 'ship it') or tap one of up to 3 buttons; the reply comes back to you. Use `check_replies` to pull any inbound WhatsApp messages the human sent (poll for out-of-band instructions). Use `check_status` to see plan and remaining quota, and `upgrade` when quota runs out to get a Stripe link for the human to open (no password needed). Set PINGWA_KEY (a pw_... key) in the environment; without it, tools return an actionable error explaining how to get one.", "tools": [ { "description": "Ask the human a question on WhatsApp and BLOCK until they reply (or timeout).\n\n `text` is the question. `buttons` (optional, up to 3) render as tappable reply\n buttons; omit them to invite a free-text answer the human types on their phone —\n use this to let the human steer you mid-task. `timeout` is seconds to wait\n (max 90). Returns the human's reply (free text and/or the chosen option). On\n timeout, returns a note — the question was delivered and the answer is still\n retrievable via `check_replies`.\n ", "inputSchema": { "properties": { "buttons": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Buttons" }, "text": { "title": "Text", "type": "string" }, "timeout": { "default": 60, "title": "Timeout", "type": "integer" } }, "required": [ "text" ], "title": "askArguments", "type": "object" }, "name": "ask", "outputSchema": { "properties": { "result": { "title": "Result", "type": "string" } }, "required": [ "result" ], "title": "askOutput", "type": "object" } }, { "description": "Pull inbound WhatsApp messages the human sent to pingwa (out-of-band\n instructions, or late answers to an `ask`). `since` is a cursor from a previous\n call (pass it back to get only newer messages); `wait` long-polls up to that many\n seconds for something to arrive. Returns the messages and a new cursor.\n ", "inputSchema": { "properties": { "since": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Since" }, "wait": { "default": 0, "title": "Wait", "type": "integer" } }, "title": "check_repliesArguments", "type": "object" }, "name": "check_replies", "outputSchema": { "properties": { "result": { "title": "Result", "type": "string" } }, "required": [ "result" ], "title": "check_repliesOutput", "type": "object" } }, { "description": "Show the pingwa account's plan, remaining monthly quota, and whether the\n free 24h WhatsApp reply window is currently open.", "inputSchema": { "properties": {}, "title": "check_statusArguments", "type": "object" }, "name": "check_status", "outputSchema": { "properties": { "result": { "title": "Result", "type": "string" } }, "required": [ "result" ], "title": "check_statusOutput", "type": "object" } }, { "description": "Send a WhatsApp notification to the account owner's own phone.\n\n `text` is the message (1-1024 chars). `image_url` (optional) is a public https\n image link — a screenshot, chart or diff — delivered as an image with `text` as\n the caption when the user's 24h window is open (otherwise text only). Returns a\n confirmation with the queued message id; raises an actionable error on quota/auth.\n ", "inputSchema": { "properties": { "image_url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Image Url" }, "text": { "title": "Text", "type": "string" } }, "required": [ "text" ], "title": "notifyArguments", "type": "object" }, "name": "notify", "outputSchema": { "properties": { "result": { "title": "Result", "type": "string" } }, "required": [ "result" ], "title": "notifyOutput", "type": "object" } }, { "description": "Get a link to upgrade the account to Pro (raises the monthly quota).\n\n Returns a Stripe Checkout URL for the human to open and pay — no pingwa\n password needed, the card is handled by Stripe. If the account is already\n Pro, returns a billing-portal URL to manage or cancel instead.\n ", "inputSchema": { "properties": {}, "title": "upgradeArguments", "type": "object" }, "name": "upgrade", "outputSchema": { "properties": { "result": { "title": "Result", "type": "string" } }, "required": [ "result" ], "title": "upgradeOutput", "type": "object" } } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:8db63c643c7a4f4d220bb81efce16bf4c67c12f5c440fe19b6942c563c9a2109 | sha256sum