第 4 章
ツール使用と MCP 連携
Claude Code が「ただのチャット AI」と異なる最大の理由は、ツールを使って実際にコンピューターを操作できることです。 この章ではファイル・コマンド・検索ツールの仕組みと、外部サービスと連携する MCP について学びます。
4.1 ツールとは
Claude Code はユーザーの指示に応じて、AI モデルが複数のツール(Tool)を自律的に呼び出します。 ツールとは「ファイルを読む」「コマンドを実行する」「Web を検索する」といった具体的なアクション単位です。
ファイル操作
ファイルの読み込み・書き込み・作成・削除・検索
コマンド実行
シェルコマンド・npm・git などをターミナルで実行
コード検索
リポジトリ内のキーワード・関数・クラスを横断検索
Web 検索・取得
最新情報の検索やドキュメントページの取得
MCP ツール
Slack・GitHub・DB など外部サービスとの連携
4.2 ファイル操作ツール
Claude Code はローカルのファイルシステムを直接操作できます。 読み込みだけでなく、書き込み・作成・移動も可能です。
| 操作 | 説明 | 指示例 |
|---|---|---|
| 読み込み | ファイルの内容を読む | 「src/app.js を読んで説明して」 |
| 書き込み | 既存ファイルを編集する | 「auth.js にログアウト機能を追加して」 |
| 新規作成 | 新しいファイルを作る | 「config/db.js を新規作成して」 |
| 一括変更 | 複数ファイルをまとめて変更 | 「全 .js ファイルの import 文を ES Module 形式に統一して」 |
| 構造確認 | ディレクトリ構造を把握する | 「このプロジェクトのフォルダ構成を教えて」 |
# 複数ファイルにまたがる一括変更
> src/components/ 以下の全 React コンポーネントを
クラスコンポーネントから関数コンポーネントに書き換えて
# ファイル作成と内容の生成をセットで
> .env.example ファイルを作って、
このプロジェクトで必要な環境変数を全て列挙して
4.3 コマンド実行ツール
Claude Code はターミナルコマンドをそのまま実行できます。 テストの実行・依存パッケージのインストール・ビルドなど、開発フロー全体をカバーします。
# テストを実行してエラーを修正
> npm test を実行して、失敗しているテストを修正して
# 依存パッケージの追加
> axios をインストールして、src/api.js で使えるよう import して
# git 操作
> 変更ファイルを確認して、適切なコミットメッセージで git commit して
# ビルドとエラー確認
> npm run build して、ビルドエラーが出たら修正して
rm -rf や git push などの破壊的・影響範囲の大きい操作は、
実行前に Claude が内容を表示して確認を求めます。
内容をよく確認してから承認してください。
4.4 検索・解析ツール
コードベース内の横断検索や、最新情報の Web 検索ができます。
コードベース内の検索
# 特定の関数・変数の使用箇所を探す
> getUserById 関数がどこで呼ばれているか全て教えて
# TODO コメントを一覧化
> プロジェクト内の TODO コメントを全て探して一覧にして
# セキュリティ上の問題を探す
> SQL インジェクションの可能性がある箇所を探して
Web 検索・ドキュメント取得
# 最新の API ドキュメントを参照して実装
> Stripe の最新の Payment Intent API を調べて、
決済処理のコードを書いて
# エラーの原因を検索して解決
> このエラーをネットで調べて解決策を試して:
ECONNREFUSED 127.0.0.1:5432
4.5 パーミッション制御
Claude Code はセキュリティのため、操作の種類によって確認レベルが異なります。 また設定ファイルで特定の操作を事前に許可・禁止できます。
| 操作の種類 | デフォルト動作 |
|---|---|
| ファイルの読み込み | 確認なしで実行 |
| ファイルの書き込み・作成 | 内容を表示して確認 |
| コマンドの実行 | 内容を表示して確認 |
| ファイルの削除 | 確認必須 |
| ネットワークへのアクセス | ツールによって異なる |
.claude/settings.json の allowedTools に追加すると、
毎回確認なしで実行できます。詳しくは第5章で解説します。
4.6 MCP(Model Context Protocol)とは
MCP(Model Context Protocol) は、Claude Code と外部ツール・サービスを 接続するための標準プロトコルです。 MCP サーバーを追加することで、Claude Code から Slack・GitHub・データベースなどを 直接操作できるようになります。
Slack
メッセージの送受信・チャンネル管理をAIから操作
GitHub
Issue・PR の作成・確認・コメントを自動化
データベース
PostgreSQL・MySQL などへのクエリ実行
Notion / Jira
ドキュメント・タスク管理ツールと連携
AWS / GCP
クラウドリソースの確認・操作
カスタムツール
自社システムの API を MCP サーバーとして公開
4.7 MCP の設定方法
MCP サーバーは ~/.claude/settings.json(グローバル設定)または
プロジェクトの .claude/settings.json に追記して登録します。
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxx"
}
},
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"],
"env": {
"SLACK_BOT_TOKEN": "xoxb-xxxxxxxxxxxx"
}
}
}
}
MCP サーバーの追加手順
-
1
使いたい MCP サーバーを探す
公式の MCP サーバー一覧(
github.com/modelcontextprotocol/servers)や npm で「mcp server」と検索します。 -
2
必要な認証情報を用意する
GitHub なら Personal Access Token、Slack なら Bot Token など、各サービスの API キーを取得します。
-
3
settings.json に追記する
~/.claude/settings.jsonのmcpServersに設定を追記します。 -
4
claude を再起動して確認
設定を反映するため
claudeを再起動します。/statusで MCP サーバーが認識されているか確認できます。
4.8 MCP 活用例
GitHub との連携
# Issue の一覧確認と対応
> GitHub の open な Issue を一覧にして、優先度順に並べて
# PR の自動作成
> 今の変更内容で GitHub に PR を作って。
タイトルと説明文も適切に書いて
# Issue に紐づいた実装
> Issue #42 の内容を読んで実装して
データベースとの連携
# スキーマを確認してコードを書く
> データベースのテーブル構造を調べて、
users テーブルの一覧取得クエリと対応するAPIを実装して
# データ確認
> 本番DBで直近1週間のエラーログを集計して
4.9 まとめ
- Claude Code はファイル操作・コマンド実行・Web 検索などのツールを自律的に使う
- 破壊的な操作の前には確認プロンプトが表示される
- MCP を使うと GitHub・Slack・DB などの外部サービスと連携できる
- MCP サーバーは
settings.jsonに追記するだけで利用可能
CLAUDE.md ファイルと、
パーミッション・モデルなどの詳細な設定方法を学びます。