News

Laravel MCP Beta is Released

Published

The Laravel team launched a public beta of Laravel MCP, a package to rapidly build Model Context Protocol (MCP) servers for your Laravel applications. Laravel MCP joins Laravel Boost as a first-party tool that makes working with AI in Laravel a joy build.

Laravel MCP provides a framework for AI clients to interact with your Laravel application, defining routes, servers, prompts, and more:

namespace App\Mcp\Servers;
 
use Laravel\Mcp\Server;
 
class WeatherServer extends Server
{
/**
* The tools registered with this MCP server.
*
* @var array<int, class-string<\Laravel\Mcp\Server\Tool>>
*/
protected array $tools = [
// ExampleTool::class,
];
 
/**
* The resources registered with this MCP server.
*
* @var array<int, class-string<\Laravel\Mcp\Server\Resource>>
*/
protected array $resources = [
// ExampleResource::class,
];
 
/**
* The prompts registered with this MCP server.
*
* @var array<int, class-string<\Laravel\Mcp\Server\Prompt>>
*/
protected array $prompts = [
// ExamplePrompt::class,
];
}

Servers define the central communication point to provide capabilities such as tools, resources, and prompts. Here's an example of a CurrentWeatherTool from the documentation to give you a quick taste of building with Laravel MCP:

namespace App\Mcp\Tools;
 
use Illuminate\JsonSchema\JsonSchema;
use Laravel\Mcp\Request;
use Laravel\Mcp\Response;
use Laravel\Mcp\Server\Tool;
 
class CurrentWeatherTool extends Tool
{
protected string $description = 'Fetches the current weather forecast for a specified location.';
 
public function handle(Request $request): Response
{
$location = $request->get('location');
 
// Get weather...
 
return Response::text('The weather is...');
}
 
public function schema(JsonSchema $schema): array
{
return [
'location' => $schema->string()
->description('The location to get the weather for.')
->required(),
];
}
}

Laravel MCP is released to the public as a beta version, but it already feels like a polished Laravel package. It feels very much like building MVC Laravel applications, and I think this package will help the Laravel community productively build MCP servers that are not only a joy to use, but also to build.

Learn More

With the beta release of Laravel MCP, there are a lot of resources to get started. I recommend reading the documentation first, and then diving into the Laravel/Locket demo code to provide examples of how to build servers, tools, and prompts.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Filed in

Sponsored

serpapi logo
SerpApi

The Web Search API for Your LLM and AI Applications

Visit SerpApi

The latest

View all →
Building EasyReply: How We Used Laravel to Unify Customer Support image

Building EasyReply: How We Used Laravel to Unify Customer Support

Read article
PostgreSQL Monitoring and Schema Linting for Laravel with Vacuum image

PostgreSQL Monitoring and Schema Linting for Laravel with Vacuum

Read article
PayZephyr: One Payment API for Stripe, Paystack, and PayPal image

PayZephyr: One Payment API for Stripe, Paystack, and PayPal

Read article
Bifrost Turns One With AI Builds and New Workflows image

Bifrost Turns One With AI Builds and New Workflows

Read article
Preview Blade Templates in macOS Finder with Quick Blade image

Preview Blade Templates in macOS Finder with Quick Blade

Read article
Artisan Debugging Commands in Laravel Telescope 5.24.0 image

Artisan Debugging Commands in Laravel Telescope 5.24.0

Read article