Um servidor MCP com seis ferramentas pode descrevê-las todas ao modelo em cada turno. Com cem ferramentas, a mesma estratégia transforma schemas que quase nunca serão usados em custo fixo de contexto. O Laravel MCP 1.0 respondeu a esse problema com dois recursos simples: pesquisar o catálogo e executar chamadas em lote.
O problema cresce antes da primeira chamada
Nome, descrição e schema de argumentos de cada ferramenta entram no contexto para que o modelo saiba o que pode chamar. Isso consome tokens e aumenta o espaço de decisão mesmo quando a resposta só precisa de uma operação. Segundo os testes publicados pela equipe, o catálogo direto cresceu de 5.843 bytes com dez tools para 58.585 bytes com cem.
Na descoberta progressiva, o servidor expõe inicialmente search_tools e execute_tools. O primeiro faz busca lexical determinística em nome, descrição e schema. O segundo executa uma ou várias ferramentas selecionadas. O payload inicial ficou em 1.431 bytes nos cenários de dez a cem tools, uma redução reportada entre 75,5% e 97,6%.
Por que busca JSON venceu geração de código
A equipe experimentou permitir que o modelo escrevesse PHP para localizar e combinar ferramentas. O poder era atraente, mas executar código gerado exige sandbox de verdade. Sem isolamento, o risco é óbvio; com isolamento, a infraestrutura deixa de ser trivial.
Uma linguagem restrita também não resolveu: modelos treinados para produzir PHP escreviam construções que o subconjunto não aceitava. A API baseada em JSON sacrifica loops, condições e dependências entre resultados, mas oferece comportamento previsível e validação simples.
{
"queries": ["buscar pedido", "emitir reembolso"],
"limit": 5
}
Depois da busca, chamadas independentes podem ser agrupadas em execute_tools. A execução em lote reduz ida e volta, mas não é um workflow engine: se a segunda ferramenta depende da saída da primeira, o modelo ainda precisa observar o resultado e fazer outra chamada.
Quando vale ativar
O próprio relato coloca a faixa de dez a quinze ferramentas como ponto em que o ganho começa a aparecer. Abaixo disso, expor tools diretamente costuma ser mais simples e evita uma etapa de descoberta. Acima disso, o catálogo pesquisável reduz contexto e pode melhorar a escolha ao mostrar apenas opções próximas da intenção.
- Use exposição direta em servidores pequenos e especializados.
- Considere catálogo pesquisável quando o conjunto cresce ou reúne vários domínios.
- Escreva nomes e descrições que funcionem bem em busca lexical, incluindo os termos usados pela equipe.
- Meça taxa de acerto, chamadas extras e tokens; economia de schema não garante melhor resultado.
A ideia maior é divulgação sob demanda
A solução do Laravel MCP é menos sobre PHP e mais sobre desenho de interface para agentes. Nem toda capacidade precisa ocupar o contexto o tempo inteiro. Um índice compacto pode revelar detalhes quando a tarefa pede, assim como documentação, memória e arquivos são carregados sob demanda.
Há um preço: o agente precisa descobrir antes de executar. Em catálogos grandes, esse turno adicional pode ser menor que o custo de reenviar dezenas de schemas e pedir ao modelo que escolha no meio do ruído. Em catálogos pequenos, é cerimônia. A boa decisão vem do tamanho e do padrão real de uso, não de ativar a novidade por padrão.
