Skip to content

MCP Python SDK

Le SDK Python officiel pour construire des serveurs et clients Model Context Protocol, réécrit pour la spec du 2026-07-28.

Avis de Sheela · Mis à jour

Voir sur GitHub Open source

Notre note

4.4/5

La manière spec-first de construire du MCP en Python ; la version 2 est plus propre, et elle casse chaque import v1 au passage.

Qu’est-ce que MCP Python SDK ?

Le Model Context Protocol (MCP) est une manière standard pour les applis IA de se connecter à des outils et des données. Ceci est le SDK Python officiel pour écrire des serveurs MCP (qui exposent des outils) et des clients (qui les utilisent). Il y a aussi un SDK TypeScript officiel, plus des SDK Go et C#.

La version 2.0 est sortie le 28 juillet 2026 aux côtés de la révision de spec 2026-07-28. La classe FastMCP a été renommée MCPServer, un seul objet Client a remplacé l'ancien empilement de sessions, et le transport WebSocket a été retiré. Les serveurs répondent encore aux anciens clients.

La ligne 1.x est en mode maintenance avec correctifs de sécurité uniquement.

MCP Python SDK vaut-il le coup ?

Ceci est l'implémentation Python de référence du Model Context Protocol, et elle suit la spec avant tout le monde. La version 2.0 est sortie le 28 juillet 2026 aux côtés de la révision de spec 2026-07-28 et sert à la fois cette révision et 2025-11-25 à la fois, si bien qu'un serveur v2 répond encore aux anciens clients sans rien à configurer. La dernière version est v2.3.0, du 2 octobre 2026.

La migration est le coût. FastMCP est devenu MCPServer, le chemin du module a bougé, get_context() a disparu, les réglages de transport sont passés du constructeur à run(), et le Server bas niveau a été reconstruit autour d'arguments de constructeur au lieu de décorateurs. Les anciens chemins ont été retirés plutôt que dépréciés. Le transport WebSocket, jamais dans la spec, a disparu, tout comme l'API Tasks expérimentale. La ligne 1.x reste en maintenance avec correctifs de sécurité, mais aucune date de fin n'est publiée ; épingler mcp>=1.28,<2 est le schéma d'attente documenté.

Le travail de sécurité a été lourd. Le dépôt a publié 12 avis, dont un bug de forte sévérité où les sessions Streamable HTTP n'étaient jamais récupérées par défaut (corrigé en 1.30.0 et 2.2.0) et une vérification de jeton bearer qui acceptait des jetons émis pour un serveur de ressources différent. Quiconque fait tourner un serveur HTTP sur 2.0 ou 2.1 devrait mettre à niveau.

Le projet FastMCP autonome, désormais à v4.1.3 sous PrefectHQ, a environ 28 200 étoiles contre les 24 700 de ce SDK et superpose davantage de commodités. Le SDK officiel est le choix plus épuré là où le comportement exact de la spec compte plus que les extras.

Là où il fait la différence

  • Un développeur backend qui expose une API interne adossée à Postgres à Claude et d'autres clients MCP

    Livrer un serveur MCP que l'équipe de sécurité validera

    Écrivez les outils comme des fonctions décorées sur MCPServer, faites-le tourner via Streamable HTTP derrière votre auth, et restez sur 2.2.0 ou ultérieur pour les correctifs de récupération de session et d'audience de jeton. Un premier serveur fait quelques dizaines de lignes.

  • Une équipe plateforme qui maintient dix serveurs MCP v1

    Planifier le passage à v2 sans casser les clients

    Épinglez mcp>=1.28,<2 pour garder les correctifs de sécurité, puis migrez un serveur à la fois en utilisant la liste avant-après du guide de migration. Comme la v2 sert les deux révisions de spec, les clients n'ont pas besoin de changer en même temps.

  • Un responsable d'ingénierie qui choisit une pile MCP Python pour un nouveau produit

    Décider entre le SDK officiel et FastMCP

    Le SDK officiel est MIT, maintenu par le projet MCP et suit la spec en premier ; FastMCP ajoute plus de piles par-dessus. L'un ou l'autre est gratuit, si bien que le choix porte sur la fidélité à la spec contre la commodité et le turnover de mise à niveau.

Avant de vous engager

Mise en route
uv add "mcp[cli]" ou pip install "mcp[cli]" sur Python 3.10+ ; uv run mcp run server.py --transport streamable-http démarre un serveur. Un outil décoré et un premier appel prennent quelques minutes.
Intégrations
Fonctionne avec n'importe quel client MCP, y compris les applis Claude et les frameworks d'agents ; livre un Client pour appeler les serveurs via stdio ou Streamable HTTP, et des SDK sœurs existent en TypeScript, Go et C#. Les types de fil vivent dans un paquet mcp-types séparé.
Données et confidentialité
Une bibliothèque : elle n'envoie rien nulle part elle-même. Votre serveur voit tout ce que ses outils peuvent atteindre, si bien que l'authentification et le cadrage sont votre travail. 12 avis publiés, dont la fuite de session via Streamable HTTP et un client qui récupérait des URL $ref choisies par le serveur pendant la validation de schéma.
Coût à grande échelle
Gratuit sous MIT. Héberger un serveur est de l'hébergement web Python ordinaire ; les requêtes de l'ère 2026 ne portent pas de session, ce qui retire le routage par session collante du problème d'hébergement.
Limites
Environ 370 issues ouvertes. Sur les connexions de l'ère 2026, les requêtes initiées par le serveur ont disparu, si bien que ctx.elicit() échoue et Resolve(...) le remplace ; roots, sampling et la journalisation de protocole sont dépréciés, et ping est retiré.

Les points forts

  • Premier à implémenter les nouvelles révisions de spec
  • Les serveurs v2 répondent aux clients 2026-07-28 et 2025-11-25
  • Décorateurs pour outils, ressources et prompts sur MCPServer
  • Transports stdio, Streamable HTTP et SSE

Les points faibles

  • La v2 a retiré les chemins d'import v1 d'emblée
  • Transport WebSocket et API Tasks abandonnés
  • 12 avis de sécurité ; 2.0 et 2.1 ont besoin d'une mise à niveau
  • Moins d'extras que le FastMCP autonome

Idéal pour

Les développeurs Python qui construisent des serveurs ou clients MCP et veulent l'implémentation officielle qui suit la spec.

Alternatives à MCP Python SDK

MCP Python SDK : questions fréquentes

MCP Python SDK vaut-il le coup ?
La manière spec-first de construire du MCP en Python ; la version 2 est plus propre, et elle casse chaque import v1 au passage. Nous lui donnons 4.4 sur 5.
Combien coûte MCP Python SDK ?
Gratuit et open source sous la licence MIT.
Quels sont les inconvénients de MCP Python SDK ?
La v2 a retiré les chemins d'import v1 d'emblée; transport WebSocket et API Tasks abandonnés; 12 avis de sécurité ; 2.0 et 2.1 ont besoin d'une mise à niveau; moins d'extras que le FastMCP autonome.
À qui s’adresse MCP Python SDK ?
Les développeurs Python qui construisent des serveurs ou clients MCP et veulent l'implémentation officielle qui suit la spec.
Combien coûte MCP Python SDK pour une équipe ou en production ?
Gratuit sous MIT. Héberger un serveur est de l'hébergement web Python ordinaire ; les requêtes de l'ère 2026 ne portent pas de session, ce qui retire le routage par session collante du problème d'hébergement.
MCP Python SDK est-il sûr pour les données de l’entreprise ?
Une bibliothèque : elle n'envoie rien nulle part elle-même. Votre serveur voit tout ce que ses outils peuvent atteindre, si bien que l'authentification et le cadrage sont votre travail. 12 avis publiés, dont la fuite de session via Streamable HTTP et un client qui récupérait des URL $ref choisies par le serveur pendant la validation de schéma.
Quelles sont les meilleures alternatives à MCP Python SDK ?
Les alternatives les plus proches que nous avons testées sont OpenAI Agents SDK et Pydantic AI.

Réponses vérifiées le 23 oct. 2026.