mcpField
S
smartpolicy

smartpolicy

ローカル
smartpolicy.ioセキュリティ016 週間前に更新

smartpolicy について

SmartPolicyは、オンチェーンのポリシーレジストリを使い、AIエージェントとスマートコントラクトに実行時の認可を提供します。ルールと適用箇所を分離したいチーム向けで、ポリシーはトランザクションで更新でき、MCPサーバーとREST APIは短期の署名付き許可を発行します。

主な機能

  1. 01メンバー、条件、有効期限をオンチェーン登録
  2. 02不変のレジストリに基づくポリシー確認
  3. 03短期のEIP-712署名付き許可を発行
  4. 04MCPサーバーとREST APIを提供
  5. 05Solidityの修飾子でコントラクトを保護

活用シーン

  1. 01実行前にエージェントの操作可否を確認
  2. 02バックエンドで署名付き許可を検証
  3. 03コントラクトを再デプロイせずアクセス規則を変更

MCP 対応

SmartPolicyのMCPサーバーは、AIシステムにポリシー認可の確認機能を提供し、短期の署名付き許可を返せます。サーバーとREST APIはオンチェーンのポリシーレジストリに接続します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"smartpolicy-protocol-smartpolicy": {
"command": "npx",
"args": [
"-y",
"@smartpolicy/mcp"
],
"env": {
"SMARTPOLICY_REGISTRY": "<SMARTPOLICY_REGISTRY>",
"SMARTPOLICY_VERIFIER": "<SMARTPOLICY_VERIFIER>",
"SMARTPOLICY_RPC_URL": "<SMARTPOLICY_RPC_URL>",
"SMARTPOLICY_ISSUER_KEY": "<SMARTPOLICY_ISSUER_KEY>"
}
}
}
}
起動コマンドnpx -y @smartpolicy/mcp
設定が必要な環境変数
SMARTPOLICY_REGISTRYPolicyRegistry contract address (omit for the public Sepolia default)
SMARTPOLICY_VERIFIERGrantVerifier contract address (omit for the public Sepolia default)
SMARTPOLICY_RPC_URLEVM RPC endpoint (omit for the public Sepolia default)
SMARTPOLICY_ISSUER_KEYシークレットOptional grant-issuer private key; enables the grant_issue tool

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

パッケージ
npm@smartpolicy/mcp0.2.0

ツール

8

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
actionstringはいアクション名(例:"withdraw")または 0x で始まる bytes32。名前は keccak256 でハッシュ化され、保護されたコントラクト内の keccak256("withdraw") と一致します。
subjectstringはい
policyIdanyはいポリシー ID(10 進数の文字列または整数)

詳細

SmartPolicy

AI エージェントとスマートコントラクトのための実行時認可。

エージェント、ユーザー、コントラクトに許可する操作をポリシーとして一度定義します。 オンチェーンでは最小限の検証コントラクトを通じて、オフチェーンでは AI システムが直接利用する MCP サーバーと REST API を通じて、あらゆる場所で適用します。何も再デプロイせずにルールを更新できます。

ステータス(2026-06-12):コアコントラクトは Ethereum Sepolia で稼働中 (Etherscan で検証済み。アドレスは contracts/deployments/sepolia.json に記載)。Foundry テスト 54 件がすべて成功。MCP サーバー v0 をパッケージ化済み。npx smartpolicy-mcp は設定不要で Sepolia に接続して実行でき、npx smartpolicy-mcp deploy は埋め込みバイトコードから任意のチェーンを初期設定します。自律的なエージェント実行テスト(空のチェーンでのコールドスタートを含む)により、AI から利用できることを実証済み。監査未実施。成熟するまでは内部利用のみで、公開リポジトリやレジストリへの掲載はまだありません。 現在の状況、決定事項、作業の再開方法については PLAN.md をご覧ください。

なぜ必要なのか

AI エージェントを提供するチームは、どこも同じ壁にぶつかります。エージェントは、キーで許可されたことなら技術的には何でも実行でき、それを制限する方法は、プロンプトへのハードコードかコードの再デプロイしかありません。スマートコントラクトのチームも、コントラクトのデプロイ時にアクセスルールが組み込まれるという、表裏一体の問題に直面します。

SmartPolicy は、ルールと適用箇所を分離します。

  • ポリシーはオンチェーンの Registry に保存されます。メンバー、管理者、条件、有効期限、変更可能性のフラグを含みます。これはコードではなくデータです。ルールの変更は再デプロイではなく、トランザクションで行います。
  • 適用は、操作が実行される場所で行います。
    • スマートコントラクトは 1 つの修飾子を継承し、Registry を確認します(無料の view 呼び出し)。
    • AI エージェント(またはその前段のサービス)は MCP サーバー/REST API に問い合わせます。 *「0xAgent はポリシー N のもとで action を実行できますか?」*と尋ねると、短時間有効な署名付き許可(EIP-712)が返されます。これは任意のコントラクトやバックエンドで検証できます。

これは何ではないか

  • トークンではありません。プロトコルトークンも、ICO も、見せかけのガバナンスもありません。 収益は手数料です。オンチェーンのポリシー書き込みに少額の手数料がかかり、ホスト型 API では従量制(x402)の呼び出しごとの支払いが発生します。読み取りと検証は無料です。
  • アップグレード可能ではありません。コアの Registry はデプロイ後に変更できません。信頼の根拠は、自分で読めるコードであり、信頼する必要のある管理者キーではありません。新しいプロトコルバージョンは、新たにデプロイします。
  • オラクルではありません。SmartPolicy が答えるのは「これは許可されていますか?」であり、「現実世界で何が起きましたか?」ではありません。外部の事実に依存する条件値は、ポリシー所有者が選んだソースからの署名付き許可を通じて証明されます。

アーキテクチャ(概要)

┌─────────────┐   MCP / REST (x402 metered)   ┌──────────────────┐
│  AI agents   │ ────────────────────────────▶ │ SmartPolicy MCP  │
│  & services  │ ◀──── signed grants ────────  │ server (TS)      │
└─────────────┘                                └────────┬─────────┘
                                                        │ reads + grant issuance
┌─────────────┐   inherit Gate modifier        ┌────────▼─────────┐
│  Protected   │ ────── view calls ──────────▶ │ PolicyRegistry   │
│  contracts   │                               │ (Base, immutable)│
└─────────────┘                                └──────────────────┘

設計の全容と、それぞれの決定(チェーン、手数料、信頼モデル、v1 から意図的に除外した内容)の根拠については、ARCHITECTURE.md をご覧ください。

リポジトリ構成

contracts/   Solidity core: PolicyRegistry, PolicyGate, interfaces (Foundry)
mcp/         MCP server + REST API (TypeScript, x402 metering)
sdk/         TypeScript client SDK (@smartpolicy/sdk) — reads, grants, tx-building
docs/        Integration guides (planned)

経緯

SmartPolicy は、2025 年のプロトタイプ(「Smart Policy Protocol」、Sepolia)から最も優れたアイデアを引き継ぎ、新たに書き直したものです。ポリシーレジストリ、段階的な統合モデル、オンチェーンと署名付きトークンを組み合わせた適用方式を引き継いでいます。書き直しにあたり、SPOL トークン/ICO/ガバナンス一式、スポーツ予測オラクル、ファクトリーコントラクト、アップグレード可能なプロキシの信頼モデルは意図的に除外し、既知のセキュリティ問題(tx.origin チェック、リエントランシーガードの欠落、ヘッダーのみの API 認証)を修正しました。

ライセンス

Apache-2.0 — LICENSE をご覧ください。

コメント

MCP は初めてですか?

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

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