Comprendre MCP

MCP ou API REST : quelle différence, et lequel choisir ?

Le Model Context Protocol (MCP) et une API REST donnent tous deux accès aux données d’un logiciel, mais pas au même lecteur : l’API REST s’adresse à du code écrit par un développeur, MCP à un assistant IA qui découvre seul ce qu’il peut faire. Cette page explique la différence entre MCP et API REST sans raccourci, corrige l’idée reçue la plus répandue sur le sujet, et montre comment Ondes PRO fait reposer son serveur MCP sur son API v1.

L’équipe Ondes PROMis à jour le
.ondes.pro/mcp/

Tapez le nom de votre espace : les configurations de cette page s’adaptent. Il est retenu dans ce navigateur seulement.

Quelle est la différence entre MCP et une API REST ?

Une API REST expose des ressources (commandes, factures, produits) derrière des URL et des verbes HTTP. Le développeur lit la documentation, choisit les appels, écrit le code qui les enchaîne et gère les erreurs. Tout est décidé à l’avance : le programme fait exactement ce qu’on lui a dit de faire, des milliers de fois par jour s’il le faut.

Un serveur MCP expose des outils décrits en langage naturel, avec un schéma de paramètres. Un client MCP (Claude, Cursor, Visual Studio Code…) se connecte, récupère la liste des outils, et c’est le modèle qui décide, au fil de la conversation, lequel appeler et avec quels arguments. Le « code d’intégration » n’est plus écrit à l’avance : il est composé à la volée à partir de votre demande.

Autrement dit, la différence entre MCP et une API ne tient pas au transport — les deux passent par HTTP — mais à qui lit la description et qui décide de l’enchaînement. REST suppose un humain qui code ; MCP suppose un modèle qui raisonne. C’est pour cela que les deux ne s’opposent pas : ils répondent à deux usages différents.

MCP et API REST, critère par critère

Les mêmes critères des deux côtés, appliqués au cas d’Ondes PRO.

CritèreAPI REST (Ondes PRO API v1)Serveur MCP (Ondes PRO)
Lecteur viséDu code écrit par un développeurUn assistant IA, au fil d’une conversation
Ce qui est exposéEnviron 135 ressources, chacune avec ses URL et ses verbes8 outils stables, qui donnent accès à ces mêmes ressources
DécouverteDocumentation, schéma OpenAPI 3.1 et explorateur dans l’administrationLe client liste les outils à la connexion ; ondes_guide et ondes_ressource servent la documentation à la demande
Enchaînement des appelsDécidé à l’avance, dans le codeDécidé par le modèle selon la demande
AuthentificationClé API à portées, JWT ou sessionOAuth 2.1 avec PKCE, ou la même clé API
Écritures sans risqueJumeaux /api/v1/test/… et en-tête Idempotency-KeyMode test par défaut, simuler: true, idempotence posée automatiquement
État côté serveurAucun : chaque requête porte son identitéAucun : pas de Mcp-Session-Id, chaque appel est autonome
Idéal pourSynchronisations, sites, traitements répétitifs et volumineuxQuestions ponctuelles, actions multi-modules, aide au développement

Comparaison établie le 21 octobre 2026 sur une instance Ondes PRO.

« MCP stateful, REST stateless » : une idée reçue à corriger

Beaucoup de comparatifs résument la différence entre MCP et API REST par une formule : REST serait sans état, MCP avec état. C’était une lecture possible des premières versions du protocole, qui prévoyaient une poignée de main initialize et un identifiant de session facultatif. Ce n’est plus une description juste.

La spécification MCP du 28 juillet 2026 rend le protocole explicitement sans état : plus d’échange initialize, plus d’en-tête Mcp-Session-Id, chaque requête se suffit à elle-même. Dans les versions précédentes déjà, le transport Streamable HTTP laissait au serveur le choix d’ouvrir une session ou non.

Le serveur MCP d’Ondes PRO a fait ce choix dès le départ : il n’émet aucun identifiant de session et ne garde rien en mémoire entre deux appels. Une requête GET sur son adresse répond 405, comme la spécification le permet pour un serveur qui n’ouvre pas de flux. Il annonce aujourd’hui les versions de protocole 2025-06-18, 2025-03-26 et 2024-11-05 ; son fonctionnement sans session correspond déjà au modèle retenu par la suite.

Le vrai critère n’est donc pas l’état, mais l’interlocuteur. Si vous lisez « il faut REST pour la scalabilité, MCP garde des sessions », vérifiez de quelle version du protocole parle l’auteur.

MCP va-t-il remplacer les API REST ?

Non, et la façon dont la plupart des serveurs MCP sont construits le montre : un outil MCP finit presque toujours par appeler une API. MCP est une couche de description et de découverte pensée pour les modèles de langage ; il ne remplace ni le transport, ni la logique métier, ni les contrôles d’accès qui vivent derrière l’API.

Une API REST reste irremplaçable dès qu’un traitement doit être déterministe : synchroniser un catalogue chaque nuit, afficher le stock sur un site, recevoir un webhook à chaque paiement. Personne ne veut qu’un modèle « décide » de la manière d’importer 5 000 commandes. À l’inverse, écrire du code pour répondre une fois à « quelles factures de Studio Nord sont en retard ? » serait disproportionné : c’est exactement ce que MCP rend immédiat.

Quand utiliser l’API REST

  • Votre site ou votre application affiche des produits, prend des commandes ou crée des comptes : le code doit se comporter pareil à chaque visite.
  • Des synchronisations planifiées : export comptable, import de catalogue, mise à jour de stock depuis un autre logiciel.
  • Des événements : recevoir un webhook signé quand une commande est payée ou qu’une facture est émise — voir l’API REST d’Ondes PRO.
  • Du volume : pagination par curseur, fields pour ne rapatrier que les colonnes utiles, quotas annoncés dans les en-têtes X-RateLimit-*.

Quand utiliser MCP

  • Une question ponctuelle sur vos données, posée en français à votre assistant : « Combien de suspensions Laiton reste-t-il ? »
  • Une action qui traverse plusieurs modules : préparer un devis, créer la carte Kanban correspondante et bloquer un créneau, en une seule demande.
  • L’écriture du code d’intégration elle-même : un assistant de développement connecté au serveur lit la documentation exacte de votre espace pendant qu’il code l’appel REST.
  • Un accès sans développeur : un gérant colle l’adresse de son espace dans Claude et travaille, sans écrire une ligne.

Chez Ondes PRO, MCP s’appuie sur l’API v1

Le serveur MCP n’est pas une seconde porte d’entrée avec ses propres règles. L’outil ondes_appeler rejoue la requête sur la vue réelle de l’API v1 : mêmes contrôles de permission, mêmes portées de clé, mêmes quotas, même idempotence, même cloisonnement entre sociétés, mêmes messages d’erreur structurés. Aucune ligne de contrôle n’est réécrite côté MCP, donc aucune ne peut diverger.

La documentation suit le même principe. Les outils ondes_guide, ondes_chercher et ondes_ressource servent, section par section, le guide engendré depuis les routes réelles de votre espace — celui que lit un développeur dans l’administration. Le contexte permanent du serveur pèse environ 2 700 tokens, là où l’ancien fichier de documentation qu’on copiait dans les dépôts en pesait 44 000, et devenait faux dès qu’il était copié.

Conséquence pratique : ce que votre assistant fait par MCP, votre code peut le refaire par REST à l’identique, et inversement. Les appels passés par MCP figurent d’ailleurs dans le même journal que les appels REST, marqués « MCP ».

Le même appel, par les deux chemins

Lister les factures en retard. D’abord la requête qu’écrit un développeur ; ensuite la même, passée par l’assistant, qui appelle l’outil ondes_appeler, qui exécute cette même requête.

bash
# API REST : appelée par votre code
curl "https://votre-espace.ondes.pro/api/v1/billing/factures/?statut=en_attente&date_echeance__lt=2026-10-21" \
  -H "Authorization: ApiKey opk_…"

# MCP : appelé par l'assistant (requête JSON-RPC envoyée par le client)
curl -X POST "https://votre-espace.ondes.pro/mcp/" \
  -H "Authorization: Bearer <jeton OAuth>" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
       "params":{"name":"ondes_appeler",
                 "arguments":{"chemin":"billing/factures",
                              "params":{"statut":"en_attente","date_echeance__lt":"2026-10-21"}}}}'

En pratique, vous n’écrivez jamais la seconde requête : votre client MCP s’en charge.

MCP au service du code REST

Le scénario le plus parlant pour un développeur : il code une intégration REST, et son assistant, connecté au serveur MCP, vérifie chaque route au lieu de la deviner.

Claude Code · Exemple de conversation · données de démonstration (Atelier Lumen)
  1. Vous : Le site d’Atelier Lumen doit envoyer son propre e-mail de confirmation quand une commande est payée. Écris le récepteur de webhook en Python.
  2. Outil MCP : ondes_chercher Cherche « webhook » : la ressource developer/abonnements et la section du guide sur les événements signés.
  3. Outil MCP : ondes_exemple Récupère la recette « s’abonner aux événements », vérifiée contre l’API réelle.
  4. Outil MCP : ondes_impossible Vérifie qu’aucune route ne renvoie un secret déjà créé : il n’est montré qu’à la création.
  5. Assistant : Voici le récepteur : il vérifie l’en-tête Ondes-Signature (HMAC-SHA256 de l’horodatage et du corps), refuse un horodatage trop ancien, puis traite l’événement commande.payee. Le secret s’affiche une seule fois à la création de l’abonnement : je l’ai mis en variable d’environnement. Je valide d’abord la création de l’abonnement par une simulation, sans rien écrire ?

Sécurité : MCP est-il moins sûr qu’une API ?

Le protocole n’est ni plus ni moins sûr qu’une API : tout dépend de ce que le serveur autorise. Le risque propre à MCP tient à l’autonomie du modèle — il peut enchaîner des appels que personne n’a relus. C’est pourquoi les garde-fous d’Ondes PRO sont dans le serveur : écritures en mode test par défaut quand la ressource a un jumeau, simulation, plan à confirmer pour l’assistant intégré, et annonce systématique du mode employé.

Côté identité, une connexion OAuth agit avec vos droits complets, pendant une heure par jeton, et se révoque immédiatement ; une clé API garde ses portées limitées, que vous l’utilisiez en REST ou en MCP. Le détail est sur la page sécurité du serveur MCP.

Pour aller plus loin

Questions fréquentes

Quelle est la différence entre MCP et une API ?

Une API REST expose des ressources que du code appelle selon un enchaînement écrit à l’avance. MCP expose des outils décrits en langage naturel qu’un assistant IA découvre et choisit lui-même pendant la conversation. Les deux passent par HTTP ; la différence est l’interlocuteur.

MCP est-il un protocole avec état ?

Plus maintenant. La spécification du 28 juillet 2026 supprime la poignée de main initialize et l’identifiant de session : le protocole est sans état. Le serveur d’Ondes PRO n’ouvrait déjà aucune session auparavant.

MCP va-t-il remplacer les API REST ?

Non. La plupart des serveurs MCP appellent une API derrière leurs outils. L’API reste la bonne réponse pour tout traitement répétitif et déterministe ; MCP ajoute une couche pensée pour les assistants IA.

Faut-il une clé API pour utiliser le serveur MCP d’Ondes PRO ?

Non. La connexion par défaut passe par OAuth : votre client ouvre une fenêtre de votre espace et vous vous connectez. Une clé API reste possible quand vous voulez limiter l’accès à certaines portées.

Quelle différence entre MCP et RAG ?

Le RAG recherche des passages de documents pour enrichir une réponse. MCP donne à l’assistant des outils pour interroger un logiciel et y agir. Un serveur MCP peut servir de la documentation, comme le fait ondes_guide, mais il sert surtout à lire des données à jour et à exécuter des actions.

Peut-on utiliser l’API REST et le MCP en même temps ?

Oui, et c’est l’usage prévu. Le serveur MCP d’Ondes PRO rejoue ses appels sur l’API v1 : mêmes droits, mêmes quotas, même journal. Votre site parle à l’API, votre assistant parle au MCP, et les deux voient les mêmes données.

Le serveur MCP et l’API sont-ils inclus dans l’abonnement ?

Oui, les deux sont inclus dans toutes les offres Ondes PRO, de l’Essentiel à l’Entreprise. Voir les tarifs.

Branchez votre IA sur votre entreprise

Le serveur MCP est inclus dans toutes les offres, sans option ni supplément.

À lire aussi

Claude, Claude Code et Claude Desktop sont des marques d’Anthropic, PBC ; Cursor est une marque d’Anysphere, Inc. ; Visual Studio Code et Microsoft sont des marques du groupe Microsoft ; GitHub et GitHub Copilot sont des marques de GitHub, Inc. ; ChatGPT et OpenAI sont des marques d’OpenAI ; Windsurf est une marque de Cognition ; Zed est une marque de Zed Industries, Inc. ; JetBrains, Cline, Zapier, Make, n8n, Stripe et Model Context Protocol sont des marques de leurs titulaires respectifs. Ces noms sont cités uniquement pour indiquer une compatibilité ou établir une comparaison. Ondes PRO n’est ni affilié à ces sociétés, ni sponsorisé, ni approuvé par elles.