O que realmente é preciso para expor uma API REST como servidor MCP em PHP: o SDK, uma ferramenta que funciona e a parte que decide se um agente a usa direito.
Um servidor que funciona é onde o esforço termina e a venda começa. Aponte o MCP Showcase para ele e tenha um playground ao vivo que seus clientes podem experimentar, com documentação gerada para cada ferramenta.
Mostrado acima, junto com a informação de ser mantido oficialmente ou ser um projeto da comunidade, o que pesa mais em algumas linguagens do que em outras.
Comece com uma única ferramenta, não com toda a sua API. As definições de ferramentas são enviadas ao modelo a cada requisição, e o acerto na escolha cai conforme a lista cresce.
Passe a URL publicada pelo MCP Inspector para confirmar que o handshake completa e que as ferramentas aparecem como você pretendia.
composer require ... — community SDKs,
um projeto da comunidade: não há SDK sob
modelcontextprotocol para PHP.
Isso pesa mais do que parece. O protocolo andou rápido, principalmente em transportes, e um port que parou de acompanhar revisões da especificação vai funcionar com alguns clientes e falhar em silêncio com outros. Confira a última revisão que a biblioteca acompanhou antes de construir sobre ela.
Servidores MCP mantêm uma sessão; o modelo usual do PHP, uma execução por requisição, não mantém. Um servidor MCP em PHP roda, portanto, como um processo de longa duração (ou por um framework feito para isso), e isso é um desvio maior da implantação normal de PHP do que o próprio protocolo.
Um servidor MCP é uma camada fina sobre código que você já tem. Cada ferramenta precisa de três coisas: um nome, uma descrição dizendo o que ela faz e quando escolhê-la, e um esquema de entrada. O SDK de PHP cuida do protocolo; o que você escreve é o mapeamento desses argumentos para a sua chamada HTTP existente.
Comece por um endpoint em vez de toda a sua API. As definições de ferramentas são reenviadas ao modelo a cada requisição, então cada uma é um custo de contexto permanente, e o acerto do modelo ao escolher cai conforme a lista cresce. Oito ferramentas bem descritas valem mais que oitenta.
Seja qual for a linguagem, são as descrições que decidem se o agente se comporta. Elas são lidas pelo modelo, não pelos seus colegas, e uma ferramenta descrita em três palavras é chamada no chute. Você pode conferir as suas com o linter de esquemas MCP e ver quanto a lista custa por requisição com a calculadora de tokens.
Depois que ele roda, resta o problema de ninguém conseguir dizer o que ele faz. Um prospect não consegue ler o seu código PHP e não vai instalar um cliente para descobrir. O MCP Showcase aponta para a mesma URL e produz um playground ao vivo com documentação gerada para cada ferramenta, para que avaliar o seu servidor custe um clique.