こんにちは!スタビジ編集部です!
ここ最近、AIを活用した開発支援ツールが急速に進化していますが、その中でも特に注目を集めているのが 「Claude Code」!

単なるコード補完にとどまらず、AIが開発チームの一員として働くような体験を実現できるんです。
今回はそんなClaude Codeの使い方と中核機能であるサブエージェントとMCP(Model Context Protocol)にフォーカスして、実践的な活用法を紹介していきます!
・Claude Codeとは
・Claude Codeの使い方
・Claude Code実践編
Claude Codeについてより詳しく勉強したい方は以下のUdemy講座で解説していますのでチェックしてみてください!
【初心者向け】Claude CodeでAIエージェントを用いたデータ加工集計分析とダッシュボード開発を体験!

| 【時間】 | 2時間 |
|---|---|
| 【レベル】 | 初級 |
Claude Codeを使ってデータ分析やダッシュボード構築を自動化したいならこのコース!
今なら購入時に「DSH32YCYTEY7」という講師クーポンコードを入れると90%オフ以上の割引価格になりますのでぜひご受講ください!
目次
Claude Codeとは
Claude CodeとはAnthropic社の大規模言語モデル「Claude」をベースにした開発支援ツールで、VSCodeやClaude Desktopから利用できるAIコーディングアシスタントです。
ChatGPTの「Code Interpreter」や「GPTs」と似ていますが、Claude Codeはよりプロジェクト単位の理解とファイル間の関係性を把握する点で優れています。
Claude Codeの特徴は以下になります。
| 機能 | 内容 |
|---|---|
| コード理解力 | 複数ファイルを横断して依存関係を把握し、プロジェクト全体の意図を理解 |
| 自動修正提案 | 差分パッチ(修正案)を提示し、リファクタやバグ修正を半自動化 |
| コンテキスト共有 | プロジェクト構成・履歴・関連ファイルを踏まえた一貫性のある回答 |
| MCP対応 | Model Context Protocolで外部ツール/APIと安全に連携(DB・Git・Python実行など) |
| サブエージェント機能 | 要件整理・実装・テストなど役割別のAIを分業稼働させて開発効率を最大化 |
サブエージェントとは?
Claude Codeの特徴的な機能に「サブエージェント」があります。
サブエージェントとは、タスクごとに最適なAIエージェントを作成し、分業させる仕組みです。
アプリ開発の中にはいろいろなタスク(設計・実装・テスト等)があり、そのタスクに応じて専用のサブエージェントを作成します。
| サブエージェント名 | 役割 | 具体的なタスク例 |
|---|---|---|
| Planner(設計担当) | 要件定義・仕様整理 | 機能一覧、API設計、ディレクトリ構成案 |
| Coder(実装担当) | コード生成・修正 | Python/React/Nodeなどの実装、パッチ生成 |
| Reviewer(レビュー担当) | 品質改善・レビュー | バグ検出、改善提案、セキュリティチェック |
| Tester(テスト担当) | テスト設計 | pytest作成、E2Eテスト、Mock生成 |
こうすることで一つのClaudeに単独で推論させるのではなく、サブエージェントにタスクを割り振り分業することで効率的に進めることが出来ます。

MCPとは?
Claude Codeの特徴の一つに「MCP対応」があります。
「Model Context Protocol(MCP)」とは、LLM(大規模言語モデル)が外部ツールやデータにアクセスするための標準的な仕組み(プロトコル)です。

これまでClaude Codeではプロジェクト内部のコード理解が中心でしたが、MCP対応により外部のデータやツールにアクセスできるようになりました。
これによりサブエージェントはMCPクライアントを経由して MCPサーバーへアクセスし、以下の様な処理を実行できます。
- APIの取得
- DBの読み取り
- 外部のPythonスクリプト実行
- コード保存・生成
MCPについては以下の記事で詳しく解説しているのでチェックしてみて下さい。
Claude Codeの使い方
「Claude Codeを使う方法」を見ていきましょう。
Claude Codeを初めて利用する際の手順は以下になります。
- Claudeのアカウント取得
- Claude Codeのインストール
- 初回ログイン
- プロジェクトフォルダでClaude Codeを起動
それぞれ詳細に見ていきます。
Claudeのアカウント取得
Claude Codeを利用するには「Claude.ai」もしくは「Claude Console」のアカウントが必要になります。
それぞれのサービスの特徴は以下になります。
| 項目 | Claude.ai | Claude Console(API) |
|---|---|---|
| 目的 | Claudeを「使う」 | Claudeを「組み込む」 |
| 課金 | 月額定額(Proプランで月20ドル) | 従量課金 |
| 対象 | 利用者 | 開発者 |
| 機能 | Chat / Desktop / Code | API |
Claude Codeを利用する場合は「Claude.ai」のアカウント利用がおすすめです。
またClaude.aiのアカウントには無料のFreeプランもありますが、Claude Codeを利用できないのでProプランもしくはMaxプランへの加入が必要なので注意してください。
Claude Codeのインストール
Claude Codeは ターミナルで動くコーディングAI なので、自身の環境に「Claude Code本体」を入れる必要があります。
自身の環境に合わせてインストールコマンドを実行してください。
# Claude Codeをインストール(macOS/Linux)
brew install --cask claude-code
もしくは
curl -fsSL https://claude.ai/install.sh | bash
# Claude Codeをインストール(windows)
irm https://claude.ai/install.ps1 | iex
もしくは
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmdインストール後、「Claude」というコマンドが実行できるようになります。
$claude -v
2.0.50 (Claude Code)上記のように結果が返ってくれば、正常にインストールされています。
初回ログイン
インストールが終わったら、ログインします。
$claude上記コマンドを実行するとClaude Codeの利用の承諾、Claude Codeの利用モードの選択します。

その後、ログインするアカウントを選択する画面になるので、①で作成したアカウントで認証します。下記は「Claude.ai」のアカウントを選んだ際の画面です。

ログインが成功したらClauce Codeが起動します。

Claude Codeの起動の注意点
Claude Codeでは「claude」コマンドを実行したフォルダ(カレントディレクトリ)を「プロジェクト」として扱います。
プロジェクトのフォルダではClaude Codeにいって主に以下のことが実施されます。
- 既存のファイルの読み込み
- 新規ファイルの作成・更新
- ディレクトリの作成
そのため、Claude Codeを起動する際は新規にプロジェクト用のファイルを作成し、そこに移動してから起動することをおすすめします。
Claude Codeを使ってみる
Claude Codeを起動したら実際に指示をして、挙動を確認してみましょう。
「このプロジェクトのファイル構成を教えてください、あと簡単なmain.pyで簡単な「Hello World」を表示するPythonコードを書いてください。」と指示を出します。
途中更新内容について承認が求められるので承認します。

実際に「main.py」が作成されているのが確認出来ました。

Claude Code実践編
Claude Codeの実践編になります。
Claude CodeのサブエージェントやMCPを組み合わせた「Todoアプリ」を作成していきます。
サブエージェントの設定
サブエージェントの設定はClaude Codeで「/agents」コマンドから実行できます。

まずはエージェントの保存場所を「プロジェクト単位」か「ユーザー単位」で選択できます。
ユーザー単位を選択した場合はすべてのプロジェクトでそのサブエージェントを利用できます。

次に作成方法を「Claude」か「手動設定」かを選択できます。

「Claude」を選択するとユーザーの指示に合わせて、最適な役割・プロンプト・権限を記載した設定ファイル(mdファイル)を自動生成してくれます。
「planner:要件定義・仕様整理を担当するエージェント」と指示して作成された設定ファイルの一部が下記になります。
---
name: planner
description: Use this agent when you need to clarify requirements, organize specifications, create implementation plans, or structure project scope before development begins.<省略>
model: sonnet
color: blue
---
You are an expert Requirements Analyst and Technical Planner with deep experience in software architecture, product management, and agile methodologies. You excel at transforming ambiguous ideas into clear, actionable specifications that development teams can execute confidently.
## Core Responsibilities
You will:
1. **Elicit and Clarify Requirements**: Ask targeted questions to uncover hidden requirements, assumptions, and constraints
2. **Structure Specifications**: Organize requirements into clear, hierarchical documentation
3. **Identify Dependencies**: Map out technical and functional dependencies between components
4. **Create Implementation Plans**: Break down work into logical phases and prioritized tasks
5. **Risk Assessment**: Identify potential technical challenges and propose mitigation strategies指示内容からエージェントの役割を具体的に落とし込んでくれています。
そのため、まずは「Claude」で自動生成して、自分の意図と違った場合は、設定ファイルを修正する方法がおすすめです。
最後にサブエージェントの推論モデルを選択します。

| モデル名 | 特徴 | 向いている用途(一般的な場面) |
|---|---|---|
| Opus | ・Claudeシリーズで最も高性能 ・高度な推論・複雑な意思決定に強い ・長文・複雑構造の理解に優れる ・コストはもっとも高い | ・高度な要件分析 ・複雑なアルゴリズム設計 ・大規模コードの理解・変換 ・研究用途や精密な文書分析 |
| Sonnet | ・性能とコストのバランスが非常に良い ・幅広いタスクに安定して対応できる ・生成・推論・コード理解の総合力が高い | ・一般的な開発業務全般 ・日常的な文章生成・要約・編集 ・コード生成・レビュー・調査作業 ・大多数のユーザーの“メインモデル” |
| Haiku | ・高速で軽量、コストも低い ・短い文章や単純タスクに強い ・レスポンスが速く、繰り返し処理に向く | ・簡単な補助タスク(分類・要約・抽出) ・軽いコード生成やテンプレ処理 ・大量の高速処理が必要な場面 ・チャットボットや軽量エージェント |
| Inherit from parent | ・メイン会話のモデルをそのまま利用 ・統一したコンテキストで作業できる ・柔軟性は低いが設定が簡単 | ・メイン会話との一貫性が必要な場面 ・モデルを個別に選択する必要がない場合 ・設定作業を簡略化したいケース |
作成できるとエージェント一覧の中に作成したサブエージェントが表示されます。

本記事では以下のサブエージェントを作成しています。
- planner:要件定義・仕様整理を担当するエージェント
- coder:差分パッチで実装を行うエージェント
- tester:pytestなどの自動テスト作成と MCP を利用した実行を担当するエージェント
実際にサブエージェントに指示を出すとサブエージェント側が動いて作業を実施してくれます。

MCPサーバーの設定
今回は自身の環境をMCPサーバーとして設定します。
MCPでは以下機能を準備します。
- 文字数カウント機能
- 単語カウント機能
- OpenAIのAPIと組み合わせた文章の要約機能
MCPサーバーの設定は以下の記事を参考にしてください。
MCPサーバー用のフォルダに以下の「server.py」を用意します。
import logging
import os
from collections import Counter
from dotenv import load_dotenv
from mcp.server.fastmcp import FastMCP
from openai import OpenAI
# .envファイルから環境変数を読み込み
load_dotenv()
# MCPサーバーのインスタンスを作成
mcp = FastMCP("text-analyzer")
# OpenAIクライアント(環境変数 OPENAI_API_KEY を利用)
openai_client = OpenAI(api_key=os.environ.get("OPENAI_API_KEY"))
@mcp.tool()
def count_chars(text: str) -> int:
"""文字数を返すシンプルなツール"""
return len(text)
@mcp.tool()
def top_words(text: str, n: int = 5) -> dict:
"""
スペース区切りで単語を数え、
出現回数の多い順に n 件返します。
"""
words = text.split()
counter = Counter(words)
return dict(counter.most_common(n))
@mcp.tool()
def summarize(text: str, style: str = "short") -> str:
"""
OpenAI API を使って文章を要約するツール。
"""
if not text.strip():
return ""
# プロンプトを組み立て(日本語の要約指示)
if style == "short":
instruction = "次の文章を、重要なポイントだけを残して2〜3文で簡潔に日本語要約してください。"
else:
instruction = "次の文章を、構成を保ちつつ簡潔に日本語で要約してください。"
prompt = f"{instruction}\n\n----\n{text}\n----"
try:
# モデル名は環境やプランに合わせて変更
response = openai_client.responses.create(
model="gpt-5-mini",
input=prompt,
)
summary = response.output_text
return summary
except Exception as e:
logging.exception("OpenAI API 呼び出し中にエラーが発生しました")
return f"要約中にエラーが発生しました: {e}"
if __name__ == "__main__":
# MCPサーバーとして起動
mcp.run(transport="stdio")Claude Desktopを開いて、MCPサーバーが設定されているか見ていきましょう。

実際に「〇〇を要約して」とチャットするとMCPサーバー経由でOpenAIを使って要約を返してくれます。

続いて、MCPサーバーをClaude Codeと接続していきます。
Claude CodeでのMCPサーバーの設定はClaude Codeとチャットすることで自動で作成してくれます。

ただし、筆者がやった際はpythonのスクリプトをpythonコマンドで実行しようとしたため、uvコマンドで起動するように修正が必要でしたので注意です。

Claude Code上でも実際にMCPサーバーのツールが機能していることが確認できます。
サブエージェント × MCP
サブエージェントとMCPを組み合わせて、「Todoアプリ」を作っていきます。
このような指示をClaude Codeに送ります。
このプロジェクトで、シンプルな「TODOリストCLIアプリ」を作りたいです。
前提:
- このプロジェクトには、少なくとも以下のサブエージェントが定義されている前提です:
- planner(要件定義・仕様整理担当)
- coder(実装担当)
- tester(テスト&検証担当)
- すでに別プロセスで text-analyzer という MCP サーバーが起動しており、
テキストの文字数カウント・頻出語抽出・簡易要約などの機能を持っています。
- TODOアプリ自体は、Pythonだけで完結するローカルCLIアプリとし、
実行時にはLLMやMCPに依存しない構成にしてください。
- MCPは主に「設計レビュー」「テスト結果の整理・要約」に活用してください。
ゴール:
- ターミナルから次のように実行できる TODOリストCLIアプリを作成すること:
- TODOの追加:
python -m app.todo add "牛乳を買う"
- TODOの一覧表示:
python -m app.todo list
- TODOの完了:
python -m app.todo done 1
- TODOの削除:
python -m app.todo delete 1
- TODOはローカルファイル(例:todo_data.json)に保存し、
アプリを終了してもデータが残るようにしてください。
- 各コマンドは日本語メッセージで分かりやすく振る舞うようにしてください。
サブエージェントごとのタスク:
1. planner のタスク:
- 上記ゴールに基づき、以下を整理してください:
- ディレクトリ構成(例:app/todo.py など)
- データ構造(ID, タイトル, 作成日時, 完了フラグ など)
- サポートするコマンドとオプション(add/list/done/delete 以外に必要があれば提案)
- エラーハンドリング方針(存在しないIDが指定された場合など)
- ストレージ形式として、シンプルなJSONファイルを想定し、
どのようなJSON構造にするかも具体的に示してください。
- 後からテストしやすいように、「期待される挙動」を箇条書きでまとめてください。
- 必要に応じて、text-analyzer MCP を使って要件テキストを簡単に要約し、
自分の理解を確認しても構いません。
2. coder のタスク:
- planner の設計に基づき、app/todo.py を実装する差分パッチを提示してください。
- 実装内容:
- Pythonの標準ライブラリ(例:argparse, json, pathlib, datetime など)だけで実装すること。
- コマンドライン引数からサブコマンド(add/list/done/delete)を判別すること。
- JSONファイルの読み書き処理(ファイルが存在しない場合の初期化も含む)。
- コマンドごとの具体的な挙動と日本語メッセージ出力。
- コードには日本語コメントを追加し、ブログ記事で解説しやすいようにしてください。
- 簡単な実行例と、そのときに想定される出力例をコメントとしてコード内に残してください。
3. tester のタスク:
- 簡単なテストシナリオをいくつか提案し、
実際にそれらのコマンドを順番に実行した場合の期待結果を説明してください。
例:
1) 既存のデータを削除 or 初期化
2) TODOを3件追加
3) 2番目のTODOを完了
4) listコマンドでの表示内容
5) 1番目のTODOを削除 など
- そのうえで、テスト結果やコマンドの実行ログを
text-analyzer MCP に渡して summarize させ、
「このTODOアプリは何ができるか」を短く日本語で要約させてください。
その要約結果を、テストレポートとして説明に含めてください。
- 可能であれば、text-analyzer MCP の top_words なども活用し、
コマンド使用頻度や典型的な利用パターンが分かるような分析も試してください。
共通ルール:
- ファイルの追加・変更は、必ず差分パッチ形式で提示してください。
- どのフェーズでどのサブエージェントが何をしたかが、
後からブログ記事に書きやすいように、適宜説明も含めてください。
- 不足している情報があれば、最初に質問してから進めてください。
以上を、planner → coder → tester の順に進めてください。実行を確認すると、まずplannner⇒coder⇒testerの順に作業が行われ、アプリが開発されます。

MCPの機能を利用してテスト結果の要約を行っていることも確認できます。

実際にアプリを動かすと、ちゃんと動作しているのが確認できます。

Claude Codeまとめ
Claude Codeの使い方について見ていきました。
改めてClaude Codeの機能をおさらいします。
| 機能 | 内容 |
|---|---|
| コード理解力 | 複数ファイルを横断して依存関係を把握し、プロジェクト全体の意図を理解 |
| 自動修正提案 | 差分パッチ(修正案)を提示し、リファクタやバグ修正を半自動化 |
| コンテキスト共有 | プロジェクト構成・履歴・関連ファイルを踏まえた一貫性のある回答 |
| MCP対応 | Model Context Protocolで外部ツール/APIと安全に連携(DB・Git・Python実行など) |
| サブエージェント機能 | 要件整理・実装・テストなど役割別のAIを分業稼働させて開発効率を最大化 |
自然言語で指示をしてプログラムを自動生成してくれるだけではなく、サブエージェントやMCPと組み合わせることで効率的に開発することが出来ます。
ぜひ触ってみて、いろんなアプリを作っていこう!
今回はClaude Codeの使い方をもっと実践的に学びたい方はぜひ以下のUdemy講座を受講してみて下さい。
【初心者向け】Claude CodeでAIエージェントを用いたデータ加工集計分析とダッシュボード開発を体験!

| 【時間】 | 2時間 |
|---|---|
| 【レベル】 | 初級 |
Claude Codeを使ってデータ分析やダッシュボード構築を自動化したいならこのコース!
今なら購入時に「DSH32YCYTEY7」という講師クーポンコードを入れると90%オフ以上の割引価格になりますのでぜひご受講ください!





















