mcpField
P
PlainText Wallet Approval Checker

PlainText Wallet Approval Checker

リモート
plaintext.fizzl.euセキュリティ11 週間前に更新
リポジトリ公式サイト

PlainText Wallet Approval Checker について

PlainTextは、トークンやNFTの承認、署名リクエストを理解したい人向けのNode.jsアプリです。チェック結果を平易な言葉で説明し、SAFE、CAUTION、RISKで示します。現在、判定はpresign-guardに基づいています。

主な機能

  1. 01トークンとNFTの承認チェック
  2. 02チェック結果の平易な説明
  3. 03SAFE・CAUTION・RISKの判定
  4. 04ユーザーデータを保存しないステートレス処理
  5. 05フィードバックの受付

活用シーン

  1. 01ウォレットのトークンやNFT承認の確認
  2. 02署名前の承認やトランザクションの理解
  3. 03不具合報告や機能要望の送信

MCP 対応

クライアントから不具合、機能要望、その他のフィードバックを送るMCPツールを提供します。READMEには判定と理由コードに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)は、ペイロードが実際の承認、トランザクション、または typed-data 署名の場合に presign-guard の署名前チェックを使用します(それ以外はモデルのみで説明され、source: "model" となります)。判定と理由コードだけが必要なエージェントは、presign-guard を直接呼び出せます($0.01–$0.02)。FIZZL_INTERNAL_KEY が必要です(両サービスで同じ値を設定し、Render のみで使用)。設定されていない場合は、従来の経路(GoPlus + Claude)が実行されます。

Node.js 製の小規模なアプリです。GoPlus Security API を使ってウォレットのトークン/NFT 承認を調べ、Claude に平易な言葉で説明させます。

PlainText in a minute

▶ 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 は任意です。応答は ID を含む 202 です。呼び出し元ごとに 1 時間あたり最大 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 を開きます。まず「Try a sample」タブを試してください(Anthropic 以外の API キーは不要です)。問題なく動作することを確認できたら、実際のアドレスを使って「Check a wallet」を試します。

2. Render にデプロイする

オプション A — render.yaml を使ったワンクリックデプロイ(Blueprint)

  1. このフォルダーを新しい GitHub リポジトリにプッシュします。
  2. Render ダッシュボードで、New + → Blueprint を選択し、リポジトリを選びます。Render が render.yaml を自動的に読み込み、ウェブサービスを作成します。
  3. 変数の入力を求められたら、以下を設定します。
    • ANTHROPIC_API_KEY — 必須。console.anthropic.com から取得します
    • GOPLUS_ACCESS_TOKEN — 任意。GoPlus の無料枠である 1 分あたり 30 回を超える場合にのみ必要です(console.gopluslabs.io を参照)
  4. Apply をクリックすると、Render が自動的にビルドしてデプロイします。

オプション B — 手動でウェブサービスを作成する(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 統合に関する注意事項

  • ウォレットチェックでは、https://api.gopluslabs.io/api/v2/... に対して token_approval_security または nft721_approval_security を呼び出します。これはドキュメントに記載されていますが、GoPlus のドキュメントサイトは JavaScript でレンダリングされるため、実際のユーザーに提供する前に、必ず自分で管理しているウォレットを使って(たとえば curl で)手動テストを行い、実際の JSON の形式が server.js の想定と一致することを確認してください。GoPlus API のバージョンによって、フィールド名が変わることがあります。
  • GoPlus の無料プランは、1 分あたり 30 回までです。初期テストには十分ですが、上限を超えると、UI に単純なエラーメッセージが表示されます。
  • このアプリではユーザーデータを一切保存しません。各チェックはステートレスな一往復の処理です。後からアカウント、保存済みウォレット、履歴を追加する場合は、この注意事項(およびご自身のプライバシーポリシー)も更新してください。

想定される費用

  • Render の無料プラン:月額 $0 で、上記のコールドスタート動作があります。有料プラン(「Starter」、月額 $7)にすると、利用が増えた場合にスピンダウンを防げます。
  • Anthropic API:従量課金で、指定したキーに請求されます。説明を 1 回生成するのに使うトークン数は少ないため(1K トークンを大きく下回ります)、1 回のチェックあたりの費用は 1 セント未満です。ただし、このプロトタイプにはまだレート制限が組み込まれていないため、広く共有する場合は使用量ダッシュボードを確認してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。