laravel/mcp
Build MCP (Model Context Protocol) servers in Laravel so AI clients can securely interact with your app. Expose tools, resources, and prompts using familiar Laravel patterns, with docs and integrations designed for rapid setup and deployment.
Full Changelog: https://github.com/laravel/mcp/compare/v0.6.4...v0.6.5
assertStructuredContent($closure) support by [@gdebrauwer](https://github.com/gdebrauwer) in https://github.com/laravel/mcp/pull/172SessionInitialized event by [@jessarcher](https://github.com/jessarcher) in https://github.com/laravel/mcp/pull/152mcp- prefix and update references by [@pushpak1300](https://github.com/pushpak1300) in https://github.com/laravel/mcp/pull/145assertStructuredContent method by [@gdebrauwer](https://github.com/gdebrauwer) in https://github.com/laravel/mcp/pull/140Full Changelog: https://github.com/laravel/mcp/compare/v0.5.0...v0.5.1
Full Changelog: https://github.com/laravel/mcp/compare/v0.4.1...v0.4.2
2025-11-25 to supported protocolVersion by [@pushpak1300](https://github.com/pushpak1300) in https://github.com/laravel/mcp/pull/125Full Changelog: https://github.com/laravel/mcp/compare/v0.4.0...v0.4.1
Role case names by [@pushpak1300](https://github.com/pushpak1300) in https://github.com/laravel/mcp/pull/116resource-template stub and update JsonSchema import by [@pushpak1300](https://github.com/pushpak1300) in https://github.com/laravel/mcp/pull/122Applications referencing the previous case names will need manual updates.
Required changes
Role::ASSISTANT should be updated to Role::AssistantRole::USER should be updated to Role::UserMake sure your codebase reflects these changes before upgrading to avoid build or runtime errors.
Tool implementations that explicitly type hint Illuminate\JsonSchema\JsonSchema in their schema() or outputSchema() methods must update to use the contract interface Illuminate\Contracts\JsonSchema\JsonSchema.
Before
use Illuminate\JsonSchema\JsonSchema;
public function schema(JsonSchema $schema): array
{
//
}
After
use Illuminate\Contracts\JsonSchema\JsonSchema;
public function schema(JsonSchema $schema): array
{
//
}
This affects only custom tool classes that override the schema methods. The update is minimal, requiring only the import change to the contract interface.
Full Changelog: https://github.com/laravel/mcp/compare/v0.3.4...v0.4.0
Full Changelog: https://github.com/laravel/mcp/compare/v0.3.1...v0.3.2
client_id to string in JSON response by [@mostafa-rz](https://github.com/mostafa-rz) in https://github.com/laravel/mcp/pull/93.junie Detritus by [@yitzwillroth](https://github.com/yitzwillroth) in https://github.com/laravel/mcp/pull/59artisan optimize command by [@nunomaduro](https://github.com/nunomaduro) in https://github.com/laravel/mcp/pull/66Initial pre-release.
How can I help you explore Laravel packages today?