Claude CodeとLaravel Boostの違いと使い方 — 役割分担とMCP連携
Claude CodeとLaravel Boostは競合せず補完し合います。Boostとは何か、使い方の2コマンド、CLAUDE.mdの有無で変わるガイドライン出力先を扱います。
Claude CodeとLaravel Boostは何が違うのか
結論から言うと、両者は競合しません。Claude Codeはどんな言語・フレームワークでも動く汎用のコーディングエージェントで、Laravel Boostはその上にLaravel固有の知識を積む拡張レイヤーです。Laravel公式のインストールガイドも、Laravel Boostを「AIコーディングエージェントとLaravelアプリケーションの間のギャップを埋めるツール」と説明しています。Claude Codeを置き換えるものではありません。
Claude Codeはファイルの読み書き・コマンド実行・計画立案を担う実行基盤です。一方のLaravel Boostは、MCPサーバー・AIガイドライン・Agent Skillsという3つの仕組みで、Claude CodeにLaravelプロジェクト固有のコンテキストを渡します。
Laravel Boostとは、Laravel公式の開発用パッケージです。使い方はcomposer require laravel/boost --devとphp artisan boost:installの2コマンドで、Laravelプロジェクトに入れるとClaude Codeから使えます。
実務で引っかかりやすいのは、ガイドラインの書き込み先です。Boostの出力先はプロジェクトにCLAUDE.mdがあるかどうかで変わり、Claude Code側の読み込み規則と噛み合わない組み合わせがあります。後半で扱います。
Claude CodeとLaravel Boostがそれぞれ担う範囲
Claude Codeは、コードベースを読み、編集を提案し、テストやビルドコマンドを実行するCLIエージェントです。CLAUDE.mdに書かれた指示を毎セッション読み込み、MCP(Model Context Protocol)を通じて外部ツールに接続できます。ただし、Laravelのバージョンやパッケージ構成は最初は知りません。
Laravel Boostは、その空白を埋める専用パッケージです。Composerでインストールし、php artisan boost:installを実行すると、プロジェクトのcomposer.jsonからインストール済みパッケージを検出します。そのうえで、バージョンに応じたガイドラインとMCPツールをAIエージェント向けに生成します。
Boostは「Laravelアプリの中身を知っている案内役」で、Claude Codeは「その案内をもとに実際に手を動かす実行役」です。
役割の分かれ目
Claude Code
ファイルの編集、git操作、テストの実行、MCPサーバーを通じた外部ツールの呼び出しを担います。どの言語でも同じように動きます。
Laravel Boost
導入済みのパッケージとそのバージョン、DBスキーマ、直近のエラーログなど、Laravelアプリ側の状態を返します。ガイドラインとSkillsでLaravelの作法も渡します。
Laravel Boostが追加する3つの仕組み
MCPサーバーが提供する9つのツール
Laravel Boostはphp artisan boost:mcpで起動するMCPサーバーを内蔵しています。Claude Codeがこのサーバーに接続すると、以下のツールを呼び出せます。Laravelのインストールガイドは「15を超える専門ツール」と書いていますが、Boostのドキュメントに載るMCPツールの表は次の9件です。
| ツール名 | できること |
|---|---|
| Application Info | できることPHP・Laravelのバージョン、DBエンジン、導入済みパッケージ、Eloquentモデルの一覧を取得 |
| Database Connections | できること利用可能なDB接続とデフォルト接続を確認 |
| Database Query | できることDBに対してクエリを実行 |
| Database Schema | できることDBスキーマを読み取り |
| Browser Logs | できることブラウザのログとエラーを取得 |
| Last Error | できることアプリのログファイルから直近のエラーを取得 |
| Read Log Entries | できること直近N件のログエントリを取得 |
| Get Absolute URL | できること相対パスを絶対URLに変換 |
| Search Docs | できることインストール済みパッケージに対応した公式ドキュメントをセマンティック検索 |
これらはClaude Codeが標準では持たない、Laravelアプリの「今の状態」を見るための手段です。マイグレーションを当てる前にスキーマを確認する、エラーログを読んでから修正案を出す、といった作業をClaude Codeが自律的にこなせます。
Search Docsは、17,000件超のLaravelエコシステム情報をベクトル化したドキュメンテーションAPIを叩きます。対応範囲はパッケージごとに決まっており、一覧に無いパッケージは検索対象外です。
| パッケージ | Search Docsの対応バージョン |
|---|---|
| Laravel Framework | Search Docsの対応バージョン10.x / 11.x / 12.x |
| Filament | Search Docsの対応バージョン2.x / 3.x / 4.x / 5.x |
| Livewire | Search Docsの対応バージョン1.x / 2.x / 3.x / 4.x |
| Inertia | Search Docsの対応バージョン1.x / 2.x |
| Flux UI | Search Docsの対応バージョン2.x Free / 2.x Pro |
| Nova | Search Docsの対応バージョン4.x / 5.x |
| Pest | Search Docsの対応バージョン3.x / 4.x |
| Tailwind CSS | Search Docsの対応バージョン3.x / 4.x |
同じBoostのドキュメントでも、ガイドラインの対応表とは範囲が違います。たとえばInertiaのガイドラインは1.x・2.x・3.xが対象ですが、Search Docsは1.xと2.xです。Filamentはガイドラインの表にありません。Search Docsの対象外パッケージは、このツールでは引けません。
ガイドラインの書き込み先はCLAUDE.mdの有無で変わる
boost:installは、選択したエージェントごとにガイドラインを自動生成します。Laravel・Livewire・Inertia・Pest・Tailwind CSSなど、主要パッケージのコーディング規約を書いたものです。GitHubのソースでは、Claude Code向けの出力先を決めるguidelinesPath()は次の順で判断します。
- 設定
boost.agents.claude_code.guidelines_pathがあれば、そのパス - なければ、プロジェクトに
CLAUDE.mdが存在すればCLAUDE.md - どちらでもなければ
AGENTS.md
つまり、既存のCLAUDE.mdがあるプロジェクトでは、Boostは別ファイルを作らずそのCLAUDE.mdに書き足します。Claude Code側の読み込み規則と組み合わせると、次の2通りに分かれます。
CLAUDE.mdがあるか、ないか
CLAUDE.mdが既にある
ガイドラインはCLAUDE.mdの末尾に入り、Claude Codeは通常どおり読みます。追加の設定は要りません。
CLAUDE.mdがない
Claude CodeはAGENTS.mdを、作業ディレクトリかその上の階層にCLAUDE.mdもCLAUDE.local.mdも無いときだけ読みます。v2.1.277以降の機能です。
Boostが見るのはプロジェクトルートのCLAUDE.mdだけです。.claude/CLAUDE.mdしか無い場合や、親ディレクトリにCLAUDE.mdがある場合、BoostはAGENTS.mdを作ります。ところがClaude CodeはそれらのCLAUDE.mdを優先し、AGENTS.mdを読みません。
2つ目の分かれ目は、後から崩れやすい点です。AGENTS.mdだけで動いていたプロジェクトに、個人用のCLAUDE.local.mdを作るだけで、Claude CodeはAGENTS.mdを読まなくなります。公式のメモリ解説も、この組み合わせを注意書きにしています。同じ状態は、チームがCLAUDE.mdを足したときにも起きます。
さらに、CLAUDE.mdができたあとにboost:updateを実行すると、書き込み先はCLAUDE.mdに切り替わります。AGENTS.mdに残った古いブロックは更新されないため、2つのファイルに別々の時点のガイドラインが並びます。
両方を読ませたいときは、/configのProject instructionsをclaude-md-and-agents-mdにします。設定ファイルに書くなら、ユーザーの~/.claude/settings.jsonなどのpluginConfigsに置きます。プロジェクトやローカルの設定ファイルに書いても無視されます。
{
"pluginConfigs": {
"agents-md@builtin": {
"options": { "instructionFiles": "claude-md-and-agents-md" }
}
}
}BedrockやテレメトリーOFFの一部のセッションでは、v2.1.281未満ではAGENTS.mdを読みません。その場合は、CLAUDE.mdの中から@AGENTS.mdのように取り込む方法が使えます。
CLAUDE.mdに書き込む場合でも、手書きの内容は守られます。Boostは自分の出力を<laravel-boost-guidelines>タグで囲み、ファイルの末尾に===の区切りを置いて追記します。boost:installやboost:updateを再実行すると、このタグの中身だけを同じ位置で置き換えます。タグの外に書いた手書きの指示は残り、タグの中を直接編集すると次の更新で消えます。独自の規約は、タグの外か.ai/guidelines/に置くのが安全です。
.ai/guidelines/に.mdか.blade.phpのファイルを置くと、boost:installの際にBoostの規約と一緒に取り込まれます。Boost標準のガイドラインと同じパスのファイルを置けば、標準の方が差し替わります。
Boostの公式ドキュメントは、生成された.mcp.json・CLAUDE.md・AGENTS.md・boost.jsonを.gitignoreに加えてよいと書いています。再生成される前提のファイルだからです。ただし手書きの指示が同じCLAUDE.mdに同居しているなら、ファイルごと除外するとチームへ共有されなくなる点は押さえておく必要があります。
Agent Skills — .claude/skills/に直接インストールされる
Laravel Boostはこのほかに、パッケージ単位のAgent Skillsをcomposer.jsonの内容から自動選択してインストールします。Livewireがあればlivewire-development、Pestがあればpest-testingといった具合です。ガイドラインがセッション開始時に常に読み込まれるのに対し、Skillsは該当する作業のときだけ読み込まれます。
Claude Code向けのSkillsの出力先は、既定で.claude/skillsです。これはClaude Codeが手書きのプロジェクトSkillを探す場所と同じディレクトリなので、Boostが生成したSkillはそのまま認識されます。
自作のSkillをBoostに管理させたいときは、.ai/skills/{skill-name}/SKILL.mdを作ります。boost:updateのときに、Boost標準のSkillと並んでインストールされます。標準と同名のSkillを置けば、標準の側が差し替わります。livewire-developmentを自分の運用に合わせて書き換えたい場合の入口です。
Claude CodeにLaravel Boostを導入する手順
導入はComposerでのインストール、boost:installの対話、MCP接続の確認の3段階です。
導入の流れ
- 1
Composerで開発依存として入れる
composer require laravel/boost --devを実行します。本番には入れない前提のパッケージです。 - 2
boost:installで機能を選ぶ
php artisan boost:installが、使用中のAIエージェントを自動検出します。MCP・ガイドライン・Skillsのうち、有効にする機能を対話画面で選びます。 - 3
Claude Code側で接続を確かめる
Claude Codeを起動して
/mcp(またはclaude mcp list)で、laravel-boostが接続済みになっているかを見ます。
composer require laravel/boost --dev
php artisan boost:installClaude Code向けにMCPサーバーを有効化すると、設定はプロジェクトルートの.mcp.jsonに書き込まれます。これはClaude Codeの用語でprojectスコープにあたり、gitで共有すればチームメンバー全員が同じMCP接続を得られます。
MCPサーバーが自動検出で有効化されないときは、公式ドキュメントが次のコマンドを例示しています。
claude mcp add -s local -t stdio laravel-boost php artisan boost:mcpv2.1.289のclaude mcp add --helpは、-s, --scopeの既定値をlocal、-t, --transportの既定値をstdioと表示します。つまりこのコマンドの2つのオプションは、省略した場合と同じ指定です。
注意したいのはスコープです。-s localはboost:installが書く.mcp.json(projectスコープ)と違い、実行した自分のマシンだけに効く設定です。チームで共有したいなら-s projectにするか、.mcp.jsonを直接編集します。.mcp.jsonに書く内容は、公式ドキュメントでは次の形です。
{
"mcpServers": {
"laravel-boost": {
"command": "php",
"args": ["artisan", "boost:mcp"]
}
}
}claude mcp addのオプション(スコープ指定や認証まわり)はLaravel Boost固有ではなく、MCPサーバー全般に共通する構文です。同じ型はAuth0やBrowserbaseのMCPサーバーを導入するときにも登場します。
対応バージョンの食い違い
Boostが動くPHPとLaravelの範囲は、情報源によって書き方が違います。
対応範囲を書く2つの場所
Laravel 12.x公式ドキュメント
Laravel 10・11・12のアプリケーションで、PHP 8.1以上と書かれています。
GitHub mainのcomposer.json
PHPは^8.2、illuminate/*は^11.45.3|^12.41.1|^13.0で、Laravel 11〜13が対象です。
PHP 8.1のプロジェクトやLaravel 10のプロジェクトでは、2つの記述のどちらを採るかで導入可否が変わります。導入前に自分のプロジェクトのcomposer.jsonを、パッケージ定義の制約と照らし合わせておくと確実です。
php artisan boost:updateは、ガイドラインとSkillsを最新化するコマンドです。composer.jsonのpost-update-cmdに@php artisan boost:update --ansiを登録すれば、依存パッケージの更新に合わせて自動実行できます。
使い分け早見表
| 判断したいこと | 担当 | 理由 |
|---|---|---|
| ファイルの編集・git操作・テスト実行 | 担当Claude Code | 理由汎用のコーディングエージェントとしての基本機能 |
| 「このモデルのリレーションは何か」の確認 | 担当Laravel Boost(MCP) | 理由Application Info・Database Schemaツールがアプリの実態を返す |
| 「Livewireのこのバージョンでの正しい書き方」 | 担当Laravel Boost(Search Docs・Skills) | 理由バージョン別ガイドラインとドキュメント検索が担当 |
| プロジェクト固有の業務ルール・命名規則 | 担当手書きのCLAUDE.md / .ai/guidelines/ | 理由Boostの自動生成部分とは別に、独自に維持する領域 |
| 外部SaaSやDBサーバーへの接続 | 担当Claude Code側でMCPサーバーを個別登録 | 理由Boostが提供するのはLaravelアプリ内部の情報に限られる |
よくあるつまずき
boost:installでClaude Codeが自動検出されなかった場合、MCPサーバーが登録されないまま使い続けてしまうことがあります。Claude Code自体は問題なく動くため、Application InfoやDatabase Schemaが呼べていないことに気づきにくい状態です。
もう一つ紛らわしいのが、Boostが提供するmcp-developmentスキルです。公式の一覧では対応パッケージが「MCP」と書かれています。BoostのMCPサーバーを使うためのスキルではなく、LaravelのMCPパッケージ(laravel/mcp)でサーバーを実装する開発者向けのスキルです。laravel/mcpはBoost自身の依存パッケージにも入っています。
まとめ
導入前に確かめたいのは、プロジェクトにCLAUDE.mdがあるかどうかと、Claude Codeのバージョンがv2.1.277以降かどうかの2点です。この2つで、ガイドラインの行き先とClaude Codeが読むファイルが決まります。
参照した一次ソース
この記事の記述は、次の一次ソースと照合しています。更新時に参照先が変わった場合は一覧も更新します。
- laravel.com/docs/12.x/installation
- laravel.com/docs/12.x/boost
- github.com/laravel/boost/blob/main/src/Install/Agents/ClaudeCode.php
- github.com/laravel/boost/blob/main/src/Install/GuidelineWriter.php
- github.com/laravel/boost/blob/main/composer.json
- code.claude.com/docs/en/mcp
- code.claude.com/docs/en/skills
- code.claude.com/docs/en/memory