agentguard について
agentguardは、宣言型のネットワーク送信ポリシーに照らしてURLを検査するMCPサーバーです。リクエストを実行せずに、個別または一括のURL判定とポリシー設定の誤りを確認できます。
主な機能
- 01ポリシーに基づくURL検査
- 02URLの一括検査と集計
- 03ポリシー仕様の検証
- 04広すぎるワイルドカードや不正なホストの検出
活用シーン
- 01エージェントによる取得前のURL確認
- 02候補URLの一括監査
- 03送信ポリシーの設定ミスの発見
MCP 対応
URL検査とポリシー検証のツールをMCPクライアントに提供します。判定のみを返し、リクエストの遮断やネットワーク通信は行いません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
3掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| url | string | はい | 確認する URL。 |
| method | string | いいえ | HTTP メソッド(デフォルトは GET)。 |
| policy | object | はい | 簡易ネットワークポリシー。{ allow: ["api.openai.com", "*.example.com"] } を使用します。任意項目:deny: string[]、methods: string[]。 |
| policy.deny | array | いいえ | 拒否するホストパターン。allow より優先されます。 |
| policy.allow | array | いいえ | 許可するホストパターン。完全一致と *.suffix ワイルドカードに対応します。 |
| policy.methods | array | いいえ | 許可する HTTP メソッド(例:["GET", "POST"])。デフォルトはすべて許可。 |
詳細
agentguard-mcp
@mukundakatta/agentguard 用の MCP サーバーです。 Claude Desktop、Cursor、Cline、Windsurf、Zed、その他の MCP クライアントから、フェッチを行う前にネットワーク送信ポリシーで URL が許可されているかを確認できます。
npx -y @mukundakatta/agentguard-mcp
3 つのツールがあります。
check_url— 単一 URL のチェックです。実際のリクエストは行わず、{ allowed, reason }を返します。check_urls_batch— URL ごとの判定と概要を含む一括チェックです。validate_policy— 空の許可リスト、範囲が広すぎる*ワイルドカード、不正なホストパターンがないか、ポリシー仕様をチェックします。
クライアントへの追加
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json(macOS)または %APPDATA%\Claude\claude_desktop_config.json(Windows)を編集します。
{
"mcpServers": {
"agentguard": {
"command": "npx",
"args": ["-y", "@mukundakatta/agentguard-mcp"]
}
}
}
Cursor(~/.cursor/mcp.json)、Cline、Windsurf、Zed も同様の形式です。
ツールの使用例
check_url:
{
"url": "https://api.openai.com/v1/chat",
"policy": { "allow": ["api.openai.com", "*.anthropic.com"] }
}
戻り値:
{ "allowed": true, "reason": "matched_allowlist", "detail": null }
check_urls_batch:
{
"urls": [
"https://api.openai.com/v1/chat",
"https://evil.example.com/leak"
],
"policy": { "allow": ["api.openai.com"] }
}
戻り値:
{
"results": [
{ "url": "https://api.openai.com/v1/chat", "allowed": true, ... },
{ "url": "https://evil.example.com/leak", "allowed": false, "reason": "not_in_allowlist", ... }
],
"summary": { "total": 2, "allowed_count": 1, "denied_count": 1 }
}
validate_policy:
{ "policy": { "allow": ["*", "https://api.example.com", "api.example.com/v1"] } }
* ワイルドカード、スキームのプレフィックス、パスのサフィックスについて問題を返します。いずれも、ポリシーを初めて作成する際によくある間違いです。
MCP サーバーを分ける理由
@mukundakatta/agentguard は、依存関係のない JavaScript ライブラリです。この MCP サーバーを使うと、その判定エンジンを MCP 対応の AI アシスタントから利用できます。「エージェントのツール一覧はこのファイアウォールを通過しますか?」や「この 50 個の URL のうち、ポリシーでブロックされるのはどれですか?」と Claude に尋ねると、アシスタントがこれらのツールを直接呼び出します。
注:この MCP サーバーは URL をチェックするだけで、実際に fetch をラップしたり、リクエストをブロックしたりすることはありません。実行時の強制には、@mukundakatta/agentguard を Node プロセス内で直接使用してください。
関連する MCP サーバー
agent-stack シリーズの一部です。
@mukundakatta/agentfit-mcp— 適合性を確認します。@mukundakatta/agentguard-mcp— サンドボックス化します。(このパッケージ)@mukundakatta/agentsnap-mcp— テストします。@mukundakatta/agentvet-mcp— 審査します。@mukundakatta/agentcast-mcp— 検証します。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。