agentpay-sentinel-mcp について
agentpay-sentinel-mcpは、支払い実行前にエージェントの決済要求を検査するMCPウォッチドッグです。決済ポリシーとトークン条件を監査してPASSまたはBLOCKEDを返し、改ざん検知可能な監査ハッシュを生成しますが、決済自体は遮断しません。
主な機能
- 01決済前のセキュリティ監査
- 02トークンの整合性と有効期限の確認
- 03予算と加盟店ルールの適用
- 04リプレイと金額変更の検出
- 05監査ハッシュチェーンの検証
- 06指定された攻撃ベクトルのシミュレーション
活用シーン
- 01決済前の取引確認
- 02予算上限を超える支出の阻止
- 03リプレイやトークン改ざんの確認
MCP 対応
決済監査、トークン失効、nonceの消去、監査チェーン検証、脅威シミュレーションのツールをMCPクライアントに提供します。判定は助言であり、BLOCKEDの場合はエージェントが決済を止める必要があります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
AgentPay Sentinel MCP
エージェントが決済リクエストを実行する前に、9 つすべてのセキュリティチェックに照らして検証する監視用 MCP です。ポリシー違反、リプレイ攻撃、金額の改ざん、取り消し済みトークン、予算超過を呼び出し時に検出します。
エージェントでできること
- 決済トランザクションを実行する前に事前監査を実行し、PASS または BLOCKED と、失敗したチェックの詳細を取得する
- トークンの完全性を検証する:SHA-256 ハッシュが想定される
merchant_id:amountのバインドと一致することを確認し、偽造または改ざんされたトークンを検出する - 予算上限を適用する:
current_spend + amount > budget_capとなるトランザクションを拒否し、正確な残予算を返す - 加盟店が許可リストに含まれているか確認し、制限対象カテゴリでの購入をブロックする
- 決済の実行前にトークンの有効期限とレート制限を確認する
- 既知の攻撃ベクトル(トークン偽造、予算超過、リプレイ、加盟店のなりすまし、有効期限の回避)をシミュレートし、それぞれに対する具体的な防御メカニズムと検出方法を取得する
インストール
必要要件: Python 3.10 以降、mcp パッケージ。
pip install mcp
Claude Desktop — macOS では ~/Library/Application Support/Claude/claude_desktop_config.json、Windows では %APPDATA%\Claude\claude_desktop_config.json に追加します。
{
"mcpServers": {
"agentpay-sentinel": {
"command": "python",
"args": ["/absolute/path/to/agentpay-sentinel-mcp/server.py"]
}
}
}
Cursor — プロジェクトのルートにある .cursor/mcp.json に追加します。
{
"mcpServers": {
"agentpay-sentinel": {
"command": "python",
"args": ["/absolute/path/to/agentpay-sentinel-mcp/server.py"]
}
}
}
ツールリファレンス
| ツール | 説明 | 主なパラメーター |
|---|---|---|
sentinel_audit_transaction | 9 つすべてのセキュリティチェックを実行し、PASS/BLOCKED と SHA-256 監査ハッシュを返す | token_hash、merchant_id、amount、current_spend、budget_cap(必須) · nonce、token_id、approved_amount(チェック 7~9 を有効化) |
sentinel_revoke_token | トークンを永久に取り消す — この token_id を使った今後の監査はすべて BLOCK される | token_id、reason |
sentinel_clear_nonce | リプレイストアから nonce を削除する(正当な返金または再試行の場合のみ) | nonce |
sentinel_verify_chain | 一連の監査ハッシュが途切れのないチェーンを形成していることを検証する | audit_hashes、expected_chain_root |
sentinel_threat_model | 指定した攻撃ベクトルをシミュレートし、重大度、防御策、検出方法を返す | attack_vector、context |
sentinel_audit_transaction が実行する 9 つのチェック
| # | チェック | 検出対象 | パラメーター |
|---|---|---|---|
| 1 | トークンの完全性 | SHA-256 ハッシュの不一致 — 偽造トークン | token_hash |
| 2 | 予算の適用 | 上限を超える支出 | current_spend、budget_cap |
| 3 | 加盟店の許可リスト | 許可リストにない加盟店への決済 | allowlist |
| 4 | カテゴリ制限 | ブロック対象カテゴリでの購入 | blocked_categories |
| 5 | 有効期限の確認 | 期限切れのトークン | expires_at |
| 6 | レート制限 | 1 分あたりの呼び出し回数が多すぎる場合 | calls_this_minute |
| 7 | 金額の不一致 | 人間による承認後にエージェントが金額を変更した場合 | approved_amount |
| 8 | リプレイ攻撃 | 同じ nonce が 2 回使われた場合(ファイルベースのストア) | nonce |
| 9 | 取り消しの回避 | エージェントが取り消し済みトークンを使用した場合 | token_id |
対応するパラメーターが渡されると、チェック 7~9 が有効になります。状態は ~/.sentinel/ に保持されます。
sentinel_threat_model の攻撃ベクトル
token_forgery · budget_overflow · replay_attack · amount_mismatch · revocation_evasion · merchant_spoof · expiry_bypass
セキュリティ
sentinel_audit_transaction は助言的な判定を返すものであり、ネットワークトラフィックを傍受するものではありません。決済を実行する前にこれを呼び出し、BLOCKED の場合は処理を停止する責任はエージェントにあります。返される監査ハッシュは、すべてのチェック結果の SHA-256 ダイジェストであり、各事前判定について改ざんを検出できる記録を提供します。
料金
| プラン | 料金 | 含まれる内容 |
|---|---|---|
| Free | $0 | 月 50 回の監査 |
| Pro | $19/月 | 無制限の監査 + 脅威モデルのシミュレーション |
License
MIT — AgentPay Labs. Source: github.com/Rumblingb/agentpay-sentinel-mcp
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。