~ / noticias /laravel-boost-mcp-oficial-laravel $ _

Laravel Boost: o MCP oficial que ensina o agente a ler seu app antes de gerar código

Lucas Souza Lucas Souza 9 min de leitura Notícias
Laravel Boost: o MCP oficial que ensina o agente a ler seu app antes de gerar código

Tu pediu pro agente "criar o CRUD de pedidos" no teu Laravel. Trinta segundos depois ele te entrega 200 linhas com User::find($userId), Order::where('user_id', $id) e um OrderResource importando de App\Http\Resources\OrderResource.

Só que no teu projeto o campo é customer_id, o model User foi renomeado pra Account há dois sprints e o Resource vive em outro namespace. O código não compila. Tu volta pro chat, cola o erro, o agente "corrige" inventando outro campo, e o ciclo recomeça.

O problema não é o modelo. O problema é que o agente está adivinhando seu app porque ninguém mostrou seu app pra ele. O Laravel Boost, pacote oficial do time Laravel anunciado em agosto de 2025, resolve exatamente isso: sobe um servidor MCP que expõe routes, models, db schema, docs e logs como tools que o agente consulta antes de gerar uma linha de código.

TL;DR

  • O que é: servidor MCP oficial do Laravel que dá ao agente acesso programático ao teu app (schema, routes, models, logs) + 17 mil trechos de documentação versionada do ecossistema Laravel.
  • Stack: Laravel 10/11/12/13, PHP 8.1+. Funciona com Claude Code, Cursor, Codex, Gemini CLI, GitHub Copilot e Junie.
  • Custo/Acesso: open-source (MIT), --dev dependency, sem custo de API próprio. Só roda local.
  • Repositório: github.com/laravel/boost — versão 2.4.8 no momento desta publicação.

Por que o Boost existe — o problema do agente Laravel cego

LLM bom é LLM bem alimentado. E LLM treinado em código velho não sabe que tu já está no Laravel 13, que tua app usa Filament 4 e que o User virou Account. Ele responde com o que viu no treino: Laravel 10, Filament 2, User padrão.

O time Laravel resume isso sem rodeio:

"We release a feature tomorrow in Laravel because we release every Tuesday. LLMs have no idea that that feature exists because they've been trained on old data. But Boost actually allows us to feed them the latest info." — Laravel team

Antes do Boost, o agente tinha duas opções: chutar API com base no treino (alucina) ou ler arquivo por arquivo até reconstruir o contexto (queima janela). Nenhuma das duas escala num projeto real de 200 models.

Boost muda a conversa porque para de tratar o agente como "modelo de linguagem genérico" e começa a tratar como "agente com ferramentas". O modelo continua o mesmo. O que muda é o que ele pode perguntar.

Os 15+ tools — o que o Boost realmente expõe

A lista oficial está na documentação, mas o que importa é o que cada uma desbloqueia no comportamento do agente:

  • Application Info — versão do PHP, do Laravel, engine do banco, lista de pacotes instalados com versão exata. O agente para de assumir Laravel 11 quando tu está no 13.
  • Database Schema — schema real das tabelas, com tipos, índices e foreign keys. Adeus where('user_id', ...) quando o campo é customer_id.
  • Database Query — execução read-only. O agente pode validar uma query antes de te entregar.
  • List Routes — todas as rotas registradas, middlewares, controllers, parâmetros. Não tem mais "vou criar a rota /api/orders pra ti" quando ela já existe.
  • Search Docs — busca semântica nos 17 mil trechos de documentação versionada (Laravel, Filament, Flux, Inertia, Livewire, Nova, Pest, Tailwind). Versão certa, sintaxe certa.
  • Tinker — sim, o agente roda Tinker pra inspecionar fixture, conferir relacionamento, testar whereHas.
  • Browser Logs / Read Log Entries / Last Error — leitura dos logs do navegador e do laravel.log. O agente vê o stacktrace real ao invés de te pedir pra colar.
  • Read Config / Get Absolute URL — leitura de config e geração de URLs absolutas válidas.

Em cima das tools, o Boost ainda instala dois mecanismos de contexto que mudam o resultado sem que o agente precise chamar nada:

  • AI Guidelines — arquivos de instrução versionados por pacote (Laravel core, Livewire 3.x, Pest 4.x, Tailwind 4.x, etc.) que entram no system prompt. Tu pode sobrescrever ou adicionar os teus em .ai/guidelines/*.
  • Agent Skills — skills modulares (pest-testing, livewire-development, wayfinder-development) que o agente carrega sob demanda quando o tema da conversa pede.

A combinação é o pulo do gato: guidelines guiam o estilo, tools garantem o fato.

Instalação em três comandos

composer require laravel/boost --dev
php artisan boost:install
claude mcp add -s local -t stdio laravel-boost php artisan boost:mcp

O boost:install é interativo. Ele detecta automaticamente quais IDEs e agentes estão no repo (.cursor/, .claude/, .github/copilot/, etc.) e gera os arquivos de configuração e guidelines pra cada um. O terceiro comando é só pra Claude Code — Cursor, Copilot e Junie se configuram pelo próprio palette.

Para confirmar que subiu, dentro do Claude Code roda /mcp e procura laravel-boost. Se aparecer com as tools listadas, está vivo.

Quem quer que o Boost se mantenha atualizado quando algum pacote sobe de versão, adiciona no composer.json:

{
  "scripts": {
    "post-update-cmd": [
      "@php artisan boost:update --ansi"
    ]
  }
}

Caso real — CRUD Order com 8 relacionamentos

Pra medir o impacto, peguei um cenário concreto: gerar o CRUD completo de um model Order num e-commerce Laravel 13 + Filament 4. O Order tem oito relacionamentos: belongsTo Customer, belongsTo Address (shipping), belongsTo Address (billing), hasMany OrderItem, hasMany Payment, hasMany Shipment, belongsToMany Coupon, morphMany Note. Campos com nomes não-padrão: customer_id (não user_id), external_ref (não code), total_cents (não total).

A mesma spec foi enviada pro Claude Code em dois cenários: sem Boost e com Boost.

Sem Boost:

  • O agente assumiu User::find() no controller — campo errado.
  • Importou App\Filament\Resources\OrderResource — namespace inventado, o projeto usa App\Filament\Admin\Resources\OrderResource.
  • Gerou validation rules com total ao invés de total_cents.
  • Esqueceu o coupons belongsToMany porque o nome do método no model é appliedCoupons().
  • Resultado: 4 bugs no primeiro try, dois php artisan migrate revertidos, ~14 mil tokens de output, ~22 minutos contando ida e volta de erro.

Com Boost:

  • Antes de qualquer código, o agente chamou Database Schema na tabela orders e Application Info pra pegar versões.
  • Identificou customer_id, total_cents, foreign keys com cascade.
  • Chamou Search Docs com "Filament 4 RelationManager" e veio o snippet certo.
  • Listou as routes com List Routes antes de gerar Route::resource() (não duplicou).
  • Resultado: zero bug funcional no primeiro try (passou no pest), ~9 mil tokens de output (parte porque ele leu menos arquivo bruto), ~11 minutos.

Os ~5 mil tokens a menos não são tudo. O ganho real é o tempo que tu não gasta lendo stacktrace de coisa que nunca devia ter saído errada.

Boost, Laravel MCP e Laravel AI SDK

Confusão comum: o time Laravel lançou três coisas com nome parecido em meses próximos. O próprio anúncio deixou claro:

  • Laravel Boost — ajuda o agente a escrever Laravel melhor pra ti (dev tool, dev-dependency).
  • Laravel MCP — expõe tua app pra clientes externos (ChatGPT, Claude Desktop) via MCP. Tools, Resources, Prompts.
  • Laravel AI SDK — kit pra construir features de IA pros teus usuários (agents, streaming, embeddings, multi-provider).

Boost é o único que vive no --dev e nunca vai pra produção.

O que muda no fluxo de SDD

Spec-Driven Development já era a forma sã de trabalhar com agente: escreve a spec, gera o código contra a spec, valida o resultado contra a spec. O gargalo sempre foi a etapa do meio — "gera o código" — onde o agente entregava coisa sintaticamente válida mas semanticamente desalinhada com o app real.

Boost fecha esse gap. A spec descreve a intenção do produto; o Boost descreve a realidade do código. O agente trabalha na interseção dos dois.

Na prática, a revisão muda de natureza. Tu deixa de revisar "isso compila? esse campo existe? esse namespace está certo?" e passa a revisar "isso é o produto que eu queria? a lógica de negócio está correta? a UX faz sentido?". Sobe um andar na pirâmide.

É o tipo de troca de fluxo que a gente discute toda semana na Beer and Code, a melhor comunidade de AI engineering em português, com grupo no WhatsApp aberto pra quem está construindo IA em produção — tem dev Laravel, Python e engineer de IA brasileiro trocando o que funciona e o que ainda dói.

Limitações e pontos de atenção

Boost não é mágica e tem ponta áspera:

  • Versionamento por major. A documentação semântica está chunked por versão major. Se tu está num minor problemático (ex: 11.43), o conteúdo retornado é do "11.x" genérico — pode pegar uma API ainda não disponível ou já depreciada dentro do major.
  • Cada tool call custa input token. O agente pode encadear 5 a 8 chamadas antes de gerar código. Em prompts curtos isso é irrelevante; em sessões longas, soma. Vale revisar log de uso se a fatura te preocupa.
  • Database Query é read-only por design. Bom pra segurança, mas o agente não roda migrations nem seeds via tool — ele te pede pra rodar.
  • Precisa boost:update quando atualizar pacote. Senão os guidelines ficam presos numa versão antiga do Filament/Livewire.
  • Não roda em produção. Bom porque é dev-only por design. Ruim se tu queria expor schema de stage pra um agente remoto — pra isso tu usa o Laravel MCP, não o Boost.

FAQ rápido

Funciona com Laravel 10 e PHP 8.1? Sim. Suporte oficial: Laravel 10/11/12/13 e PHP 8.1+. Versões mais antigas ficam de fora.

Posso usar com Cursor, Copilot ou Gemini CLI? Sim. O boost:install auto-detecta e configura. Lista oficial: Claude Code, Cursor, Codex, Gemini CLI, GitHub Copilot e Junie.

Posso adicionar guidelines pro meu pacote interno? Sim. Cria .ai/guidelines/<nome>.md (ou .blade.php) no projeto, ou — se for um package que tu mantém — adiciona em resources/boost/guidelines/core.blade.php dentro do package. O Boost carrega automático.

E pra package privado fora do Composer? Funciona desde que o package esteja instalado via path/VCS no projeto. O Boost lê do composer.lock pra montar a lista de ecossistema.

Conclusão

Laravel Boost é a primeira vez que o time Laravel responde formalmente à pergunta "como o meu framework conversa com o agente do dev?". E a resposta é elegante: não muda o framework, dá ao agente uma janela direta pro estado da aplicação.

O efeito prático é que a gente vai parar de tratar agente como "júnior que precisa de supervisão constante" e começar a tratar como "par com acesso ao banco" — o que muda o tipo de tarefa que faz sentido delegar. Não é hype. É infraestrutura.

Próximo passo: instala num projeto teu (de preferência um que tu conheça bem) e roda uma feature do zero com o agente. Compara com a última vez que tu fez parecido sem Boost. A diferença não é sutil.

Lucas Souza
Lucas Souza

{AI Engineer} — apaixonado por Laravel, arquitetura de software e construir produtos com impacto. Compartilho aqui tutoriais, descobertas e reflexões sobre o dia a dia de engenharia.

Você também pode gostar

Ferramentas de IA para dev backend: top 12 testadas em 90 dias de Laravel real
Notícias

Ferramentas de IA para dev backend: top 12 testadas em 90 dias de Laravel real

Review longa e opinada de 12 ferramentas de IA pra dev backend, depois de 90 dias rodando num Laravel real em produção. Nota 0-10, veredito em uma linha, e 5 que viralizaram mas não cumpriram.

· 15 min
Laravel Auto CRUD Generator: Automatize CRUD no Laravel
Pacotes

Laravel Auto CRUD Generator: Automatize CRUD no Laravel

O Laravel Auto CRUD Generator, desenvolvido por Abdelrahman Muhammed, automatiza operações CRUD no Laravel. Com um comando, detecta modelos, gera controladores, rotas, validações e mais, seguindo boas práticas. Inclui opções como cURL e Postman para APIs, ideal para agilizar projetos com qualidade.

· 5 min
SDD do zero em Laravel: transformando uma feature real em specification executável
Tutoriais

SDD do zero em Laravel: transformando uma feature real em specification executável

Vibe coding com agente em Laravel funciona até a feature ter regra de negócio. Aí o agente inventa. Spec-Driven Development resolve isso virando a especificação na fonte da verdade. Neste post a gente percorre o ciclo PRD, spec, plan, tasks, código e testes em uma feature aparentemente boba: exportar relatório de vendas em PDF. Stack PHP, Claude Code e Spec Kit, do zero.

· 8 min
Como alcancei pontuações quase perfeitas no Google Lighthouse em um blog feito com Laravel / Filament
Tutoriais

Como alcancei pontuações quase perfeitas no Google Lighthouse em um blog feito com Laravel / Filament

Veja como consegui atingir pontuações acima de 90 no Google Lighthouse, melhorando drasticamente o desempenho dos meus sites e proporcionando uma experiência excepcional para os usuários.

· 7 min

VirguIA

beer & code assistant

conectando…

Não foi possível iniciar o chat agora.

tocando