MCPとhooksを入れる前に決める、AIエージェントの安全境界
MCPで外部ツールを接続し、hooksで自動化する前に決めておきたい権限・ログ・停止条件を整理します。
MCP と hooks は、AIエージェントを強くします。同時に、事故の範囲も広げます。外部ツールに接続し、ファイル編集やシェル実行の前後で自動処理を走らせられるからです。
Claude CodeのMCPドキュメントでは、MCPを通じてIssue tracker、monitoring dashboard、database、APIなどにアクセスできると説明されています。hooksドキュメントでは、PreToolUse、PostToolUse、UserPromptSubmit、Stop など多くのイベントが整理されています。
MCPは「便利な接続」ではなく「権限の追加」
MCPサーバーを追加すると、エージェントは外部の情報を読めるようになり、場合によっては書き込めるようになります。導入前に、少なくとも次を決めます。
- 読み取り専用か、書き込みありか
- 個人スコープか、プロジェクト共有か
- 認証情報をどこに置くか
- ログに何が残るか
- 失敗時に人間へどう通知するか
最初は読み取り専用で始めるのが安全です。Issue、PR、監視ログ、ドキュメントを読ませるだけでも、エージェントの文脈はかなり増えます。
hooksは「自動化」より「ブレーキ」から入れる
hooksは、整形や通知にも使えますが、最初に作るべきなのはブレーキです。
PreToolUse: 危険なコマンドや編集対象を止めるPostToolUse: 編集後にlintやschema checkを走らせるUserPromptSubmit: 機密値らしき文字列を含む依頼を止めるStop: 検証未実行のまま完了報告しそうなときに止める
エージェントは、権限を与えると作業が速くなります。ただし、止める仕組みがない自動化は、失敗も速くします。
最小の安全チェックリスト
MCPやhooksを入れる前に、次をREADMEかエージェント用指示ファイルに書いておくと運用しやすくなります。
- 触ってよい外部サービス
- 読み取り専用のサービス
- 書き込み前に承認が必要な操作
- 表示してはいけない機密情報
- 実行してよいコマンド
- 完了報告前に必要な検証
AIエージェントの安全性は、モデルの性格ではなく、作業環境の設計で作ります。MCPとhooksは、その設計ができているほど強い武器になります。