Création de serveurs MCP en Python : guide de recherche et de scrape sur le Web

DEV - 26/10
Le Model Context Protocol (MCP) révolutionne la façon dont les assistants IA interagissent avec les données externes...

Le Model Context Protocol (MCP) révolutionne la façon dont les assistants IA interagissent avec les sources de données et les outils externes. Dans ce guide complet, nous explorerons comment créer des serveurs MCP en Python, avec des exemples pratiques axés sur les capacités de recherche et de scraping sur le Web.

Qu'est-ce que le protocole de contexte modèle ?

Model Context Protocol (MCP) est un protocole ouvert introduit par Anthropic pour standardiser la façon dont les assistants IA se connectent aux systèmes externes. Au lieu de créer des intégrations personnalisées pour chaque source de données, MCP fournit une interface unifiée qui permet :

  • Assistants IA (comme Claude, ChatGPT ou des applications LLM personnalisées) pour découvrir et utiliser des outils
  • Les développeurs doivent exposer les sources de données, les outils et les invites via un protocole standardisé
  • Intégration transparente sans réinventer la roue pour chaque cas d'utilisation

Le protocole fonctionne sur une architecture client-serveur où :

  • Les clients MCP (assistants IA) découvrent et utilisent des fonctionnalités
  • Les serveurs MCP exposent des ressources, des outils et des invites
  • La communication s'effectue via JSON-RPC sur stdio ou HTTP/SSE

Pourquoi créer des serveurs MCP en Python ?

Python est un excellent choix pour le développement de serveurs MCP car :

  1. Écosystème riche : les bibliothèques commedemandes,bellesoup4,sélénium, etdramaturgesimplifier le web scraping
  2. SDK MCP : SDK Python officiel (MCP) fournit une prise en charge robuste de la mise en œuvre du serveur
  3. Développement rapide : la simplicité de Python permet un prototypage et une itération rapides
  4. Intégration AI/ML : intégration facile avec des bibliothèques d'IA telles quechaîne de langue,ouvert, et outils de traitement de données
  5. Support communautaire : grande communauté avec une documentation complète et des exemples

Configuration de votre environnement de développement

Tout d'abord, créez un environnement virtuel et installez les dépendances requises :

# Créer et activer un environnement virtuel python -m venv mcp-env source mcp-env/bin/activate # Sous Windows : mcp-env\Scripts\activate # Installer le SDK MCP et les bibliothèques de scraping Web pip install mcp request beautifulsoup4 playwright lxml playwright install # Installer les pilotes de navigateur pour Playwright
Entrer en mode plein écran Quitter le mode plein écran

Construire un serveur MCP de base

Commençons par une structure minimale de serveur MCP :

import asyncio from mcp.server import Server from mcp.types import Tool, TextContent import mcp.server.stdio # Créer une instance de serveur app = Server("websearch-scraper") @app.list_tools() async def list_tools() -> list[Tool]: """Définir les outils disponibles""" return [ Tool( name="search_web", description="Rechercher des informations sur le Web", inputSchema={ "type": "object", "properties": { "query": { "type": "string", "description": "Requête de recherche" }, "max_results": { "type": "number", "description": "Nombre maximum de résultats", "default": 5 } }, "required": ["query"] } ) ] @app....
[Courte citation de 8% de l'article original]
Loading...