PlainText Wallet Approval Checker MCP server
Commit 29 Okt 2026Menerjemahkan persetujuan wallet crypto dan permintaan signature yang kompleks menjadi penilaian bahasa sederhana seperti SAFE, CAUTION, atau RISK.
Juga dikenal sebagai Fizzl13/SmartContractExplainer, smartcontractexplainer
- Stars
- 1
- Tools
- —
- Unduhan, 30 hari
- —
- Versi terbaru
- 1.1.2
- Commit terakhir
- 29 Okt 2026
- Lisensi
- —
Apa itu PlainText Wallet Approval Checker MCP?
PlainText Wallet Approval Checker adalah MCP server. Menerjemahkan persetujuan wallet crypto dan permintaan signature yang kompleks menjadi penilaian bahasa sederhana seperti SAFE, CAUTION, atau RISK.
Ringkasan dibuat dari README proyek
Tentang PlainText Wallet Approval Checker MCP server
PlainText Wallet Approval Checker membantu pengguna memahami implikasi keamanan dari persetujuan wallet cryptocurrency dan permintaan signature. Tool ini menerjemahkan data teknis menjadi penilaian sederhana seperti SAFE, CAUTION, atau RISK. Layanan ini bekerja dengan cara memeriksa approval token dan NFT melalui GoPlus Security API dan menggunakan Claude untuk menghasilkan penjelasan yang mudah dibaca manusia.
Developer dapat menjalankan aplikasi Node.js ini secara lokal atau men-deploy ke Render. Setup server memerlukan ANTHROPIC_API_KEY, dan GOPLUS_ACCESS_TOKEN opsional dapat digunakan untuk melewati limit free tier sebesar 30 panggilan per menit. Untuk pengguna tingkat lanjut, sistem dapat menggunakan presign-guard untuk melakukan audit pada transaksi, typed-data signatures, atau real approvals menggunakan FIZZL_INTERNAL_KEY. Aplikasi ini bersifat stateless dan tidak menyimpan data pengguna apa pun selama proses pengecekan.
Apa yang bisa Anda lakukan dengannya
- 1Audit keamanan transaksiGunakan integrasi presign-guard untuk memeriksa keamanan transaksi dan typed-data signatures.
- 2Monitor keamanan via APIIntegrasikan pengecekan keamanan otomatis ke dalam agent yang membutuhkan reason code dan verdict spesifik.
Ditulis berdasarkan README proyek. Setiap use case diperiksa terhadap kutipan dari README tersebut.
Cara menginstal PlainText Wallet Approval Checker MCP
Format diverifikasi 10 Nov 2026Tambahkan ke CursorTambahkan ke GooseInstal PlainText Wallet Approval Checker MCP di Claude Code
$ claude mcp add --transport http smartcontractexplainer https://plaintext.fizzl.eu/mcpInstal PlainText Wallet Approval Checker MCP di Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"smartcontractexplainer": {
"url": "https://plaintext.fizzl.eu/mcp"
}
}
}Instal PlainText Wallet Approval Checker MCP di VS Code
.vscode/mcp.json
{
"servers": {
"smartcontractexplainer": {
"type": "http",
"url": "https://plaintext.fizzl.eu/mcp"
}
}
}Instal PlainText Wallet Approval Checker MCP di VS Code CLI
$ code --add-mcp '{"name":"smartcontractexplainer","type":"http","url":"https://plaintext.fizzl.eu/mcp"}'Instal PlainText Wallet Approval Checker MCP di Codex
$ codex mcp add smartcontractexplainer --url https://plaintext.fizzl.eu/mcpInstal PlainText Wallet Approval Checker MCP di Codex config.toml
~/.codex/config.toml
[mcp_servers.smartcontractexplainer] url = "https://plaintext.fizzl.eu/mcp"
Instal PlainText Wallet Approval Checker MCP di Gemini CLI
$ gemini mcp add -s user --transport http smartcontractexplainer https://plaintext.fizzl.eu/mcpInstal PlainText Wallet Approval Checker MCP di Gemini settings.json
~/.gemini/settings.json
{
"mcpServers": {
"smartcontractexplainer": {
"url": "https://plaintext.fizzl.eu/mcp",
"type": "http"
}
}
}Pengecekan otomatis
Berjalan 15 Nov 2026Laporan lengkap →Belum diverifikasi. Sebuah server memerlukan skor 80, tidak ada temuan serius, dan data yang cukup untuk kami periksa. Cara kerja checks · Yang perlu diperbaiki untuk menambah poin
- Source repository terhubung dan dapat dijangkaufizzl13/smartcontractexplainer is public and reachablegithub.com/fizzl13/smartcontractexplainer ↗Lolos
- Nama paket mencantumkan repositori ini sebagai sumbernyaTidak diperiksa
- Provenance build (atestasi Sigstore)Tidak diperiksa
- Lisensi open source (OSI)No licenseTemuan
- Ada commit atau release dalam satu tahun terakhirLast commit or release 2026-10-29github.com/fizzl13/smartcontractexplainer ↗Lolos
- OpenSSF ScorecardTidak diperiksa
- Nama package tidak mirip dengan package populerTidak diperiksa
- Tidak ada advisory kritis pada paket atau dependensinyaTidak diperiksa
- Tidak ada instruksi tersembunyi untuk model0 tool descriptions and the README read; no override phrases, credential paths or hidden charactersLolos
- Tools yang bersifat destruktif telah diberi labelTidak diperiksa
- Endpoint remote merespons handshake MCPEndpoint did not answer initialize: HTTP 200Temuan
README
Lihat di GitHubPlainText — wallet approval translator
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). NeedsFIZZL_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.
▶ 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:
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
cd plaintext-wallet
npm install
cp .env.example .env
# edit .env and paste your ANTHROPIC_API_KEY
npm 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)
- Push this folder to a new GitHub repo.
- In the Render dashboard: New + → Blueprint → select your repo.
Render reads
render.yamlautomatically and creates the web service. - When prompted, fill in the environment variables:
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)
- Click Apply — Render builds and deploys automatically.
Option B — manual web service (no render.yaml needed)
- Push this folder to a GitHub repo.
- Render dashboard → New + → Web Service → connect your repo.
- Settings:
- Environment: Node
- Build Command:
npm install - Start Command:
npm start - Instance Type: Free (fine for a prototype)
- Under Environment Variables, add
ANTHROPIC_API_KEY(and optionallyGOPLUS_ACCESS_TOKEN). - Click Create Web Service. Render gives you a
https://<name>.onrender.comURL 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_securityornft721_approval_securityunderhttps://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. withcurl) against a wallet you control, and compare the actual JSON shape to whatserver.jsexpects — 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.
Pertanyaan tentang PlainText Wallet Approval Checker MCP
Bagaimana cara menambahkan PlainText Wallet Approval Checker MCP ke Claude Code?
Jalankan claude mcp add --transport http smartcontractexplainer https://plaintext.fizzl.eu/mcp di terminal Anda. Tambahkan --scope user agar tersedia di semua proyek.
Bagaimana cara menambahkan PlainText Wallet Approval Checker MCP ke Cursor?
Buka ~/.cursor/mcp.json dan tambahkan server di bawah mcpServers, menggunakan config Cursor yang ditunjukkan di bagian instalasi di atas.
Bagaimana layanan ini menentukan keamanan sebuah wallet?
Layanan ini menggunakan GoPlus Security API untuk memeriksa approval token dan NFT, serta menggunakan Claude untuk menjelaskan temuan tersebut dalam bahasa yang mudah dimengerti.
Apakah aplikasi ini menyimpan data pengguna?
Tidak, aplikasi ini bersifat stateless dan tidak menyimpan data pengguna apa pun selama proses pengecekan.
