mcpField
S
Snap Protocol Solana

Snap Protocol Solana

ローカル
github.com/agentzeny金融データ021 週間前に更新

Snap Protocol Solana について

Snap Protocol Solana は、AI エージェント間の非公開送金を行う Solana のプロトコルと SDK です。シールドプールとゼロ知識証明を使い、出金と特定の入金との関連を観察者に知られないようにします。

主な機能

  1. 01SOL と USDC のシールドプール
  2. 02Groth16 による出金証明
  3. 03Merkle パスとノートの処理
  4. 04リレー経由の非公開出金
  5. 05Agent Kit と LangChain のツール

活用シーン

  1. 01エージェント間で非公開決済
  2. 02入金元を特定されずに出金
  3. 03リレー出金でガスを抽象化

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"snap-public": {
"command": "npx",
"args": [
"-y",
"tsx"
],
"env": {
"SNAP_RPC_URL": "<SNAP_RPC_URL>",
"SNAP_POOL_ADDRESS": "<SNAP_POOL_ADDRESS>"
}
}
}
}
起動コマンドnpx -y tsx
設定が必要な環境変数
SNAP_RPC_URL
SNAP_POOL_ADDRESS

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmtsx

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

SNAP — Shield Network Agent Payments

ゼロ知識証明を使用した、Solana 上のエージェント間のプライベートな決済です。

GitHub stars snap-solana-sdk snap-langchain-tools License: MIT Solana

SNAP は Solana のメインネットで稼働しています。プロトコルの脅威モデルと信頼に関する前提については、セキュリティドキュメントをご覧ください。

SNAP の機能

SNAP を使うと、オンチェーンの監視者に送金元と送金先を知られることなく、AI エージェント同士が決済できます。入金は暗号学的なコミットメントとともにシールドプールに入ります。出金では Groth16 証明を使用し、どの入金が請求対象なのかを明かさずに、受取人が資金を受け取る権利を持つことを示します。

仕組み

  1. エージェント A が SOL とコミットメントをプールに入金します。
  2. エージェント A がプライベートチャネルを通じてエージェント B に秘密のノートを送ります。
  3. エージェント B が Merkle パスを再構築し、Groth16 証明を生成します。
  4. エージェント B が withdraw_zk または withdraw_zk_relayed を使って SOL を出金します。
  5. 監視者はプールのアクティビティを確認できますが、出金と特定の入金を結び付けることはできません。

クイックスタート

SDK とピア依存関係をインストールします。

npm install snap-solana-sdk @solana/web3.js @coral-xyz/anchor

プライベート決済の最小例:

import { Connection, Keypair, PublicKey, clusterApiUrl } from "@solana/web3.js";
import { SNAPClient } from "snap-solana-sdk";

async function main() {
  const connection = new Connection("https://your-rpc-url.com", "confirmed");
  const sender = Keypair.generate();
  const recipient = Keypair.generate();
  const pool = new PublicKey("B8SyffZKt8LABKogWjH9rZcjY5PV2hyYRCbTxxbcrpFf");

  const snapA = new SNAPClient(connection, sender);
  const snapB = new SNAPClient(connection, recipient);

  const note = await snapA.deposit(pool, 0.1);
  const serialized = SNAPClient.serializeNote(note);
  await snapB.withdraw(pool, SNAPClient.deserializeNote(serialized), recipient);
}

void main();

このリポジトリから実行可能な手順を試すには、次を使用します。

npx tsx examples/basic-payment.ts
npx tsx examples/agent-to-agent.ts
npx tsx examples/relayed-withdrawal.ts

アーキテクチャ

コンポーネント説明
Solana プログラムdeposit、withdraw_zk、withdraw_zk_relayed を備えた Anchor プログラム
ZK 回路Poseidon と深さ 10 の Merkle ツリーを使用する circom Groth16 回路
SDKノートの処理、証明の生成、クライアント API に使用する snap-solana-sdk
Agent Kit プラグインsnap_create_pool、snap_deposit、snap_withdraw、snap_withdraw_private を備えた Solana Agent Kit v2 プラグイン
LangChain ツールsnap-langchain-tools — LangChain/LangGraph エージェント向けの StructuredTool ラッパー
リレーヤーガスを抽象化したプライベート出金のための Express サービス

メインネット

プールの額面は 0.1 SOL、1 USDC、10 USDC です。信頼に関する前提については、THREAT_MODEL.mdをご覧ください。

フィールド値
プログラム ID9uePoqdgaXpqFLQM2ED1GGQrwSEiqe3r6tW1AfsnrrbS
プール — 0.1 SOLB8SyffZKt8LABKogWjH9rZcjY5PV2hyYRCbTxxbcrpFf
プール — 1 USDC5LeuHrPBgHNhgbCy996MEjcsBk5gNHhVj6AiuuCHZ8od
プール — 10 USDCECuHf8kgiWfmL3Q6id4WGBQWvuukhzqvF5vsxuPAKZBv
ネットワークSolana mainnet-beta
プロトコル手数料0.25%

プロジェクト構成

├── programs/           # Solana program (Rust/Anchor)
├── circuits/           # circom ZK circuit
├── sdk-package/        # snap-solana-sdk npm package
├── agent-kit-tool/     # Solana Agent Kit plugin
├── relayer/            # Express relay service
├── agents/             # Demo agent scripts
├── examples/           # Minimal end-to-end examples
├── scripts/            # Deployment and quickstart scripts
├── docs/               # Troubleshooting, circuit, and compliance docs
└── tests/              # Integration tests

開発

# Build the Solana program
anchor build

# Run validator-backed tests
PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH" anchor test --skip-build

# Build and test the SDK package
cd sdk-package && npm install && npm run build && npm test

セキュリティ

既知のリスク、プロトコルの制限、セキュリティドキュメントについては、FINDINGS.md、docs/CIRCUIT_SPEC.md、docs/THREAT_MODEL.md、docs/COMPLIANCE.md、docs/GOVERNANCE.mdをご覧ください。

ライセンス

MIT

コメント

MCP は初めてですか?

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

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