Pular para o conteúdo principal

Acesso MCP local

Recurso experimental no LaraEnv 0.5.7

O LaraEnv 0.5.7 inclui oito ferramentas MCP locais opcionais, entre elas laraenv_context, o prompt de diagnóstico e a integração de captura descritos abaixo. O MCP e o coletor de metadados Laravel ativado explicitamente continuam experimentais.

O MCP permite a um assistente compatível inspecionar e operar o ambiente LaraEnv já aberto na sua máquina. É uma conexão local opcional, separada das sessões de agentes.

Conecte um cliente​

  1. Abra o LaraEnv com sua conta habitual do Windows.
  2. Em Configurações → Experimental → Conectar assistentes ao LaraEnv, ative Acesso MCP local.
  3. Escolha Registrar para Claude Code, Codex ou Cursor e reabra esse cliente.
  4. Mantenha o LaraEnv aberto; a bandeja é suficiente.

O registro atualiza apenas a entrada LaraEnv do cliente e faz backup de uma configuração existente. Outras entradas são preservadas e arquivos inválidos ficam intactos. Ativar o acesso sozinho não registra clientes.

O processo stdio registrado encaminha chamadas para a interface em execução; não inicia outro conjunto de serviços. Use a mesma conta do Windows no LaraEnv e no cliente. Desative o acesso local para recusar novas conexões e cancelar comandos MCP ativos. Para outro cliente, copie o executável e os argumentos de um registro LaraEnv existente, incluindo mcp e o argumento --connection específico da instalação. As configurações mostram os caminhos dos arquivos dos clientes registrados.

Ferramentas​

FerramentaObjetivo
laraenv_projectListar e inspecionar projetos; escolher runtimes, SSL e proxy; pausar ou retomar o site.
laraenv_serviceInspecionar, iniciar, parar ou recarregar serviços locais.
laraenv_workerInspecionar e controlar servidores Dev, filas e crons salvos.
laraenv_execExecutar comandos Artisan, Composer ou npm no projeto, com progresso e cancelamento.
laraenv_logsLer saída recente de serviços, aplicação, workers e atividade MCP.
laraenv_dbListar, criar, gerar snapshot ou confirmar explicitamente a exclusão de bancos locais.
laraenv_diagInspecionar a configuração de projetos e medir uma requisição local.
laraenv_contextReunir contexto Laravel, logs, e-mails atribuídos, captura observada e integrações explícitas por projeto.

Liste projetos e serviços primeiro e use os nomes exatos retornados. Os comandos usam os runtimes efetivos de PHP e Node do checkout selecionado.

Comandos e scripts que alteram o ambiente exigem o campo de confirmação da ferramenta. Excluir um banco exige confirmação explícita. Comandos shell arbitrários e argumentos que redirecionam o escopo do projeto são recusados. Peça ao assistente para explicar operações relevantes antes de autorizá-las.

Pausar um projeto remove sua configuração de site e para Dev e fila, preservando arquivos e preferências. Retomar restaura o site; reinicie os processos de fundo explicitamente depois. A agenda dos crons salvos é gerenciada separadamente.

Escopo e atividade​

O MCP se limita à instância local. Não opera sessões SSH remotas. As ferramentas de banco usam os motores locais do LaraEnv; não resolvem credenciais arbitrárias da aplicação.

Comandos retornam saída limitada, estado de saída e duração; o cliente decide como mostrar progresso. As configurações incluem atividade MCP local e controles de acesso. Inspecionar a configuração não a corrige automaticamente; use o Site Doctor para correções individuais pela interface.

Contexto Laravel no LaraEnv 0.5.7​

A oitava ferramenta, laraenv_context, reúne setup/runtimes, logs e erros estruturados, captura histórica, mensagens Mailpit atribuídas ao projeto e presença do Boost. summary não inicia Laravel, Artisan, testes, scripts ou consultas SQL. logs lê o arquivo único e os logs diários válidos em storage/logs, com limites de quantidade e tamanho. A redação de segredos é uma tentativa: confira evidências antes de compartilhá-las.

mail_list e mail_read usam somente GET em 127.0.0.1:8025, sem proxy ou redirecionamento. Exigem marcas explícitas do projeto; não inferem propriedade pelo assunto ou endereço. A leitura raw preserva o estado de leitura. HTML, anexos, envio e exclusão não são expostos. Porta ou autenticação personalizada do Mailpit não é suportada.

O prompt diagnose_project recebe project. O recurso laraenv://projects/{project}/context retorna o mesmo resumo JSON pelo bridge stdio. Ausência de instrumentação aparece como indisponível; evidências antigas não comprovam captura ativa.

Instalação explícita e reversível​

  1. Consulte integration para revisar o provider PHP, a configuração e as instruções completas.
  2. install_integration com confirm:true cria app/Providers/LaraEnvContextServiceProvider.php e config/laraenv-context.php. Arquivos existentes diferentes são preservados. A ação não modifica .env, registra providers ou instala dependências.
  3. Depois de revisar no Git, registre o provider em bootstrap/providers.php no Laravel 12.
  4. Ative APP_ENV=local e LARAENV_CONTEXT_ENABLED=true localmente. Atualize o cache de configuração e reinicie workers pelo seu fluxo habitual.

A captura registra metadados de requests, operações de query, jobs, views, níveis de log e tipos de dump. Traces aleatórios separam execuções e tentativas de job; fingerprints permitem identificar queries repetidas. Não guarda SQL, bindings, corpos/valores de parâmetros HTTP, mensagens de log ou valores de dumps. O dumper anterior é preservado. Os dados ficam em storage/laraenv/context-YYYY-MM-DD.jsonl, por sete dias e até 2 MiB por dia. O custo de instrumentação é adicional. O coletor opcional continua experimental. O harness isolado foi validado com Laravel 12.58.0, PHP 8.5.10, Symfony Mime 7.4.9 e VarDumper 7.4.8, sem iniciar uma aplicação do usuário. Laravel 10, 11, 13 e Octane não foram validados e ficam fora do escopo verificado desta release.

O provider também adiciona X-LaraEnv-Project e a marca X-Tags às mensagens enviadas pela aplicação para atribuição no Mailpit. Essas marcas são conveniência local, não isolamento contra outros processos locais.

Para desativar, defina LARAENV_CONTEXT_ENABLED=false, atualize o cache e reinicie os processos duradouros. Para remover, retire o registro do provider e os dois arquivos revisados. A remoção de evidências antigas é uma ação separada; desativar preserva o histórico.

Laravel Boost​

guidelines mostra o texto; write_guidelines com confirm:true cria .ai/guidelines/laraenv.md sem sobrescrever conteúdo diferente. O Boost continua sendo um servidor de projeto separado. Após revisão, execute explicitamente o seu fluxo boost:install ou boost:update para atualizar a orientação dos agentes. O LaraEnv não reescreve AGENTS.md ou CLAUDE.md nessa ação.

Consulte também a documentação completa em inglês, a API Mailpit e as marcas do Mailpit.