PlainText Wallet Approval Checker

io.github.Fizzl13由 GitHub 帳號 Fizzl13 發布v1.1.2更新於 Nov 1, 2026

Explains wallet approvals and signature requests in plain language: SAFE, CAUTION or RISK.

發布方自己的服務:Approval Studio

已驗證Streamable HTTP可網頁執行金融安全與監控

概覽

AI 產生的概覽

遠端 MCP 伺服器,用來檢查 EVM 錢包的代幣與 NFT 授權,並以白話文給出 SAFE、CAUTION 或 RISK 結論。

可以做什麼
  • 檢查錢包目前的代幣與 NFT 授權,並給出白話文安全結論,說明每個授權對象是誰、哪些應該撤銷
  • 用白話文解釋你手上已有的授權、權限或簽章 JSON 資料
  • 以結構化方式回報此服務的錯誤或功能建議
適用情境
當助理需要協助使用者判斷錢包的代幣或 NFT 授權是否有風險,或在簽章前把授權、簽章資料翻成白話文時適用。
執行需求
遠端 streamable HTTP 端點;未宣告任何身分驗證、環境變數或標頭。託管服務依賴第三方安全與模型 API,README 提到免費方案閒置後首次請求約需 30 至 50 秒喚醒。
安裝前請注意
送出的錢包地址會傳到託管服務及其上游安全與模型供應商;README 表示檢查為無狀態、不儲存使用者資料。結論來自第三方授權資料,僅供參考,簽章或撤銷前不應視為保證。意見回饋工具會把報告送給營運方。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 PlainText Wallet Approval Checker,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.Fizzl13%2Fplaintext-wallet-checker/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "plaintext-wallet-approval-checker": {
      "type": "http",
      "url": "https://plaintext.fizzl.eu/mcp"
    }
  }
}

README

PlainText — wallet approval translator

[x402 payable] · Live status

Built on presign-guard: PlainText's verdicts now come from presign-guard (the same checks, sanctions list, wallet age and signed receipt); PlainText adds the explanation in plain language for people. POST /api/check-wallet ($0.04) uses presign-guard's approval audit, POST /api/explain ($0.03) its pre-sign check when the payload is a real approval, transaction or typed-data signature (anything else is explained by the model alone, source: "model"). Agents that only need the verdict and reason codes can call presign-guard directly ($0.01–$0.02). Needs FIZZL_INTERNAL_KEY (the same value on both services, Render only); without it the old path (GoPlus + Claude) runs.

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.

[PlainText in a minute]

▶ Watch the 1-minute explainer · Live: https://plaintext.fizzl.eu

Project structure

plaintext-wallet/├── server.js          Express backend (GoPlus + Anthropic calls)├── media.js           Serves the explainer video from the explainer-video branch├── feedback.js        POST /feedback and the MCP tool feedback (same file in every Fizzl service)├── media/explainer/   Script and pipeline for the explainer video├── package.json├── render.yaml         Render deploy config (optional, see below)├── .env.example         Copy to .env for local dev└── public/    └── index.html      Frontend (wallet check + demo scenarios)

Feedback

Found a bug, or missing something? Send it with POST /feedback (free, no payment) or the MCP tool feedback:

bash
curl -X POST https://plaintext.fizzl.eu/feedback \  -H 'content-type: application/json' \  -d '{"type": "feature", "message": "Support Solana wallets", "endpoint": "/api/check-wallet"}'

type is bug, feature or other; message is required (up to 2000 characters); endpoint and contact are optional. The answer is 202 with an id. At most 10 reports per hour per caller. Reports go to the usage log, and a person reads every one; nothing in a report is run or changed automatically. GET /feedback shows the schema.

1. Run it locally first

bash
cd plaintext-walletnpm installcp .env.example .env# edit .env and paste your ANTHROPIC_API_KEYnpm start

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.

2. Deploy to Render

Option A — one-click via render.yaml (Blueprint)

  1. Push this folder to a new GitHub repo.
  2. In the Render dashboard: New + → Blueprint → select your repo. Render reads render.yaml automatically and creates the web service.
  3. When prompted, fill in the environment variables:
    • ANTHROPIC_API_KEY — required, from console.anthropic.com
    • GOPLUS_ACCESS_TOKEN — optional, only needed if you outgrow GoPlus's free 30 calls/minute limit (see console.gopluslabs.io)
  4. Click Apply — Render builds and deploys automatically.

Option B — manual web service (no render.yaml needed)

  1. Push this folder to a GitHub repo.
  2. Render dashboard → New + → Web Service → connect your repo.
  3. Settings:
    • Environment: Node
    • Build Command: npm install
    • Start Command: npm start
    • Instance Type: Free (fine for a prototype)
  4. Under Environment Variables, add ANTHROPIC_API_KEY (and optionally GOPLUS_ACCESS_TOKEN).
  5. Click Create Web Service. Render gives you a 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.

Notes on the GoPlus integration

  • The wallet check calls 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.
  • The free GoPlus tier is capped at 30 calls/minute — plenty for early testing, but rate-limit errors will surface as a plain error message in the UI if you exceed it.
  • No user data is stored anywhere in this app — every check is a stateless round trip. If you later add accounts, saved wallets, or history, update this note (and your own privacy policy) accordingly.

Costs to expect

  • Render free tier: $0/month, with the cold-start behavior above. A paid tier ($7/month "Starter") removes the spin-down if this gets real usage.
  • Anthropic API: pay-per-use, billed to whatever key you provide. A single explanation call is small (well under 1K tokens), so cost per check will be a fraction of a cent — but keep an eye on your usage dashboard if this gets shared widely, since there's no rate limiting built into this prototype yet.

來源:README.md,提交 5081cea

工具

3

check_wallet_approvals

Check Wallet Approvals

Check an EVM wallet's live token/NFT approvals and get a plain-language safety verdict (SAFE, CAUTION, or RISK) with an explanation. The verdict comes from presign-guard's approval audit (who each spender is, which to revoke).

輸入參數kindchainaddress必填

explain_approval

Explain Approval Payload

Explain an arbitrary approval/permission JSON payload in plain language, when you already have the data instead of needing an on-chain lookup.

輸入參數data必填

feedback

Send feedback (free)

Report a bug, a missing feature or anything else about this service, in a structured way. Free. A person reads every report; nothing is run or changed automatically.

輸入參數typecontactmessage必填endpoint

版本歷史

4
  1. v1.1.2最新Oct 5, 2026
  2. v1.1.1Sep 28, 2026
  3. v1.1.0Sep 23, 2026
  4. v1.0.0Sep 22, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。

其他 Approval 整合