mcpField
A
agent-trust

agent-trust

ローカル
github.com/Garl-Protocolセキュリティ25 週間前に更新

agent-trust について

agent-trust(GARL Protocol)は、エージェントの操作を記録・検証し、信頼度を評価して委任権限を制限するプロジェクトです。署名付きレシート、ケイパビリティトークン、エージェントのルーティングに対応します。プロジェクトはアーカイブ済みで、ホストサービスはデータを受け付けませんが、コードは公開されています。

主な機能

  1. 01オフライン検証可能な署名付き操作レシート
  2. 025つの観点による信頼度評価
  3. 03範囲を狭める形で委任できるトークン
  4. 04カテゴリとティアに基づくエージェント選定
  5. 05レシートのMerkleルートをBaseに記録

活用シーン

  1. 01エージェントの操作履歴と権限を検証
  2. 02支出、取引先、副作用の範囲を制限
  3. 03AI生成コードのコミットに署名付きレシートを追加
  4. 04タスクのカテゴリに応じて信頼できるAgentを選定

MCP 対応

MCPサーバーを含み、レシート、信頼情報の照会、ケイパビリティトークン、実行前チェックなどのツールを提供します。アーカイブ済みのため、ホストサービスはAgent、トレース、レシートを受け付けていません。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"garl-protocol-agent-trust": {
"command": "npx",
"args": [
"-y",
"@garl-protocol/mcp-server"
],
"env": {
"GARL_API_KEY": "<GARL_API_KEY>",
"GARL_AGENT_ID": "<GARL_AGENT_ID>",
"GARL_API_URL": "<GARL_API_URL>"
}
}
}
}
起動コマンドnpx -y @garl-protocol/mcp-server
設定が必要な環境変数
GARL_API_KEYシークレットYour GARL API key for write operations (trace submission, endorsements)
GARL_AGENT_IDYour GARL agent UUID for trace submissions
GARL_API_URLGARL API base URL (default: https://api.garl.ai/api/v1)

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

パッケージ
npm@garl-protocol/mcp-server1.4.3

ツール

29

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

パラメーター型必須説明
statusenumはいタスク結果success | failure | partial
categoryenumいいえタスクカテゴリcoding | research | sales | data | automation | other
cost_usdnumberいいえトークン/API の費用(判明している場合)
tool_callsarrayいいえタスク中に使用したツールの一覧
duration_msnumberはいタスク所要時間(ミリ秒)
input_summarystringいいえ入力/プロンプトの概要
output_summarystringいいえ出力/結果の概要
permissions_usedarrayいいえ使用した権限の一覧(例:file_read、network)
security_contextobjectいいえセキュリティコンテキスト(例:sandbox、production)
security_context.environmentstringいいえ
security_context.isolation_levelstringいいえ
task_descriptionstringはい完了したタスクの簡潔な一行要約

詳細

重要

2026 年 9 月 24 日にアーカイブされました。 GARL はメンテナンスを終了しており、ホステッドサービス(garl.ai、api.garl.ai)はエージェント、トレース、レシートを受け付けなくなりました。コードは Apache-2.0 の下で引き続き利用できます。Base mainnet にアンカーされた 12 件のレシートは、garl.ai/anchors で引き続き検証できます。連絡先:[email protected]。再開に関するメモ:docs/runbooks/sunset.md。

バージョン ライセンス GitHub Action A2A v1.0 MCP
CI

GARL Protocol

AI エージェントに許可された操作と、実際に行った操作を証明します。

ケイパビリティトークンは、支出上限、加盟店の許可リスト、副作用のクラス、有効期限など、エージェントに厳格な制限を設定します。委任されたトークンは親トークンの制限を狭めることだけができ、広げることはできません。
すべてのアクションは、認可に使用されたトークンに紐付いた ECDSA-secp256k1 署名付きのアクションレシートとなり、Base mainnet 上で Merkle アンカーされます。GARL を信頼することなく、オフラインで検証できます。

エージェントを追加 · アンカーチェーン · ウェブサイト · ドキュメント · ライブレシート · 試してみる


GARL Protocol ダッシュボード


今すぐ試す

パス A — エージェント向け(SDK / MCP)
Claude Desktop または Cursor を使う(MCP)

Claude Desktop の設定(claude_desktop_config.json)または Cursor の MCP 設定に追加します。

{
  "mcpServers": {
    "garl": {
      "command": "npx",
      "args": ["-y", "@garl-protocol/mcp-server"]
    }
  }
}

これで完了です。garl_verify_batch のようなバッチ版を含む 29 個の名前付きツールが、AI アシスタントで利用可能になります。レシート、Trust Vector の検索、ケイパビリティトークン(発行/検証/失効)、Capability Gate による事前チェック、UETA §10(b) に基づく取り消しなどを利用できます。

curl を使う(インストール不要)
# Check an agent's trust score
curl -s "https://api.garl.ai/api/v1/trust/verify?agent_id=5872ce17-5718-4980-ade3-e51c9556fb53" | python3 -m json.tool

# Find the most trusted coding agent
curl -s "https://api.garl.ai/api/v1/trust/route?category=coding&min_tier=silver" | python3 -m json.tool

# See the live leaderboard
curl -s "https://api.garl.ai/api/v1/leaderboard?limit=5" | python3 -m json.tool
Python を使う
pip install garl-protocol
import garl

garl.init("your_api_key", "your_agent_uuid")
garl.log_action("Analyzed dataset", "success", category="data")

result = garl.is_trusted("target_agent_uuid", min_score=60)
if result["trusted"]:
    print(f"Safe to delegate — score: {result['score']}/100")
JavaScript を使う
npm install @garl-protocol/sdk
import { init, logAction, isTrusted } from "@garl-protocol/sdk";

init("your_api_key", "your_agent_uuid", "https://api.garl.ai/api/v1");
await logAction("Generated REST API", "success", { category: "coding" });

const result = await isTrusted("target_agent_uuid", { minScore: 60 });
if (result.trusted) {
  console.log(`Safe to delegate — score: ${result.score}/100`);
}
ケイパビリティトークン — 厳格な制限による認可
# Issue a scoped token for your agent (owner API key required)
curl -s -X POST https://api.garl.ai/api/v1/capability/issue \
  -H "x-api-key: $GARL_API_KEY" -H "Content-Type: application/json" \
  -d '{
    "agent_id": "your-agent-uuid",
    "scope": "payment:stripe.com",
    "side_effect_class": "reversible",
    "spend_limit_usd": 50,
    "merchant_allowlist": ["stripe.com"],
    "expires_in_seconds": 3600
  }' | python3 -m json.tool

# Anyone can verify a token — no auth, no account
curl -s -X POST https://api.garl.ai/api/v1/capability/verify \
  -H "Content-Type: application/json" \
  -d '{"token": "<the JWT-form token>"}' | python3 -m json.tool

委任された子トークンは、親トークンの制限を狭めることしかできません(支出上限の引き下げ、許可リストの部分集合、同等かそれより狭いスコープ、同じかそれより早い有効期限)。この制約は発行時に適用され、検証時にはリンクごとに再確認されます。ワイヤー形式の詳細: protocol/spec/capability-token-v0.1.md。

パス B — コード向け(GitHub Action、YAML 5 行)

プルリクエスト内の AI が作成したすべてのコミットに署名します。

# .github/workflows/garl-receipt.yml
name: GARL Receipt
on:
  pull_request:
    types: [opened, synchronize, reopened]
jobs:
  sign:
    runs-on: ubuntu-latest
    permissions: { contents: read, pull-requests: write, checks: write }
    steps:
      - uses: actions/checkout@v4
        with: { fetch-depth: 0 }
      - uses: Garl-Protocol/[email protected]
        with:
          garl-api-key: ${{ secrets.GARL_API_KEY }}
          garl-agent-id: ${{ secrets.GARL_AGENT_ID }}

すべての PR に、GARL Receipt の継続的なコメントと情報提供用のチェックが追加されます。

🔐 GARL Verified AI Code
├── Model: claude-opus-4-6
├── Tool: Claude Code
├── Files touched: 12
├── Duration: 4m 12s
├── Signed: ECDSA-secp256k1 ✓
└── Receipt: https://garl.ai/r/a8f3c2d1

セットアップガイド:Garl-Protocol/garl-receipt-action · ライブのランディングページ:garl.ai/for-code。


Receipts — あらゆるトレースに貼り付け可能な証明を

送信されたトレースにはそれぞれ、公開共有可能な Receipt URL(https://garl.ai/r/{short})が発行されます。これは、エージェント、ティア、タスク、所要時間、SHA-256 ハッシュ、ECDSA 署名を含む暗号学的な証明カードです。Open Graph 画像も用意されており、Slack、Twitter/X、GitHub PR、LinkedIn で内容を確認しやすく表示されます。

curl -s https://api.garl.ai/api/v1/verify/6ff83db8 | python3 -m json.tool
#  → receipt_url: https://garl.ai/r/6ff83db8

SDK では、すべての log_action / verify の戻り値に receipt_url / receiptUrl が含まれ、client.receipt(hash) というショートカットも利用できます。MCP ツール garl_receipt を使うと、短縮ハッシュまたは完全なハッシュから、貼り付け可能な URL を取得できます。

GitHub Action — AI が作成したすべてのコミットに署名する

PR ワークフローに Garl-Protocol/garl/integrations/github-action-receipt を追加します。この Action は、Claude Code、Cursor、GitHub Copilot、Aider、Codex の共同作成者トレーラーを検出し、条件を満たすコミットごとに署名付きトレースを送信します。また、Receipt URL を含む更新式の PR コメントと、参考情報を示すチェックを投稿します。

- uses: Garl-Protocol/garl/integrations/github-action-receipt@main
  with:
    garl-api-key: ${{ secrets.GARL_API_KEY }}
    garl-agent-id: ${{ secrets.GARL_AGENT_ID }}

詳しいセットアップ手順は integrations/github-action-receipt をご覧ください。アップロードされるのはメタデータのみで、差分やソースは一切アップロードされません。

GARL が選ばれる理由

課題GARL の解決策
「このエージェントには何をする権限があったのか?」機能トークン:spend_limit_usd、merchant_allowlist、side_effect_class、有効期限。Biscuit 形式の制限機能により、委任時には権限を狭めることしかできず、検証時にはリンクごとに再確認されます
「制限の範囲内で動作したのか?」すべての Action Receipt は capability_request.token_hash と policy_decision を署名付きエンベロープに含めます。Capability Gate は、信頼度が低く取り消せないアクションを人間による確認に回します
「このエージェントは信頼できるのか?」指数移動平均を用いた 5 次元の信頼スコアリング
「どのエージェントを選べばよいのか?」カテゴリと最低認定ティアに基づくスマートルーティング
「実績を検証できるのか?」ECDSA 署名付き実行トレースを備えた不変の台帳と、共有可能な Receipt URL
「自分のスタックで動作するのか?」MCP Server · A2A Protocol · REST API · Python & JS SDKs · GitHub Action
「この AI コミットが本物だと証明できるのか?」GitHub Action が AI 作成コミットごとに署名付きレシートを投稿します
「オンチェーンエージェントには対応しているのか?」ERC-8004 形式に対応(オフチェーン)。Receipt のバッチ単位の Merkle ルートは Base メインネットにアンカーされます(MerkleAnchor は 0xBeD7EdeFbEb02be9682bCdeC5fb5D7DA28b1b6F2)。

対応環境

Claude Desktop · Cursor · 任意の MCP クライアント · Google A2A · ERC-8004 · REST API · Python · JavaScript · LangChain · CrewAI · AutoGen · LlamaIndex · Semantic Kernel · GitHub Actions


仕組み

すべてのエージェントアクションはハッシュ化・署名され、5 つの次元で評価され、クエリ可能な状態になります。これにより、検証可能な信頼記録が作成されます。

Agent executes task → SHA-256 hash + ECDSA signature → 5D EMA scoring → Tier assigned → Queryable via API/MCP/A2A
┌─────────────────────────────────────────────────────────────────┐
│                        GARL Protocol                            │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│  ┌──────────┐   ┌──────────┐   ┌──────────┐   ┌──────────┐    │
│  │  Python   │   │   JS     │   │   MCP    │   │   A2A    │    │
│  │   SDK     │   │   SDK    │   │  Server  │   │ JSON-RPC │    │
│  └────┬─────┘   └────┬─────┘   └────┬─────┘   └────┬─────┘    │
│       │              │              │              │            │
│       └──────────────┴──────────────┴──────────────┘            │
│                          │                                      │
│                    ┌─────▼─────┐                                │
│                    │  FastAPI  │  REST + A2A + MCP              │
│                    │  Backend  │  Rate Limited + CORS            │
│                    └─────┬─────┘                                │
│                          │                                      │
│          ┌───────────────┼───────────────┐                      │
│          │               │               │                      │
│    ┌─────▼─────┐  ┌─────▼─────┐  ┌─────▼─────┐               │
│    │ Reputation│  │  Signing  │  │  Webhook  │               │
│    │  Engine   │  │  Engine   │  │  Engine   │               │
│    │ • 5D EMA  │  │ • SHA-256 │  │ • HMAC    │               │
│    │ • Tiers   │  │ • ECDSA   │  │ • Retry   │               │
│    └───────────┘  └───────────┘  └───────────┘               │
│                          │                                      │
│                    ┌─────▼─────┐                                │
│                    │ Supabase  │  PostgreSQL + RLS              │
│                    │           │  Immutable Triggers            │
│                    └───────────┘                                │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

ERC-8004 互換性

GARL Protocol は、ERC-8004 形式でエージェントのメタデータを提供します(オフチェーン)。これとは別に、バッチ処理された Action Receipt の Merkle ルートは Base メインネットにアンカーされます(MerkleAnchor コントラクト:0xBeD7EdeFbEb02be9682bCdeC5fb5D7DA28b1b6F2、チェーン ID:8453)。個々の Receipt はオンチェーンに書き込まれません。アンカー済みのルートに対する Receipt の包含証明は、誰でも verifyProof を使って検証できます。

# Get ERC-8004 compatible metadata for any agent
curl -s "https://api.garl.ai/api/v1/agents/{agent_id}/erc8004" | python3 -m json.tool

# Get trust scores in ERC-8004 Reputation Registry feedback format
curl -s "https://api.garl.ai/api/v1/agents/{agent_id}/erc8004/feedback" | python3 -m json.tool

GARL は Ethereum と同じ暗号曲線(ECDSA-secp256k1)を使用するため、信頼の証明をオンチェーンシステムでネイティブに検証できます。


ドキュメント

トピックリンク
Capability Token のワイヤーフォーマット(仕様)protocol/spec/capability-token-v0.1.md
Action Receipt のワイヤーフォーマット(仕様)protocol/spec/action-receipt-v0.1.md
アンカリング手順書(Base への週次 Merkle アンカー)docs/runbooks/anchoring.md
API リファレンス全編(60 以上の REST エンドポイント + A2A + MCP)docs/api-reference.md
MCP サーバー(名前付きツール 29 種、バッチ版を含む)garl.ai/docs#mcp-server
A2A プロトコル統合garl.ai/docs#a2a
ERC-8004 互換性garl.ai/docs#erc-8004
Python および JS SDKgarl.ai/docs#sdks
アーキテクチャと技術スタックdocs/architecture.md
デプロイとセルフホスティングdocs/deployment.md
セキュリティdocs/security.md

インタラクティブ API エクスプローラー:api.garl.ai/docs(Swagger) · api.garl.ai/redoc


現在利用可能

  • garl.ai — ライブダッシュボードとリアルタイムの信頼性フィード
  • エージェントを追加 — 3 つの手順で任意のエージェントを接続(REST、SDK、MCP、GitHub Action)
  • マイエージェント — サインイン(Clerk)して、API キーで接続したエージェントを登録すると、そのアクティビティを 1 か所で追跡できます
  • レジストリ — 接続済みエージェントと、署名済みで検証可能なアクティビティを閲覧
  • 検証 — 公開鍵暗号方式によるトレースの公開検証
  • プレイグラウンド — インタラクティブ API エクスプローラー
  • シミュレーター — What-if 分析機能付きの 5D 信頼性スコア計算ツール
  • 比較 — レーダーチャートを重ねたエージェントの並列比較
  • Swagger — OpenAPI ドキュメント全編
  • アンカー — すべての Merkle バッチ、そのルート、レシート数、Base tx(GET /api/v1/anchors)
  • Base 上の MerkleAnchor — Base メインネット(chain 8453)にアンカーされたレシートバッチの Merkle ルート
  • MCP レジストリ — io.github.Garl-Protocol/agent-trust として登録済み

コントリビューション

GARL Protocol は Apache 2.0 ライセンスのオープンソースです。コントリビューションを歓迎します。ガイドラインは CONTRIBUTING.md、コミュニティの行動規範は CODE_OF_CONDUCT.md をご覧ください。すべてのコミットに DCO 署名が必要です(git commit -s)。

要件: バックエンドには Python 3.10+(PEP 604 のユニオン構文)、 フロントエンドには Node 18+ が必要です。macOS ユーザーの場合、システムの python3 は 3.9 のため、 バックエンドのテストに失敗します。pyenv / brew install [email protected] で 3.10+ をインストールし、 明示的に実行してください(python3.12 -m pytest tests/)。

  1. リポジトリをフォークします
  2. 機能ブランチを作成します(git checkout -b feature/amazing-feature)
  3. テストを実行します(バックエンドは python3.12 -m pytest、フロントエンドは npx next build)
  4. DCO 署名を付けて変更をコミットします(git commit -s -m 'Add amazing feature')
  5. プルリクエストを作成します

正式なレジストリ、セルフホスト、商標

  • 正式なレジストリ:https://api.garl.ai — 公開鍵によって GARL Verified ステータスが保証される唯一のデプロイメントです。公開鍵は /.well-known/garl-keys.json で公開されています。
  • セルフホストに対応しています。手順は docs/self-host.md に記載されています。セルフホストのデプロイメントも正式な参加者ですが、正式なレジストリではありません。詳しくは GOVERNANCE.md をご覧ください。
  • 商標ポリシー:TRADEMARK.md。ソースコードは Apache 2.0 ライセンスです。GARL の名称とロゴはプロジェクトの商標であり、ポリシーの対象となります。

プロジェクトの意思決定、破壊的変更のプロセス、およびリポジトリの機能(永久に Apache 2.0 ライセンス)と、正式なレジストリで将来的に提供される可能性のある Cloud 専用サービスとの境界については、GOVERNANCE.md に記載されています。


ライセンス

Apache License 2.0 — 詳細は LICENSE をご覧ください。

コメント

MCP は初めてですか?

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

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