La parole est aux speakers : Amaury Bouchard

Publié le

Jusqu’au Forum PHP 2026, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

Sous le capot du protocole MCP : codons un serveur en PHP pur

Le Model Context Protocol (MCP) est devenu en un an le standard pour donner des outils aux agents IA. Au Forum PHP 2025, Edouard Courty nous a montré comment l'intégrer dans une application Symfony via son bundle. Depuis, beaucoup a changé : ce bundle est officiellement déprécié, Symfony a publié son propre symfony/mcp-bundle, et un SDK PHP officiel mcp/sdk est en cours de stabilisation, fruit d'une collaboration entre la PHP Foundation et le projet Symfony.

Dans cet écosystème en mouvement, maîtriser le protocole lui-même devient un avantage concret : pour choisir le bon outil, pour intégrer MCP à un projet existant qui n'est pas en Symfony, ou simplement pour ne pas dépendre d'une abstraction qui peut changer demain.

Durant ce talk, nous construirons un serveur MCP en PHP pur, sans framework, en environ 300 lignes de code. Nous décortiquerons le protocole couche par couche : JSON-RPC 2.0, transport Streamable HTTP, cycle de vie (initialize, discovery, operation), et les trois primitives fondamentales (tools, resources, prompts).

Pour rendre la démonstration concrète, le serveur sera branché sur une instance WordPress existante. Nous verrons l'IA explorer les articles publiés, terminer un brouillon en suivant le style de l'auteur, et réécrire un post dans le style d'un personnage de fiction, en direct. Tout cela sans ajouter une seule dépendance lourde au projet WordPress.

À la sortie, vous saurez ce que les SDK et bundles font pour vous, ce que vous pouvez faire vous-mêmes, et comment ajouter une couche MCP à n'importe quelle application PHP existante, quel que soit son framework (ou son absence de framework).

Alice Recoque - ABCDEF
08/10/2026
15:20-16:00

Le monde des agents IA bouge à une vitesse folle depuis deux ans. Aujourd'hui, à quel point le protocole MCP est-il réellement stable ?

En effet, nous vivons aujourd'hui dans un monde qui n'existait pas il y a encore peu de temps. Il y a deux ans, les gens qui utilisaient des agents de codage expérimentaient des choses qui bougeaient sans cesse. Aujourd'hui, les outils se sont stabilisés, et quand on parle aux devs qui viennent aux événements (AFUP Days, Forum PHP, meetups AFUP, etc.), il semble qu'une grande majorité a complètement intégré les agents à leurs outils de développement.

La stabilisation de cet écosystème a permis de sortir de l'expérimentation et d'arriver à de vrais outils de production. Que ce soit le protocole MCP et le format des fichiers AGENTS.md (gérés désormais par la Linux Foundation), le format des skills qui s'est stabilisé (sous la houlette d'Anthropic), les formats llms.txt et llms-install.md qui sont apparus et dont on va observer l'adoption, etc. On a parfois l'impression que ça part un peu dans tous les sens, mais c'est une industrie qui s'organise. Il y aura encore des changements, des ajouts, des évolutions, c'est certain. Mais l'une des choses qui joue en faveur d'une certaine stabilisation, c'est que ces formats véhiculent du texte en anglais (ou même en français si vous le souhaitez), que les agents comprennent et interprètent. De telles instructions restent intelligibles même si les formats techniques évoluent, et on peut espérer que les clients sauront continuer à comprendre les formats actuels, même lors d'évolutions de protocoles.

Au niveau du protocole MCP, il y a eu des évolutions cassantes, et encore récemment : la version du 28 juillet 2026 a apporté des nouveautés (cœur de protocole stateless, Multi Round-Trip Requests, routage par en-têtes…) et a supprimé des éléments au lieu de les déprécier (handshake initialize, en-tête Mcp-Session-Id) ; mais en même temps elle a introduit, pour l'avenir, une politique formelle de dépréciation.

Avec l'arrivée d'un SDK PHP officiel, y a-t-il encore un intérêt à développer son propre serveur MCP ?

Pour répondre de manière stricte, on va développer plein de serveurs MCP en utilisant le SDK officiel. On va juste éviter d'écrire notre propre gestion du protocole.

Mais c'est comme pour n'importe quel protocole, on fait du meilleur travail quand on comprend ce qui se passe en-dessous. On peut faire du développement web sans rien comprendre au protocole HTTP ; mais il vaut mieux savoir ce qu'est un en-tête HTTP ou un cookie, sinon il y a des moments où on fera des choix sous-optimaux (pour ne pas dire de mauvais choix). On n'a pas forcément besoin de développer un serveur HTTP basique pour comprendre comment ça marche, mais ceux qui le font acquièrent une compréhension en profondeur.

Autre élément qui joue en faveur de l'exercice : depuis la révision du 28 juillet 2026, une requête MCP est un simple POST HTTP autoportant, sans handshake ni session à conserver. C'est exactement le modèle d'exécution de PHP. Le protocole s'est rapproché de nos habitudes, et écrire son propre serveur MCP est aujourd'hui bien plus facile qu'avant.

Il ne faut pas oublier que le SDK officiel n'est pas encore publié en version stable. J'ai vu plusieurs projets autour de moi qui avaient besoin d'un serveur MCP, et l'agent de codage utilisé par l'équipe en a fait un minimal qui répondait au besoin.

Que penses-tu du tooling AI dans l'écosystème PHP ?

Je pense qu'après un départ un peu lent, les choses se sont accélérées sur un axe précis : exposer et outiller des applications PHP pour des agents, plutôt que faire du machine learning en PHP.

De nombreux outils sont apparus : le SDK officiel mcp/sdk et ses intégrations (MCP Bundle, Laravel MCP), Symfony AI, Laravel Boost, etc. La plupart sont encore en 0.x, y compris le SDK officiel, ce qui dit bien où on en est. Mais surtout, l'outillage "classique" de PHP se révèle particulièrement adapté aux agents. PHPStan, Rector et Pest produisent un retour déterministe et lisible par une machine, ce qui donne à l'agent une boucle de vérification stricte. Des couches d'adaptation apparaissent d'ailleurs pour optimiser ces sorties à destination des agents. C'est là une vraie force de PHP.

Anecdote intéressante : David Soria Parra, co-créateur du protocole MCP, a été release manager de PHP 5.4 et 5.5 et contributeur de longue date au langage. Il est aujourd'hui lead maintainer de la spec.

Une conférence présentée par

Amaury BOUCHARD
Amaury BOUCHARD
Directeur technique chez Homunity, Amaury a été coordinateur de l'AFUP Paris dans les années 2010. Il a donné des conférences au Forum PHP, au PHP Tour, à l'AFUP Day et lors de meetups, ainsi que dans des universités et des écoles d'ingénieurs. Il a réalisé plusieurs projets open-source (framework Temma, outil de sauvegarde Arkiv, outil de déploiement Dispak…), et est l'auteur du blog De geek à directeur technique, du site PHP Way of Life, ainsi que du compte PHP Zen sur les réseaux sociaux.

Autres interviews