mcpField
P
PlainText Wallet Approval Checker

PlainText Wallet Approval Checker

远程服务
plaintext.fizzl.eu安全11 周前更新

关于 PlainText Wallet Approval Checker

PlainText 是一个 Node.js 钱包授权解释应用,面向需要理解代币和 NFT 授权或签名请求的用户。它将检查结果转述为通俗语言,并给出 SAFE、CAUTION 或 RISK 判定;当前判定基于 presign-guard。

主要功能

  1. 01查询代币和 NFT 授权
  2. 02以通俗语言解释检查结果
  3. 03提供 SAFE、CAUTION 或 RISK 判定
  4. 04无状态处理,不存储用户数据
  5. 05支持反馈提交

适用场景

  1. 01检查钱包中的代币或 NFT 授权
  2. 02理解签名前的授权或交易请求
  3. 03提交错误报告或功能建议

MCP 相关

PlainText 提供 MCP feedback 工具,供客户端提交问题、功能建议或其他反馈。文档也提及通过 presign-guard 获取判定和原因代码。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://plaintext.fizzl.eu/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

PlainText — 钱包授权翻译器

x402 payable · 实时状态

基于 presign-guard 构建: PlainText 现在通过 presign-guard 生成判定结果(相同的检查、制裁名单、钱包年龄和签名回执);PlainText 会用通俗易懂的语言向用户解释。POST /api/check-wallet($0.04)使用 presign-guard 的授权审计;POST /api/explain($0.03)在负载是真正的授权、交易或类型化数据签名时使用其签名前检查(其他内容仅由模型解释,source: "model")。只需要判定结果和原因代码的 Agent 可以直接调用 presign-guard($0.01–$0.02)。需要设置 FIZZL_INTERNAL_KEY(两个服务使用相同的值,仅限 Render);未设置时会运行旧路径(GoPlus + Claude)。

一个小型 Node.js 应用,通过 GoPlus Security API 查询钱包的代币/NFT 授权,并让 Claude 用通俗易懂的语言解释这些授权。

一分钟了解 PlainText

▶ 观看 1 分钟介绍视频 · 在线体验:https://plaintext.fizzl.eu

项目结构

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)

反馈

发现错误或有什么遗漏?通过 POST /feedback(免费,无需付款)或 MCP 工具 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 可以是 bug、feature 或 other;必须提供 message(最多 2000 个字符);endpoint 和 contact 为可选项。响应为 202,并包含一个 ID。每位调用者每小时最多可提交 10 条报告。报告会写入使用日志,并由人工逐条查看;报告中的任何内容都不会自动运行或更改。GET /feedback 可查看架构。

1. 先在本地运行

cd plaintext-wallet
npm install
cp .env.example .env
# edit .env and paste your ANTHROPIC_API_KEY
npm start

打开 http://localhost:3000 — 可以先试试“试用示例”标签页(除 Anthropic 外无需 API 密钥),确认运行正常后,再用真实地址试试“检查钱包”。

2. 部署到 Render

选项 A — 通过 render.yaml 一键部署(Blueprint)

  1. 将此文件夹推送到新的 GitHub 仓库。
  2. 在 Render 控制面板中:New + → Blueprint → 选择你的仓库。 Render 会自动读取 render.yaml 并创建 Web 服务。
  3. 出现提示时,填写环境变量:
    • ANTHROPIC_API_KEY — 必需,从 console.anthropic.com 获取
    • GOPLUS_ACCESS_TOKEN — 可选,仅当 GoPlus 的免费 30 次/分钟额度无法满足需求时才需要(参见 console.gopluslabs.io)
  4. 点击 Apply — Render 会自动构建并部署。

选项 B — 手动创建 Web 服务(无需 render.yaml)

  1. 将此文件夹推送到 GitHub 仓库。
  2. Render 控制面板 → New + → Web Service → 连接你的仓库。
  3. 设置:
    • Environment:Node
    • Build Command:npm install
    • Start Command:npm start
    • Instance Type:Free(用于原型足够)
  4. 在 Environment Variables 下,添加 ANTHROPIC_API_KEY(以及可选的 GOPLUS_ACCESS_TOKEN)。
  5. 点击 Create Web Service。构建完成后,Render 会提供一个 https://<name>.onrender.com URL。

Render 的免费套餐会在服务空闲一段时间后将其关闭 — 空闲后发出的第一个请求需要约 30–50 秒才能唤醒服务。这是正常现象,对于用于收集反馈的原型来说完全没问题。

GoPlus 集成说明

  • 钱包检查会调用 token_approval_security 或 nft721_approval_security (地址为 https://api.gopluslabs.io/api/v2/...)。相关文档有记录,但 GoPlus 文档网站使用 JS 渲染,因此在面向真实用户使用前,请先手动调用一次(例如使用 curl),检查一个你控制的钱包,并将实际返回的 JSON 结构与 server.js 的预期进行比较——GoPlus API 版本之间的字段名称偶尔会有变化。
  • GoPlus 免费套餐限制为每分钟 30 次调用——足以满足早期测试需求,但超过限制时,界面中会显示普通错误消息。
  • 此应用不会在任何地方存储用户数据——每次检查都是无状态的往返调用。以后若添加账户、保存的钱包或历史记录,请相应更新本说明(以及你自己的隐私政策)。

预期费用

  • Render 免费套餐:每月 $0,但会出现上述冷启动行为。若应用开始有实际使用量,付费套餐(每月 $7 的 “Starter”)可取消自动休眠。
  • Anthropic API:按使用量付费,费用计入你提供的密钥账户。单次说明调用的用量很少(远低于 1K 个 Token),因此每次检查的费用不到一美分的一小部分——但如果应用广泛分享,请留意用量控制面板,因为这个原型目前尚未内置速率限制。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。