Aller au contenu principal

DeepWiki et outils custom

DeepWiki : un serveur MCP public

DeepWiki est un exemple concret de serveur MCP que vous pouvez utiliser immédiatement avec Grok. Il expose un serveur MCP public à l’adresse https://mcp.deepwiki.com/mcp qui permet de consulter la documentation de n’importe quel projet GitHub.

DeepWiki avec MCP dans le terminal

Configuration de DeepWiki

La configuration est minimale puisque le serveur est public et ne nécessite pas d’authentification :

from xai_sdk.tools import mcp

tools = [
    mcp(
        server_url="https://mcp.deepwiki.com/mcp",
        server_label="deepwiki",
        server_description="Documentation de projets open-source GitHub. Recherche et consultation de code, README, guides."
    )
]

Cas d’utilisation

Avec DeepWiki connecté, vous pouvez demander à Grok :

  • “Explique-moi comment fonctionne le routing dans le projet facebook/react”
  • “Quelles sont les options de configuration de vercel/next.js ?”
  • “Montre-moi la structure du projet langchain-ai/langchain”

Grok utilise les outils de DeepWiki pour accéder à la documentation et au code source, puis synthétise une réponse structurée.

Créer votre propre serveur MCP

DeepWiki est un bon point de départ, mais la vraie puissance du MCP apparaît quand vous créez vos propres serveurs. Un serveur MCP custom expose les outils spécifiques à votre entreprise ou à votre application.

Architecture d’un serveur MCP

Un serveur MCP est une application web qui répond à deux types de requêtes :

  1. Découverte : quand Grok se connecte, il demande la liste des outils disponibles avec leurs schémas
  2. Exécution : quand Grok appelle un outil, il envoie le nom de l’outil et ses arguments

Le serveur doit exposer un endpoint HTTPS compatible avec le protocole MCP (Streaming HTTP ou SSE).

Exemple d’outils custom

Voici des exemples d’outils que vous pourriez exposer via un serveur MCP interne :

Serveur "analytics" :
  - get_dashboard_metrics : métriques du tableau de bord
  - query_events : interroger les événements analytiques
  - get_funnel_report : rapport d'entonnoir de conversion

Serveur "content" :
  - search_articles : recherche dans le CMS
  - get_article : récupérer un article complet
  - list_categories : lister les catégories de contenu

Serveur "devops" :
  - get_deploy_status : statut du dernier déploiement
  - list_alerts : alertes de monitoring actives
  - get_service_health : santé d'un service spécifique

Connecter un serveur custom

Une fois votre serveur MCP déployé, la connexion avec Grok suit le même schéma que pour DeepWiki :

tools = [
    mcp(
        server_url="https://mcp.monentreprise.com/analytics",
        server_label="analytics",
        server_description="Métriques et rapports d'analyse. Tableaux de bord, funnels, événements.",
        authorization=f"Bearer {os.getenv('ANALYTICS_TOKEN')}",
        allowed_tool_names=["get_dashboard_metrics", "query_events"]
    )
]

Combiner serveurs publics et internes

La configuration la plus puissante combine des serveurs MCP publics et vos propres serveurs :

tools = [
    # Serveur public pour la documentation open-source
    mcp(
        server_url="https://mcp.deepwiki.com/mcp",
        server_label="deepwiki",
        server_description="Documentation de projets GitHub open-source"
    ),
    # Serveur interne pour la documentation produit
    mcp(
        server_url="https://docs.monentreprise.com/mcp",
        server_label="docs-internes",
        server_description="Documentation technique interne, guides d'architecture, ADR",
        authorization=f"Bearer {os.getenv('DOCS_TOKEN')}"
    ),
    # Serveur interne pour les données métier
    mcp(
        server_url="https://api.monentreprise.com/mcp",
        server_label="donnees",
        server_description="Données métier : clients, commandes, inventaire",
        authorization=f"Bearer {os.getenv('API_TOKEN')}",
        allowed_tool_names=["search_customers", "get_order", "check_inventory"]
    ),
]

Avec cette configuration, Grok peut répondre à une requête comme “Compare la documentation officielle de React avec notre guide d’architecture interne sur le routing” en interrogeant DeepWiki pour React et votre serveur interne pour le guide d’architecture.

Points clés à retenir

  • DeepWiki (https://mcp.deepwiki.com/mcp) est un serveur MCP public prêt à l’emploi pour la documentation GitHub
  • Vous pouvez créer vos propres serveurs MCP pour exposer des outils spécifiques à votre métier
  • Un serveur MCP custom est une application web HTTPS qui répond aux requêtes de découverte et d’exécution
  • La combinaison de serveurs publics et internes donne les configurations les plus puissantes
  • Chaque serveur garde son propre niveau d’authentification et de restriction d’outils