/ ディレクトリ / プレイグラウンド / Laravel MCP
● 公式 laravel ⚡ 即起動

Laravel MCP

作者 laravel · laravel/mcp

Laravel's official MCP package — define MCP tools as classes, expose Eloquent models and Artisan commands to Claude with first-party auth/middleware.

Laravel MCP turns any Laravel app into an MCP server. Tools are PHP classes you register in a service provider; the package handles JSON-RPC, schema generation, and transport. You get to reuse your auth, policies, and middleware.

なぜ使うのか

主な機能

ライブデモ

実際の動作

準備完了

インストール

クライアントを選択

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "laravel-mcp": {
      "command": "php",
      "args": [
        "artisan",
        "mcp:start"
      ],
      "_doc": "Run inside a Laravel project after `composer require laravel/mcp` and `php artisan mcp:install`."
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config を開く。保存後、アプリを再起動。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "laravel-mcp": {
      "command": "php",
      "args": [
        "artisan",
        "mcp:start"
      ],
      "_doc": "Run inside a Laravel project after `composer require laravel/mcp` and `php artisan mcp:install`."
    }
  }
}

Cursor は Claude Desktop と同じ mcpServers スキーマを使用。プロジェクト設定はグローバルより優先。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "laravel-mcp": {
      "command": "php",
      "args": [
        "artisan",
        "mcp:start"
      ],
      "_doc": "Run inside a Laravel project after `composer require laravel/mcp` and `php artisan mcp:install`."
    }
  }
}

Cline サイドバーの MCP Servers アイコンをクリックし、"Edit Configuration" を選択。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "laravel-mcp": {
      "command": "php",
      "args": [
        "artisan",
        "mcp:start"
      ],
      "_doc": "Run inside a Laravel project after `composer require laravel/mcp` and `php artisan mcp:install`."
    }
  }
}

Claude Desktop と同じ形式。Windsurf を再起動して反映。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "laravel-mcp",
      "command": "php",
      "args": [
        "artisan",
        "mcp:start"
      ]
    }
  ]
}

Continue はマップではなくサーバーオブジェクトの配列を使用。

~/.config/zed/settings.json
{
  "context_servers": {
    "laravel-mcp": {
      "command": {
        "path": "php",
        "args": [
          "artisan",
          "mcp:start"
        ]
      }
    }
  }
}

context_servers に追加。保存時に Zed がホットリロード。

claude mcp add laravel-mcp -- php artisan mcp:start

ワンライナー。claude mcp list で確認、claude mcp remove で削除。

ユースケース

実用的な使い方: Laravel MCP

Expose Eloquent models as MCP tools

👤 Developers ⏱ ~15 min intermediate

使うタイミング: You want Claude to query/update your domain data through your existing policies.

フロー
  1. Install
    composer require laravel/mcp; php artisan mcp:install✓ コピーしました
    → Service provider + config published
  2. Define tool
    Create OrderLookupTool extends McpTool, type-hint $orderId; return Order::findOrFail($orderId).✓ コピーしました
    → Tool registered
  3. Run
    php artisan mcp:start; connect Claude.✓ コピーしました
    → Claude lists your tool and can call it

結果: Claude reads/writes your domain data via your existing authorization.

Wrap Artisan commands as MCP tools

👤 Developers ⏱ ~15 min intermediate

使うタイミング: You want Claude to run safe maintenance tasks (cache clear, queue retry).

フロー
  1. Whitelist
    In config/mcp.php, list the Artisan commands you allow.✓ コピーしました
    → Whitelist saved
  2. Call
    From Claude: "Run artisan queue:retry all".✓ コピーしました
    → Command runs; output streamed back

結果: Operational tasks become Claude-callable, scoped to a whitelist.

組み合わせ

他のMCPと組み合わせて10倍の力を

laravel-mcp + github

Deploy MCP server alongside your Laravel app via Forge/Vapor

Combine laravel-mcp with github: Deploy MCP server alongside your Laravel app via Forge/Vapor✓ コピーしました
laravel-mcp + sentry

Errors raised inside tools surface in your existing Sentry pipeline

Combine laravel-mcp with sentry: Errors raised inside tools surface in your existing Sentry pipeline✓ コピーしました

ツール

このMCPが提供する機能

ツール入力呼び出すタイミングコスト
php-class tools (see docs) Each tool you register is dispatched via Laravel container with normal middleware 1 call

コストと制限

運用コスト

APIクォータ
Bound by your DB and rate limits
呼び出しあたりのトークン
Whatever your tool returns
金額
Free package; your hosting costs apply
ヒント
Paginate model returns; large Eloquent dumps blow tokens fast

セキュリティ

権限、シークレット、影響範囲

最小スコープ: app-defined gates/policies
認証情報の保管: Sanctum/Passport tokens via Laravel auth
データ送信先: Local app only
絶対に付与しない: skip your normal authorization checks in tools

トラブルシューティング

よくあるエラーと対処法

Tool not appearing in client

Restart mcp:start; tools register at boot. Check service provider is loaded.

JSON Schema wrong

Ensure PHP type hints — int $id, not $id. Use attributes for descriptions.

代替案

Laravel MCP 他との比較

代替案代わりに使う場面トレードオフ
fastmcp (Python)Stack is PythonNo Eloquent integration
csharp-sdkStack is .NETDifferent ecosystem

その他

リソース

📖 GitHub の公式 README を読む

🐙 オープンな issue を見る

🔍 400以上のMCPサーバーとSkillsを見る