mcpField
W
Web3 Systemic Agent

Web3 Systemic Agent

リモート
github.com/RafaCoelho33その他01 日前に更新
リポジトリ

Web3 Systemic Agent について

Web3 Systemic Agentは、BaseおよびEVMネットワーク向けのWeb3セキュリティ・ガバナンス監査ツールです。決定論的なオンチェーン検査とGeminiによる意味評価を組み合わせ、無料スキャンと有料の詳細監査を提供します。

主な機能

  1. 01コントラクトのセレクターと権限のスキャン
  2. 02トークンのハニーポット兆候の検出
  3. 03DAO提案の実行データの確認
  4. 04オンチェーンルールとLLM評価の併用
  5. 05x402決済による詳細監査

活用シーン

  1. 01トークンのハニーポットリスクの確認
  2. 02コントラクトの特権関数の調査
  3. 03DAO提案の不審な実行内容の確認

MCP 対応

MCPサーバーは、無料のオンチェーン分析ツール3種と、有料の詳細な意味監査ツール1種を提供します。後者の実行にはx402マイクロペイメントを使います。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://web3-systemic-agent.onrender.com/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 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

Web3 条件アクショントリガーエージェント

2段階ハイブリッド LLM パイプラインと x402 Bazaar マイクロペイメントを備えた、自律型 Web3 セキュリティ&ガバナンス監査エージェント

Python 3.11+ Base x402 Protocol MCP Server Gemini 2.5/3.5 License: PolyForm Noncommercial

リアルタイムのスマートコントラクト監視、DEX ハニーポット検出、DAO ガバナンスセキュリティのために設計された、自律型 Web3 エージェントです。2段階ハイブリッドアーキテクチャを採用し、コストゼロの決定論的なオンチェーン審査と、構造化された Gemini LLM 評価を組み合わせ、Base 上で x402 によるガス代不要の USDC マイクロペイメントを利用して、エージェント間(A2A)で収益化します。

Claude Desktop、Cursor、Smithery、Glama、Coinbase AgentKit に対応した、高スループットの FastAPI REST サービスおよび Model Context Protocol(MCP)サーバーとしてネイティブに動作します。


🌐 本番稼働中のサービス

このサービスは Render 上で継続的にデプロイされ、本番環境で稼働しています。

標準 API エンドポイント
メソッドルート説明x402 マイクロペイメント
GET/サービスの検出、支払いパラメーター、エンドポイント一覧無料
GET/health稼働状況の確認、マルチチェーン RPC 接続、LLM の状態無料
GET/mcpMCP サーバーの検出、トランスポートメタデータ、ツールマニフェスト無料
POST/mcpMCP JSON-RPC 2.0 実行エンドポイント(streamable-http)無料/詳細監査は 402
POST/rules/validate静的な決定論的ルールの事前検証と構文チェック無料
POST/evaluate2段階ハイブリッド評価(決定論的評価+Gemini LLM)0.05 USDC
POST/rules/evaluate-batch最大50件のルールを同期バッチ評価無料/サブルールは課金対象
POST/rules/enqueue一意の job_id を返す非同期評価キュー無料
GET/jobs/{job_id}非同期ジョブの状態確認と結果取得無料

🔌 Model Context Protocol(MCP)サーバー

このエージェントは、プロトコル仕様 2024-11-05 を実装した、第一級の Model Context Protocol(MCP) サーバー(src/mcp_server.py)を提供します。脅威を検出して評価するための無料のステージ1オンチェーン分析ツールを3つと、詳細なセマンティック監査を行う有料のステージ2ツールを1つ提供します。

                                  ┌───────────────────────────────────────────────┐
                                  │           MCP Server Tools Registry           │
                                  └───────────────────────────────────────────────┘
                                                          │
                    ┌─────────────────────────────────────┴─────────────────────────────────────┐
                    ▼                                                                           ▼
      ┌───────────────────────────┐                                               ┌───────────────────────────┐
      │     STAGE 1: FREE TOOLS   │                                               │    STAGE 2: PAID AUDIT    │
      │   (Deterministic / $0.00) │                                               │     ($0.05 USDC via x402) │
      └───────────────────────────┘                                               └───────────────────────────┘
                    │                                                                           │
       ├── scan_contract_selectors ───> Discovers EVM selectors & high-risk backdoors           │
       ├── check_token_honeypot    ───> Static bytecode analysis for tax & blacklist traps      │
       └── scan_dao_proposals      ───> Ingests Snapshot DAO proposals & calldata payloads     │
                                                                                                │
                               └─── (Upsell Recommendation Triggered) ──────────────────────────┘
                                                                ▼
                                                      deep_semantic_audit
                                        (Two-Stage Gatekeeping + Gemini LLM Reasoning)
1. 無料のステージ1ツール
scan_contract_selectors
  • 目的: Base または任意の EVM ネットワーク上で、無料かつ決定的なバイトコード検査を行います。4 バイトの関数セレクターを検出し、権限の強い管理用バックドア(transferOwnership、upgradeTo、mint、selfdestruct)にフラグを付けます。
  • パラメーター:
    • target_address (string, required):16 進数形式の EVM スマートコントラクトアドレス。
    • chain_id (integer, default 8453):EVM Chain ID(Base Mainnet は 8453、Base Sepolia は 84532)。
    • bytecode_override (string, optional):オフライン分析用の、コントラクトのランタイムバイトコードを表す生の 16 進数文字列。
  • 戻り値: コントラクトのステータス、バイトコードサイズ、抽出したセレクター、フラグが付けられた高リスク機能、リスクレベル(HIGH、LOW、EOA)、および上位プランへの案内を返します。
check_token_honeypot
  • 目的: DEX のハニーポット、ラグプルの罠、悪意のあるトークンコントラクトを対象に、無料の静的バイトコード分析を行います。
    • ブラックリスト操作(isBlacklisted、setBlacklist、addToBlacklist)
    • 任意の送金税と売却手数料 100% の罠(setTax、setFee、setSellFee)
    • 取引の凍結および一時停止のバックドア(pause、setTrading、enableTrading)
    • EVM の SELFDESTRUCT(オペコード 0xff)による資金流出の罠
  • パラメーター:
    • token_address (string, required):トークンコントラクトの 16 進数形式の EVM アドレス。
    • chain_id (integer, default 8453):EVM Chain ID。
    • bytecode_override (string, optional):オフライン分析用の、トークンのランタイムバイトコードを表す生の文字列。
  • 戻り値: is_honeypot_suspect の真偽値、数値の risk_score(0.0~10.0)、有効な脅威カテゴリ、詳細なリスクフラグ、および監査の上位プランへの案内を返します。
scan_dao_proposals
  • 目的: Snapshot DAO の最近のガバナンス提案(Arbitrum、Aave、ENS など)を対象に、無料のスキャンを行います。提案された実行先、ネイティブ Wei の送金額、4 バイトの calldata を抽出し、ガバナンス乗っ取りの試みを検出します。
  • パラメーター:
    • space_id (string, default "arbitrumfoundation.eth"):Snapshot DAO スペースの ENS ドメイン。
    • limit (integer, default 3):取得する提案の最大数。
    • use_curated_offline (boolean, default false):true の場合、外部ネットワークへの接続なしで、検証済みの現実的な厳選提案を返します。
  • 戻り値: 提案 ID、自然言語のタイトル、実行先、calldata ペイロード、および監査の推奨事項を返します。
2. 有料の Stage 2 ツール
deep_semantic_audit
  • 目的: 2 段階の自律型セキュリティおよびガバナンス監査を行います。決定的なオンチェーンのゲートチェックに続いて、構造化された Google Gemini LLM の推論を実行し、自然言語の主張と実際のバイトコードおよび calldata の内容を照合します。
  • パラメーター:
    • target_address (string, required):16 進数形式の EVM スマートコントラクトアドレス。
    • proposal_description (string, required):自然言語による主張、またはガバナンス提案の説明。
    • policy_prompt (string, optional):監査対象となるセキュリティポリシーまたは基準。
    • calldata (string, default "0x"):実行されるトランザクションの 16 進数 calldata。
    • chain_id (integer, default 8453):EVM Chain ID。
    • risk_threshold (number, default 7.0):介入が必要となるリスクのしきい値(0.0~10.0)。
    • x402_payment_header (string, optional):0.05 ドルの USDC 支払いを満たす、Base64 エンコードされた EIP-3009 送金承認。
  • 料金とマイクロペイメントのフロー:
    • 支払い情報なしで呼び出すと、正確な受取人アドレス、金額(0.05 ドルの USDC)、手順を含む、構造化された HTTP 402 支払い要求を返します。
    • x402_payment_header が指定されている場合(または環境で X402_BUYER_PRIVATE_KEY が設定されている場合)、監査を直ちに実行し、リスクスコアとフラグが付けられた問題を含む、決定的なポリシー判定(APPROVE、MANUAL_REVIEW、REJECT)を返します。

🛠️ MCP クライアントの設定とインストール

Claude Desktop

claude_desktop_config.json にサーバーを追加します。

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "web3-systemic-agent": {
      "command": "python",
      "args": ["-m", "src.mcp_server"],
      "cwd": "/path/to/web3-condition-action-trigger-agent",
      "env": {
        "WEB3_AGENT_URL": "https://web3-systemic-agent.onrender.com",
        "X402_BUYER_PRIVATE_KEY": ""
      }
    }
  }
}
Cursor IDE

プロジェクトのルートまたはユーザー設定にある .cursor/mcp.json を作成または編集します。

{
  "mcpServers": {
    "web3-systemic-agent": {
      "command": "python",
      "args": ["-m", "src.mcp_server"],
      "env": {
        "WEB3_AGENT_URL": "https://web3-systemic-agent.onrender.com"
      }
    }
  }
}
Smithery(smithery.yaml)

Smithery.ai から直接インストールします。

smithery run web3-systemic-agent

または、ローカルのマニフェストを参照します。

startCommand:
  type: stdio
  configSchema:
    type: object
    properties:
      web3AgentUrl:
        type: string
        default: "https://web3-systemic-agent.onrender.com"
      x402BuyerPrivateKey:
        type: string
  commandFunction:
    python: "python -m src.mcp_server"
Glama(glama.json)

Glama MCP Directory で検証済みです。

{
  "$schema": "https://glama.ai/mcp/schemas/server.json",
  "name": "web3-systemic-agent",
  "maintainers": ["RafaCoelho33"],
  "homepage": "https://web3-systemic-agent.onrender.com",
  "repository": "https://github.com/RafaCoelho33/web3-systemic-agent"
}
Coinbase AgentKit / Streamable-HTTP

ローカルにインストールせず、HTTP ストリーミングでリモート MCP エンドポイントに接続します。

import httpx

# Ingest tools manifest via Streamable-HTTP
async with httpx.AsyncClient() as client:
    resp = await client.get("https://web3-systemic-agent.onrender.com/mcp")
    tools = resp.json()["tools"]

🏗️ 2 段階アーキテクチャと x402 マイクロペイメント

flowchart TD
    Client["Client / Agent / MCP Tool"] -->|POST /evaluate or deep_semantic_audit| Gate["x402 Payment Gatekeeper\n(EIP-3009 Gasless USDC)"]
    Gate -->|No / Invalid Payment Header| R402["HTTP 402 Payment Required\n(0.05 USDC -> PAY_TO_ADDRESS)"]
    Gate -->|Valid EIP-3009 Authorization| S1["Stage 1: ChainInspector (AsyncWeb3)\nBytecode Cache + Native Balance + Selectors"]
    S1 -->|Condition Fails| ShortCircuit["Deterministic Short-Circuit\n(llm_invoked=False, LLM Cost = $0.00)"]
    S1 -->|RPC Connectivity Error| Err503["HTTP 503 Unavailable\n(Payment NOT Settled / No Charge)"]
    S1 -->|Condition Passes| S2["Stage 2: GeminiSemanticEvaluator\nStructured JSON Schema + Failover Models"]
    S2 --> Policy["enforce_decision_policy\nDeterministic Escalation: REJECT / MANUAL / APPROVE"]
    ShortCircuit --> Settle["Settle Payment via x402 Facilitator\nLog to SQLite Ledger (data/agent.db)"]
    Policy --> Settle
    Settle --> Resp["HTTP 200 OK: FinalAgentResponse + PaymentReceipt"]
オンチェーンでの決済実績(Base Sepolia)

EIP-3009(transferWithAuthorization) を使用した x402 A2A 決済サイクルは、買い手またはエージェントがガス代として ETH を消費することなく、Base Sepolia(Chain ID: 84532) 上で検証・決済されています。

指標トランザクション 1(直接決済)トランザクション 2(ライブメンプールの捕捉)トランザクション 3(本番レンダリング)
トランザクションハッシュ0xa02872819cef...0x6aa7c671469d...0x63ea962e6f0d...
決済方法直接 EIP-3009 呼び出しライブメンプール/ブロックのスキャンPOST https://web3-systemic-agent.onrender.com/evaluate
オンチェーンのステータスSuccess(ブロック 54583500)Success(ブロック 54644484)Success
エージェントウォレット(PAY_TO_ADDRESS)0x2b7F1fd931...0x2b7F1fd931...0x2b7F1fd931...
買い手ウォレット(A2A エージェント)0x4EbC7529d8...0x4EbC7529d8...0x4EbC7529d8...
x402 ファシリテーター(ガス代スポンサー)0xd407e409E3...(https://x402.org/facilitator)0xd407e409E3...(https://x402.org/facilitator)0xd407e409E3...(https://x402.org/facilitator)
USDC トークンコントラクト0x036CbD5384...0x036CbD5384...0x036CbD5384...
決済額0.01 USDC0.01 USDC0.05 USDC
ガス代(買い手/サーバー)0.00 ETH(ガスレス EIP-3009)0.00 ETH(ガスレス EIP-3009)0.00 ETH(ガスレス EIP-3009)

📁 リポジトリ構成

├── src/
│   ├── api.py                    # FastAPI service, x402 middleware, REST & MCP endpoints
│   ├── mcp_server.py             # MCP server implementation (stdio & HTTP, 4 tools)
│   ├── engine.py                 # ConditionAgentEngine two-stage orchestrator
│   ├── chain_inspector.py        # Stage 1 deterministic on-chain gatekeeper with FIFO cache
│   ├── semantic_evaluator.py     # Stage 2 Gemini/OpenAI LLM evaluator with cooldown failovers
│   ├── schemas.py                # Pydantic v2 strict schemas and contracts
│   ├── x402_payment.py           # x402 protocol, EIP-3009 signatures, replay defense
│   ├── governance_connector.py   # Snapshot GraphQL connector & Discord/Slack dispatcher
│   ├── storage.py                # Asynchronous SQLite ledger with automatic secret redaction
│   ├── task_worker.py            # In-memory background task worker pool
│   └── report.py                 # Telemetry CLI reporting token costs, revenue, net profit
├── scripts/
│   ├── block_contract_scanner.py # Autonomous Base Mainnet block deployment scanner
│   ├── dex_pool_monitor.py       # Uniswap v3 & Aerodrome pool event monitor & honeypot engine
│   ├── governance_listener.py    # Snapshot DAO sentinel bot
│   ├── client_agent_x402.py      # Standalone A2A client with real on-chain settlement
│   └── setup_buyer_wallet.py     # Wallet generation and USDC balance inspection utility
├── tests/                        # 460+ automated unit, security, and integration tests
├── smithery.yaml                 # Smithery MCP registry manifest
├── glama.json                    # Glama MCP directory configuration
├── Dockerfile                    # Production Docker container definition
├── docker-compose.yml            # Local containerized orchestration
└── .env.example                  # Environment configuration template

⚡ クイックスタートとセットアップ

1. インストール
git clone https://github.com/RafaCoelho33/web3-condition-action-trigger-agent.git
cd web3-condition-action-trigger-agent

# Install core and development dependencies
pip install -r requirements-dev.txt
2. 設定(.env)

テンプレートをコピーし、API キーを設定します。

cp .env.example .env

主な環境変数:

# Server
PORT=8000
PUBLIC_EVALUATE_ONLY=true

# Google Gemini API
GEMINI_API_KEY=your_gemini_api_key_here
GEMINI_MODEL=gemini-3.5-flash-lite
GEMINI_FAILOVER_MODELS=gemini-3.5-flash-lite,gemini-3.1-flash-lite,gemini-2.5-flash-lite,gemini-2.0-flash

# x402 Micropayment Protocol
PAY_TO_ADDRESS=0x2b7F1fd931f7f28f89e0f688Dd5Bb7a620c24b63
X402_ENABLED=true
X402_NETWORK=eip155:8453
X402_PRICE_EVALUATE=0.05
X402_USE_LIVE_FACILITATOR=true
3. MCP サーバーをオフラインで検証
python src/mcp_server.py --dry-run

想定される出力:

=== Web3 Systemic Agent MCP Server Self-Test ===
[1/5] Registered 4 MCP tools: scan_contract_selectors, check_token_honeypot, scan_dao_proposals, deep_semantic_audit
[2/5] Tool 'scan_contract_selectors' OK: risk_level=LOW, selectors=1, cost=$0.00
[3/5] Tool 'check_token_honeypot' OK: is_honeypot=True, score=7.5, cost=$0.00
[4/5] Tool 'scan_dao_proposals' OK: count=1, cost=$0.00
[5/5] Tool 'deep_semantic_audit' OK: status=payment_required, status_code=402, price_usdc=0.05
=== All MCP self-tests PASSED successfully ===
4. テストスイート全体を実行
pytest

📜 ライセンス

このプロジェクトは、PolyForm Noncommercial License 1.0.0 の下でライセンスされています。

  • 許可される用途: 非商用利用、研究、教育目的の学習、および個人的な実験。
  • 禁止される用途: 商用利用、有料の商用サービスとしてのホスティング、または商用ライセンスなしでの独自のエンタープライズ向けサービスへの組み込み。
  • 商用ライセンスに関するお問い合わせ: 商用ライセンス契約については、https://github.com/RafaCoelho33 までお問い合わせください。

コメント

MCP は初めてですか?

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

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