The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the PlainText Wallet Approval Checker listing page.
Moving: the paid wallet approval check now lives in presign-guard as
GET /v1/approvals?chain=…&address=…($0.02 USDC on Base or Solana, a verdict per approval and the ones to revoke, also as the MCP toolwallet_approvals)./api/explainoverlaps with presign-guard'sPOST /v1/check/explain. PlainText's paid routes keep working for now.
A small Node.js app that looks up a wallet's token/NFT approvals via the GoPlus Security API and asks Claude to explain them in plain language.
▶ Watch the 1-minute explainer · Live: https://plaintext.fizzl.eu
Open http://localhost:3000 — try the "Try a sample" tab first (no API keys needed besides Anthropic), then "Check a wallet" with a real address once you're happy it works.
Option A — one-click via render.yaml (Blueprint)
render.yaml automatically and creates the web service.ANTHROPIC_API_KEY — required, from console.anthropic.comGOPLUS_ACCESS_TOKEN — optional, only needed if you outgrow GoPlus's
free 30 calls/minute limit (see console.gopluslabs.io)Option B — manual web service (no render.yaml needed)
npm installnpm startANTHROPIC_API_KEY (and optionally
GOPLUS_ACCESS_TOKEN).https://<name>.onrender.com
URL once the build finishes.Render's free tier spins the service down after inactivity — the first request after idling will take ~30-50 seconds to wake up. That's normal and fine for a prototype you're sharing for feedback.
token_approval_security or nft721_approval_security
under https://api.gopluslabs.io/api/v2/.... This is documented but the
GoPlus docs site is JS-rendered, so before you rely on this in front of
real users, do one manual test call (e.g. with curl) against a wallet
you control, and compare the actual JSON shape to what server.js expects
— field names occasionally shift between GoPlus API versions.