ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Tutoriels
  3. Comment construire un agent de routage MCP
Tutoriel

Comment construire un agent de routage MCP

Apprenez à construire un agent d'IA qui découvre et route dynamiquement vers les outils de recherche MCP en fonction du contexte de la requête, sans logique de sélection d'outils codée en dur.

Obtenez une clé API gratuiteDocumentation API

La plupart des agents d'IA codent en dur quel outil utiliser pour chaque type de requête. MCP change cela en permettant aux agents de découvrir les outils à l'exécution et de sélectionner le meilleur en fonction du contexte. Ce tutoriel construit un agent de routage qui se connecte au serveur MCP de Scavio, découvre 11 outils de recherche et choisit dynamiquement la plateforme optimale pour chaque requête. Aucune logique de routage if-else n'est nécessaire : le LLM prend la décision de routage en fonction des descriptions des outils.

Prérequis

  • Node.js 18+ installé
  • Paquet @modelcontextprotocol/sdk
  • Une clé API Scavio provenant de scavio.dev
  • Une clé API Anthropic ou OpenAI pour le LLM

Parcours

Étape 1: Installer le SDK MCP

Ajoutez le SDK client MCP à votre projet.

Bash
npm install @modelcontextprotocol/sdk

Étape 2: Connectez-vous au serveur MCP et découvrez les outils

Créez un client qui se connecte au serveur MCP de Scavio et liste tous les outils disponibles.

JavaScript
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';

const transport = new StreamableHTTPClientTransport(
  new URL('https://mcp.scavio.dev/mcp'),
  { requestInit: { headers: { 'x-api-key': process.env.SCAVIO_API_KEY } } }
);
const client = new Client({ name: 'routing-agent', version: '1.0.0' });
await client.connect(transport);

const { tools } = await client.listTools();
console.log(`Discovered ${tools.length} tools:`);
tools.forEach(t => console.log(`  - ${t.name}: ${t.description}`));

Étape 3: Convertissez les outils MCP en définitions d'outils pour le LLM

Mappez les outils MCP découverts dans le format attendu par votre LLM pour l'appel d'outils.

JavaScript
function mcpToLlmTools(mcpTools) {
  return mcpTools.map(t => ({
    type: 'function',
    function: {
      name: t.name,
      description: t.description,
      parameters: t.inputSchema
    }
  }));
}

const llmTools = mcpToLlmTools(tools);

Étape 4: Construisez la boucle de routage

Envoyez les requêtes utilisateur au LLM avec la liste des outils. Le LLM choisit l'outil ; votre code l'exécute via MCP.

JavaScript
async function routingAgent(userQuery) {
  const messages = [{ role: 'user', content: userQuery }];
  const response = await llm.chat({
    messages,
    tools: llmTools,
    tool_choice: 'auto'
  });
  if (response.tool_calls) {
    for (const call of response.tool_calls) {
      const result = await client.callTool({
        name: call.function.name,
        arguments: JSON.parse(call.function.arguments)
      });
      messages.push({ role: 'tool', content: JSON.stringify(result), tool_call_id: call.id });
    }
    const final = await llm.chat({ messages, tools: llmTools });
    return final.content;
  }
  return response.content;
}

Exemple Python

Python
# Python MCP client with routing:
import requests, os, json
H = {'x-api-key': os.environ['SCAVIO_API_KEY']}

# Simplified routing without full MCP SDK:
PLATFORM_MAP = {
    'product': 'amazon', 'price': 'amazon', 'buy': 'walmart',
    'video': 'youtube', 'tutorial': 'youtube', 'how to': 'youtube',
    'reddit': 'reddit', 'community': 'reddit', 'opinion': 'reddit',
}

def route_search(query: str) -> str:
    q_lower = query.lower()
    platform = 'google'
    for keyword, p in PLATFORM_MAP.items():
        if keyword in q_lower:
            platform = p
            break
    resp = requests.post('https://api.scavio.dev/api/v1/search', headers=H,
        json={'platform': platform, 'query': query}, timeout=10)
    return json.dumps({'platform': platform, 'results': resp.json().get('organic', [])[:3]}, indent=2)

Exemple JavaScript

JavaScript
// Full MCP routing example in the steps above.
// Simplified version without MCP SDK:
const PLATFORM_MAP = { product: 'amazon', video: 'youtube', reddit: 'reddit', opinion: 'reddit' };

async function routeSearch(query) {
  let platform = 'google';
  for (const [kw, p] of Object.entries(PLATFORM_MAP)) {
    if (query.toLowerCase().includes(kw)) { platform = p; break; }
  }
  const resp = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST', headers: {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'},
    body: JSON.stringify({platform, query})
  });
  return {platform, results: (await resp.json()).organic?.slice(0, 3)};
}

Sortie attendue

JSON
An MCP routing agent that discovers search tools dynamically and lets the LLM select the optimal platform per query context.

Tutoriels associés

  • Comment connecter la recherche MCP à Claude Desktop

Questions fréquentes

La plupart des développeurs terminent ce tutoriel en 15 à 30 minutes. Vous aurez besoin d'une clé API Scavio (l'offre gratuite suffit) et d'un environnement Python ou JavaScript fonctionnel.

Node.js 18+ installé. Paquet @modelcontextprotocol/sdk. Une clé API Scavio provenant de scavio.dev. Une clé API Anthropic ou OpenAI pour le LLM. Une clé API Scavio vous donne 50 crédits gratuits à l'inscription.

Oui. L'offre gratuite comprend 50 crédits à l'inscription, ce qui est largement suffisant pour terminer ce tutoriel et prototyper une solution fonctionnelle.

Scavio dispose d'un package natif LangChain (langchain-scavio), d'un serveur MCP et d'une API REST simple qui fonctionne avec tout client HTTP. Ce tutoriel utilise the raw REST API, mais vous pouvez l'adapter à votre framework de prédilection.

Ressources connexes

Solution

Routage MCP avec repli de recherche

Read more
Use Case

Passerelle de recherche MCP pour systèmes multi-agents

Read more
Glossary

Couche de routage d'agent MCP

Read more
Best Of

Meilleur outil de recherche multi-agents en 2026

Read more
Best Of

Meilleurs outils de recherche MCP pour l'intégration IDE en 2026

Read more
Solution

Offrir aux agents IA une recherche multi-source via MCP

Read more

Commencer

Apprenez à construire un agent d'IA qui découvre et route dynamiquement vers les outils de recherche MCP en fonction du contexte de la requête, sans logique de sélection d'outils codée en dur.

Obtenez une clé API gratuiteLire la documentation
ScavioScavio

API de recherche en temps réel pour agents IA. Recherchez sur toutes les plateformes, pas seulement Google.

Produit

  • Fonctionnalités
  • Tarifs
  • Tableau de bord
  • Affiliés

Développeurs

  • Documentation
  • Référence API
  • Démarrage rapide
  • Intégration MCP
  • SDK Python

Alternatives

  • Alternative à Tavily
  • Alternative à SerpAPI
  • Alternative à Firecrawl
  • Alternative à Exa

Outils

  • Formateur JSON
  • cURL vers code
  • Compteur de jetons
  • Tous les outils

© 2026 Scavio. Tous droits réservés.

Featured on TAAFT
Conditions d'utilisationPolitique de confidentialité