Apify

officiel

Serveur MCP officiel d'Apify permettant aux agents IA d'exécuter des Actors, d'extraire des données de sites web et d'automatiser des workflows de scraping et de crawling.

Que pouvez-vous faire avec Apify MCP ?

  • Rechercher et exécuter des scrapers — Demandez à votre assistant de trouver un Actor dans l’Apify Store et de l’exécuter pour extraire des données de réseaux sociaux, de cartes ou de sites de commerce électronique via search-actors et call-actor.
  • Naviguer sur le web — Demandez à votre assistant de récupérer n’importe quelle URL et de renvoyer le contenu en Markdown ou en texte brut à l’aide de l’outil Actor préconfiguré apify--web-fetch.
  • Rechercher avec RAG — Demandez à votre assistant de rechercher sur le web et de résumer les principaux résultats à l’aide de l’outil Actor apify--rag-web-browser.
  • Gérer les exécutions d’Actors — Récupérez les résultats d’exécution, paginez dans les jeux de données ou interrompez les tâches en cours avec des outils comme get-actor-run et get-dataset-items.
  • Payer sans jetons API — Utilisez les paiements agentiques via AGI, x402 direct ou Skyfire pour exécuter des Actors sans APIFY_TOKEN.

Documentation

Apify MCP Server
mcp.apify.com

NPM latest version Downloads Build Status smithery badge

Le serveur Model Context Protocol (MCP) d'Apify, hébergé à mcp.apify.com, permet à vos agents IA d'extraire des données des réseaux sociaux, des moteurs de recherche, des cartes, des sites de commerce électronique et de tout autre site web grâce à des milliers de scrapers, crawlers et outils d'automatisation prêts à l'emploi disponibles sur Apify Store. Il prend en charge OAuth, ce qui vous permet de vous connecter depuis des clients comme Claude.ai ou Visual Studio Code en utilisant simplement l'URL.

🚀 Utilisez le serveur Apify MCP hébergé !

Pour une expérience optimale, connectez votre assistant IA à notre serveur hébergé à https://mcp.apify.com. Le serveur hébergé prend en charge les dernières fonctionnalités — y compris l'inférence de schéma de sortie pour les résultats structurés des Actors — qui ne sont pas disponibles lors d'une exécution locale via stdio.

⚠️ Transport SSE hérité supprimé. Le point de terminaison https://mcp.apify.com/sse a été supprimé au profit du HTTP Streamable. Migrez votre client vers https://mcp.apify.com — retirez le suffixe /sse de votre configuration.

💰 Le serveur prend également en charge les paiements agentiques : achetez un jeton auprès d'AGI pour exécuter n'importe quel Actor, ou payez par requête via x402 direct (Actors Pay Per Event uniquement) ou Skyfire.

Le serveur Apify MCP est compatible avec Claude Code, Claude.ai, Cursor, VS Code et tout client conforme au Model Context Protocol. Consultez la section sur les clients MCP pour plus de détails ou visitez la page de configuration MCP.

Apify-MCP-server

Table des matières

🌐 Présentation du serveur Apify MCP

Le serveur Apify MCP permet à un assistant IA d'utiliser n'importe quel Actor Apify comme outil pour effectuer une tâche spécifique. Par exemple, il peut :

  • Utiliser Facebook Posts Scraper pour extraire des données des publications Facebook de plusieurs pages/profils.
  • Utiliser Google Maps Email Extractor pour extraire les coordonnées de contact de Google Maps.
  • Utiliser Google Search Results Scraper pour scraper les pages de résultats des moteurs de recherche Google (SERP).
  • Utiliser Instagram Scraper pour scraper les publications, profils, lieux, photos et commentaires Instagram.
  • Utiliser RAG Web Browser pour rechercher sur le web, scraper les N premières URL et renvoyer leur contenu.
  • Utiliser Web Fetch pour récupérer n'importe quelle URL et renvoyer son contenu au format Markdown, texte brut, HTML ou liens — avec rendu JavaScript et protection anti-bot.

Tutoriel vidéo : Intégrez plus de 8 000 Actors et agents Apify avec Claude

Apify MCP Server Tutorial: Integrate 5,000+ Apify Actors and Agents with Claude

🚀 Démarrage rapide

Vous pouvez utiliser le serveur Apify MCP de deux manières :

Point de terminaison HTTPS (mcp.apify.com) : Connectez-vous depuis votre client MCP via OAuth ou en incluant l'en-tête Authorization: Bearer <APIFY_TOKEN> dans vos requêtes. C'est la méthode recommandée pour la plupart des cas d'utilisation. Comme elle prend en charge OAuth, vous pouvez vous connecter depuis des clients comme Claude.ai ou Visual Studio Code en utilisant simplement l'URL : https://mcp.apify.com.

  • Transport streamable https://mcp.apify.com

Entrée/Sortie standard (stdio) : Idéal pour les intégrations locales et les outils en ligne de commande comme le client Claude pour Desktop.

  • Définissez la commande du serveur du client MCP sur npx @apify/actors-mcp-server et la variable d'environnement APIFY_TOKEN sur votre jeton API Apify.
  • Voir npx @apify/actors-mcp-server --help pour plus d'options.

Vous trouverez des instructions détaillées pour configurer le serveur MCP dans la documentation Apify.

🤖 Clients MCP

Le serveur Apify MCP est compatible avec tout client MCP conforme au Model Context Protocol, mais le niveau de prise en charge de la découverte dynamique d'outils et d'autres fonctionnalités peut varier selon les clients.

Pour interagir avec le serveur Apify MCP, vous pouvez utiliser des clients tels que Claude Desktop, Visual Studio Code ou Apify Tester MCP Client.

Visitez mcp.apify.com pour configurer le serveur pour votre client préféré.

Apify-MCP-configuration-clients

Clients testés

🪄 Essayez Apify MCP instantanément

Vous voulez essayer Apify MCP sans aucune configuration ?

Consultez Apify Tester MCP Client

Cette interface interactive, de type chat, offre un moyen simple d'explorer les capacités d'Apify MCP sans aucune configuration locale. Connectez-vous avec votre compte Apify et commencez à expérimenter les outils de scraping web, d'extraction de données et d'automatisation !

Ou utilisez le fichier bundle MCP (anciennement fichier d'extension Anthropic Desktop, ou DXT) pour une installation en un clic : Fichier MCPB du serveur Apify MCP

💰 Paiements agentiques

Vous pouvez payer les exécutions d'Actors sans jeton API Apify en utilisant AGI, x402 direct ou Skyfire.

  • AGI (agi.apify.com) émet un jeton API Apify prépayé en échange d'un paiement x402 ou MPP. Utilisez le jeton comme un jeton API normal contre mcp.apify.com et api.apify.com — fonctionne pour n'importe quel Actor, pas seulement ceux Pay Per Event. Recommandé pour les nouvelles intégrations ; voir AGI (recommandé) ci-dessous.
  • x402 direct paie avec USDC sur Base par requête et ne nécessite pas de compte de plateforme séparé. Il est entièrement pris en charge par mcpc (brew install apify/tap/mcpc ou npm install -g @apify/mcpc). Nous utilisons mcpc car c'est l'un des rares clients MCP qui prend en charge les dernières fonctionnalités et le protocole x402 nativement.
  • Skyfire paie avec des jetons PAY et nécessite un compte Skyfire avec un portefeuille approvisionné. Il ne nécessite pas de client MCP spécial ; tout le flux de paiement est géré directement via les paramètres d'appel d'outil MCP.

ℹ️ Portée : Le x402 direct et Skyfire sont tous deux limités aux Actors Pay Per Event, ne prennent pas en charge les Actors Standby, et règlent par exécution au lieu d'émettre un jeton.

Comment fonctionnent les paiements agentiques

Les coûts d'exécution des Actors varient, donc les deux méthodes de paiement utilisent un modèle de solde prépayé. Le flux de paiement se déroule en quatre étapes :

  1. Découverte : L'agent découvre les Actors avec search-actors ou fetch-actor-details. Ces appels sont gratuits.
  2. Prépaiment : Avant d'exécuter un outil Actor payant, l'agent approvisionne un solde prépayé.
    • x402 direct : mcpc signe automatiquement une transaction USDC de 1,00 $.
    • Skyfire : L'agent crée un jeton PAY (minimum 5,00 $) en utilisant l'outil create-pay-token de Skyfire.
  3. Exécution : L'agent appelle l'outil Actor.
    • x402 direct : Géré automatiquement par mcpc en utilisant le solde prépayé.
    • Skyfire : L'agent passe explicitement le jeton PAY dans la propriété d'entrée skyfire-pay-id.
  4. Résolution : L'outil renvoie les résultats de l'Actor. Les fonds non utilisés restent disponibles pour les exécutions ultérieures.
    • x402 direct : Après 60 minutes d'inactivité, le serveur rembourse tout solde non utilisé au portefeuille sur Base.
    • Skyfire : Skyfire renvoie les fonds non utilisés lorsque le jeton expire.

🪙 AGI (recommandé)

AGI (Apify Agent General Interface) est la méthode recommandée pour que les agents autonomes paient l'utilisation d'Apify sans compte. Payez une fois via x402 ou MPP, recevez un jeton API Apify prépayé avec plafond de dépenses, et utilisez-le directement contre mcp.apify.com et api.apify.com (Authorization: Bearer <token>) — pour n'importe quel Actor.

Le protocole complet, les méthodes de paiement prises en charge et les conditions actuelles (montant minimum, durée de vie du jeton, politique de remboursement) sont documentés sur agi.apify.com/AGENTS.md — considérez-le comme la source de vérité unique.

💸 x402 direct

Le protocole x402 permet des paiements directs de machine à machine. Votre client MCP peut l'utiliser pour payer les exécutions d'Actors avec USDC sur la blockchain Base, contournant complètement le besoin d'un jeton API Apify.

Prérequis

  • Un portefeuille avec USDC sur le mainnet Base.

Configuration

Créez ou importez un portefeuille :

# Create a new wallet
mcpc x402 init

# Import an existing wallet
mcpc x402 import <private-key>

# Show the wallet address and a funding QR code, so you can fund it with USDC on Base (https://base.org)
mcpc x402

Connectez-vous au serveur avec x402 activé :

mcpc connect "mcp.apify.com?payment=x402" @apify --x402

Vous pouvez maintenant appeler un outil payant :

mcpc @apify tools-call call-actor actor:="apify/rag-web-browser" input:='{"query": "latest AI news"}'

🔥 Skyfire

Skyfire fournit une infrastructure de paiement gérée pour les agents IA. Au lieu de s'authentifier avec un jeton API Apify, votre agent passe un jeton de paiement Skyfire pour couvrir le coût de chaque appel d'outil en utilisant des jetons PAY.

Prérequis

  • Un compte Skyfire avec un portefeuille approvisionné.
  • Un client MCP qui prend en charge plusieurs serveurs, comme Claude Desktop, OpenCode ou VS Code.

Configuration

Configurez le serveur MCP Skyfire et le serveur Apify MCP dans votre client. Ajoutez payment=skyfire à l'URL du serveur Apify :

{
  "mcpServers": {
    "skyfire": {
      "url": "https://api.skyfire.xyz/mcp/sse",
      "headers": {
        "skyfire-api-key": "<YOUR_SKYFIRE_API_KEY>"
      }
    },
    "apify": {
      "url": "https://mcp.apify.com?payment=skyfire"
    }
  }
}

Consultez la documentation d'intégration Skyfire pour les détails de configuration. L'article Agentic Payments with Skyfire fournit des informations complémentaires.

🛠️ Outils, ressources et invites

Le serveur MCP fournit un ensemble d'outils pour interagir avec les Actors Apify. Comme Apify Store est vaste et en croissance rapide, le serveur MCP offre un moyen de découvrir et d'utiliser dynamiquement de nouveaux Actors.

Actors

N'importe quel Actor Apify peut être utilisé comme outil. Par défaut, le serveur est préconfiguré avec deux Actors, apify/rag-web-browser et apify/web-fetch, et plusieurs outils d'assistance. Le serveur MCP charge le schéma d'entrée d'un Actor et crée un outil MCP correspondant. Cela permet à l'agent IA de savoir exactement quels arguments passer à l'Actor et à quoi s'attendre en retour.

Par exemple, pour l'Actor apify/rag-web-browser, les paramètres d'entrée sont :

{
  "query": "restaurants in San Francisco",
  "maxResults": 3
}

Vous n'avez pas besoin de spécifier manuellement quel Actor appeler ou ses paramètres d'entrée ; le LLM gère cela automatiquement. Lorsqu'un outil est appelé, les arguments sont automatiquement transmis à l'Actor par le LLM. Vous pouvez vous référer à la documentation spécifique de l'Actor pour une liste des arguments disponibles.

Outils d'assistance

L'une des fonctionnalités les plus puissantes de l'utilisation de MCP avec Apify est la découverte dynamique d'outils. Elle permet à un agent IA de trouver de nouveaux outils (Actors) selon les besoins et de les intégrer. Voici quelques opérations MCP spéciales et comment le serveur Apify MCP les prend en charge :

  • Acteurs Apify : Rechercher des acteurs, lister les acteurs de votre compte, consulter leurs détails, les utiliser comme outils pour l'IA et supprimer vos propres acteurs.
  • Documentation Apify : Rechercher dans la documentation Apify et récupérer des documents spécifiques pour fournir du contexte à l'IA.
  • Exécutions d'acteurs : Obtenir des listes de vos exécutions d'acteurs, inspecter leurs détails et récupérer les journaux.
  • Stockage Apify : Accéder aux données de vos ensembles de données et magasins clé-valeur.
  • Tâches d'acteurs : Créer, inspecter et mettre à jour vos tâches d'acteurs enregistrées, et publier ou dépublier leurs pages d'atterrissage publiques.
  • Planifications : Créer, inspecter, mettre à jour et supprimer des planifications qui exécutent automatiquement vos acteurs et tâches.
  • Builds : Construire une version d'acteur, lister les builds, vérifier le statut d'un build et récupérer son journal de build.
  • Source d'acteur : Lire les fichiers d'une version d'acteur, avec un hachage pour chaque fichier et une révision pour l'ensemble.
  • API Apify : Rechercher dans la référence de l'API Apify, inspecter une opération et envoyer des requêtes à l'API pour lire ou modifier des données.

Aperçu des outils disponibles

Voici une liste d'aperçu de tous les outils fournis par le serveur MCP Apify.

Légende pour la colonne Activé par défaut :

  • ✅ — dans l'ensemble d'outils par défaut.
  • ⚡ — auto-injecté lorsque call-actor, un outil d'acteur, ou get-actor-run est présent (ce qui est vrai dans la configuration par défaut).
  • ✅¹ — servi par défaut, mais uniquement lorsque la télémétrie est activée et que le client n'est pas retenu : surfaces Anthropic (Claude.ai / Claude Desktop / Claude Code) ou local-agent-mode-apify. Pour désactiver, passez une liste tools= explicite qui l'omet. Le sélectionner explicitement (tools=report-problem ou tools=dev) le sert quel que soit le client — la télémétrie doit toujours être activée.
Nom de l'outilCatégorieDescriptionActivé par défaut
search-actorsacteursRechercher des acteurs dans l'Apify Store.✅
fetch-actor-detailsacteursRécupérer des informations détaillées sur un acteur spécifique, y compris son schéma d'entrée, son README (résumé lorsqu'il est disponible, complet sinon), ses prix et son schéma de sortie d'acteur.✅
call-actoracteursAppeler un acteur et obtenir ses résultats d'exécution. Utilisez fetch-actor-details d'abord pour obtenir le schéma d'entrée de l'acteur.✅
get-actor-runexécutionsObtenir des informations détaillées sur une exécution d'acteur spécifique.⚡
get-dataset-itemsstockageRécupérer des éléments d'un ensemble de données avec prise en charge du filtrage et de la pagination.⚡
get-key-value-store-recordstockageObtenir la valeur associée à une clé spécifique dans un magasin clé-valeur.⚡
abort-actor-runexécutionsInterrompre une exécution d'acteur en cours, éventuellement de manière gracieuse.⚡
delete-actoraucun (sélectionner par nom : tools=delete-actor)Supprimer définitivement un acteur de votre compte. Les acteurs publics doivent d'abord être dépubliés.
search-apify-docsdocumentationRechercher dans la documentation Apify les pages pertinentes.✅
fetch-apify-docsdocumentationRécupérer le contenu complet d'une page de documentation Apify par son URL.✅
apify--rag-web-browserActeur (voir configuration de l'outil)Un outil d'acteur pour naviguer sur le web.✅
apify--web-fetchActeur (voir configuration de l'outil)Un outil d'acteur pour récupérer une URL et retourner son contenu.✅
report-problemdevSignaler un problème avec un outil ou un acteur Apify à l'équipe Apify.✅¹
get-actor-listaucun (sélectionner par nom : tools=get-actor-list)Lister les acteurs que vous possédez et ceux partagés avec vous, y compris les acteurs privés.
get-actor-run-listexécutionsObtenir une liste des exécutions d'acteurs, filtrable par acteur et statut.
get-actor-run-logexécutionsRécupérer les journaux pour une exécution d'acteur spécifique.
get-datasetstockageObtenir des métadonnées sur un ensemble de données spécifique.
get-dataset-schemastockageGénérer un schéma JSON à partir des éléments de l'ensemble de données.
get-key-value-storestockageObtenir des métadonnées sur un magasin clé-valeur spécifique.
get-key-value-store-keysstockageLister les clés dans un magasin clé-valeur spécifique.
get-dataset-liststockageLister tous les ensembles de données disponibles pour l'utilisateur.
get-key-value-store-liststockageLister tous les magasins clé-valeur disponibles pour l'utilisateur.
create-actor-tasktâchesCréer une tâche d'acteur enregistrée (une configuration d'acteur nommée et réutilisable).
get-actor-tasktâchesObtenir une tâche d'acteur enregistrée, son état de publication et sa configuration d'affichage public.
update-actor-tasktâchesMettre à jour l'entrée d'une tâche, ses options d'exécution ou sa configuration d'affichage public.
publish-actor-tasktâchesPublier une tâche sur sa page d'atterrissage publique.
unpublish-actor-tasktâchesDépublier une tâche de sa page d'atterrissage publique.
create-scheduleplanificationsCréer une planification qui exécute des acteurs ou des tâches selon une cadence cron.
get-scheduleplanificationsObtenir une planification, son expression cron, son état et les actions qu'elle exécute.
update-scheduleplanificationsMettre à jour une planification : expression cron, fuseau horaire, état activé ou actions.
delete-scheduleplanificationsSupprimer une planification.
get-actor-buildbuildsObtenir le statut d'un build d'acteur.
get-actor-build-logbuildsRécupérer les journaux pour un build d'acteur spécifique.
get-actor-build-listbuildsLister les builds du compte, ou ceux d'un acteur, dans chaque statut, du plus récent au plus ancien.
build-actorbuildsConstruire une version d'acteur et attendre un temps limité que le build se termine.
get-actor-versionsourceObtenir la liste des fichiers d'une version d'acteur avec les hachages et le contenu des fichiers demandés.
apify-api-searchapiRechercher dans la référence de l'API Apify des opérations par mots-clés. Retourne la méthode, le chemin et la page de documentation de chacune.
apify-api-detailsapiObtenir les paramètres et le schéma du corps de requête des opérations de l'API Apify sur un chemin.
apify-api-readapiEnvoyer une requête GET à n'importe quel chemin de l'API Apify, comme actor-runs ou /v2/actor-runs, comme apify api dans l'interface CLI Apify. Il refuse le paramètre de requête method.
apify-api-writeaucun (sélectionner par nom : tools=apify-api-write)Envoyer une requête POST, PUT, PATCH ou DELETE à n'importe quel chemin de l'API Apify, avec un corps JSON, comme apify api dans l'interface CLI Apify. Il refuse le paramètre de requête method.

Remarque :

Lorsque call-actor, un outil d'acteur, ou get-actor-run est présent, le serveur auto-injecte get-actor-run, get-dataset-items, get-key-value-store-record et abort-actor-run.

Lorsque vous appelez un acteur — via call-actor ou directement via un outil d'acteur (par exemple, apify--rag-web-browser) — la réponse contient des métadonnées d'exécution, des identifiants de stockage et un summary + nextStep, mais aucun élément d'ensemble de données. Pour récupérer les éléments, suivez nextStep et appelez get-dataset-items (auto-injecté), en passant le datasetId retourné par l'appel.

Annotations d'outils

Tous les outils incluent des annotations de métadonnées pour aider les clients MCP et les LLM à comprendre le comportement des outils :

  • title : Nom d'affichage court pour l'outil (par exemple, « Rechercher des acteurs », « Appeler un acteur », « apify/rag-web-browser »)
  • readOnlyHint : true pour les outils qui lisent uniquement des données sans modifier l'état (par exemple, get-dataset, fetch-actor-details). Les outils d'acteur l'obtiennent uniquement pour les acteurs maintenus par Apify avec des permissions limitées et sans stockage secret inscriptible, connecteur MCP ou entrée de code (par exemple, apify--web-fetch) ; les autres outils d'acteur sont marqués comme destructifs.
  • openWorldHint : true pour les outils qui accèdent à des ressources externes en dehors de la plateforme Apify (par exemple, call-actor exécute des acteurs externes). Les outils qui interagissent uniquement avec la plateforme Apify (comme search-actors ou fetch-apify-docs) n'ont pas cet indice.

Configuration des outils

Le paramètre de configuration tools est utilisé pour spécifier les outils chargés — soit des catégories, soit des outils spécifiques directement, et des acteurs Apify. Par exemple, tools=storage,runs charge deux catégories ; tools=call-actor charge un seul outil.

Lorsqu'aucun paramètre de requête n'est fourni, le serveur MCP charge les tools suivants par défaut :

  • actors
  • docs
  • apify/rag-web-browser
  • apify/web-fetch

Si le paramètre d'outils est spécifié, seuls les outils ou catégories listés seront activés — aucun outil par défaut ne sera inclus.

report-problem est servi par défaut (sous réserve du contrôle dans la note de bas de page ci-dessus) mais vit dans la catégorie dev, donc un tools=dev explicite le sélectionne également. Pour le désactiver, passez une liste tools= explicite qui l'omet (par exemple tools=actors,docs).

Configuration facile :

Utilisez le configurateur d'interface pour configurer votre serveur, puis copiez la configuration vers votre client.

Configuration du serveur hébergé :

Le serveur hébergé peut être configuré à l'aide de paramètres de requête dans l'URL. Par exemple, pour charger les outils par défaut, utilisez :

https://mcp.apify.com?tools=actors,docs,apify/rag-web-browser,apify/web-fetch

Pour une configuration minimale, si vous souhaitez utiliser uniquement un seul outil d'acteur — sans aucun outil de découverte ou d'appel générique, le serveur peut être configuré comme suit :

https://mcp.apify.com?tools=apify/my-actor

Cette configuration n'expose que l'acteur spécifié (apify/my-actor) comme outil. Aucun autre outil ne sera disponible.

Configuration de l'interface CLI :

L'interface CLI peut être configurée à l'aide de drapeaux de ligne de commande. Par exemple, pour charger les mêmes outils que dans la configuration du serveur hébergé, utilisez :

npx @apify/actors-mcp-server --tools actors,docs,apify/rag-web-browser,apify/web-fetch

La configuration minimale est similaire à la configuration du serveur hébergé :

npx @apify/actors-mcp-server --tools apify/my-actor

Comme ci-dessus, cela n'expose que l'acteur spécifié (apify/my-actor) comme outil. Aucun autre outil ne sera disponible.

⚠️ Recommandation importante

La configuration des outils par défaut peut changer dans les versions futures. Lorsqu'aucun paramètre tools n'est spécifié, le serveur charge actuellement les outils par défaut, mais ce comportement est sujet à changement.

Pour une utilisation en production et des interfaces stables, spécifiez toujours explicitement le paramètre tools pour garantir que votre configuration reste cohérente à travers les mises à jour.

Configuration du mode interface

Le paramètre ui active le rendu des widgets MCP Apps dans les réponses des outils. Lorsqu'il est activé, des outils comme search-actors retournent des réponses interactives d'applications MCP.

Configuration du serveur hébergé :

Activez le mode interface à l'aide du paramètre de requête ui :

https://mcp.apify.com?ui=true

Vous pouvez le combiner avec d'autres paramètres :

https://mcp.apify.com?tools=actors,docs&ui=true

Configuration de l'interface CLI :

L'interface CLI peut être configurée à l'aide de drapeaux de ligne de commande. Par exemple, pour activer le mode interface :

npx @apify/actors-mcp-server --ui true

Vous pouvez également le définir via la variable d'environnement UI_MODE :

export UI_MODE=true
npx @apify/actors-mcp-server

Compatibilité ascendante

La configuration v2 préserve la compatibilité ascendante avec l'utilisation v1. Remarques :

  • Le paramètre actors (URL) et le drapeau --actors (CLI) sont toujours pris en charge.
    • En interne, ils sont fusionnés dans les sélecteurs tools.
    • Exemples : ?actors=apify/rag-web-browser ≡ ?tools=apify/rag-web-browser ; --actors apify/rag-web-browser ≡ --tools apify/rag-web-browser.
  • enableAddingActors (URL), enable-adding-actors (CLI) et l'ancien alias enableActorAutoLoading ont été supprimés. Pour appeler des acteurs dynamiquement, utilisez tools=call-actor (inclus par défaut via la catégorie actors). Toute valeur brute persistante est ignorée.
  • Les valeurs par défaut restent compatibles : lorsqu'aucun tools n'est spécifié, le serveur charge actors, docs, apify/rag-web-browser et apify/web-fetch.
    • Si des tools sont spécifiés, les valeurs par défaut ne sont pas ajoutées (même intention que v1 pour la sélection explicite).
  • call-actor est maintenant inclus par défaut via la catégorie actors (changement additif). Pour l'exclure, spécifiez une liste tools explicite sans actors.
  • tools=add-actor, tools=experimental et tools=preview sont retirés : ils sont ignorés et ne chargent aucun outil. Utilisez tools=call-actor (ou la catégorie par défaut actors) à la place.
  • tools=get-actor-log est retiré : l'outil a été renommé en get-actor-run-log. L'ancien sélecteur est ignoré et ne charge aucun outil. Utilisez tools=get-actor-run-log (ou la catégorie runs) à la place.

Les URL et commandes existantes utilisant ?actors=... ou --actors continuent de fonctionner sans changement.

Prompts

Le serveur annonce la capacité prompts, mais aucun prompt n'est actuellement enregistré — prompts/list renvoie une liste vide.

Ressources

Vos données Apify ne sont pas énumérées dans resources/list — les lectures se font à la demande : transmettez n'importe quelle URL GET de l'API Apify (https://api.apify.com/v2/...) à resources/read et le serveur injecte le jeton Apify de la session et renvoie le corps de la réponse. resources/templates/list énumère les formes courantes — éléments de dataset, enregistrements et clés de key-value store, métadonnées d'exécution, journal d'exécution — avec leurs paramètres de pagination. Les réponses intègrent jusqu'à 256 Ko ; tout élément plus volumineux renvoie un court avis avec une URL de téléchargement au lieu du corps. Les lectures API nécessitent un jeton Apify, donc une session réservée au paiement (x402 ou Skyfire) reçoit une erreur JSON-RPC pour celles-ci.

💬 Exemples d'utilisation

Voici des exemples réalistes montrant comment un assistant IA utilise les outils du serveur MCP Apify.

Exemple 1 : Rechercher sur le web avec RAG Web Browser

Invite utilisateur :

Trouvez les dernières nouvelles sur les agents IA autonomes et résumez les développements clés.

L'assistant IA appelle l'outil Actor préconfiguré apify--rag-web-browser pour rechercher sur le web et renvoyer le contenu des meilleurs résultats. L'outil renvoie le contenu markdown des 3 premiers résultats de recherche, que l'assistant IA résume ensuite pour l'utilisateur.

Exemple 2 : Découvrir et exécuter un Actor depuis l'Apify Store

Invite utilisateur :

Scrapez les 10 meilleurs restaurants de Prague sur Google Maps avec leurs coordonnées.

L'assistant IA recherche d'abord un Actor adapté, inspecte son schéma d'entrée, puis l'exécute. L'outil renvoie un aperçu des données scrapées, y compris les noms des restaurants, adresses, notes, numéros de téléphone et sites web.

Exemple 3 : Récupérer et paginer les résultats d'exécution d'un Actor

Invite utilisateur :

Montrez-moi les 10 résultats suivants de cette exécution de scraping.

L'assistant IA utilise l'ID du dataset de l'exécution précédente de l'Actor pour récupérer des éléments supplémentaires. Résultat attendu : l'outil renvoie la page suivante des éléments de données structurés du dataset de sortie de l'Actor.

📡 Télémétrie

Le serveur MCP Apify collecte des données de télémétrie sur les appels d'outils pour aider Apify à comprendre les schémas d'utilisation et améliorer le service. Par défaut, la télémétrie est activée pour tous les appels d'outils.

Le transport stdio utilise également Sentry pour le suivi des erreurs, ce qui nous aide à identifier et corriger les problèmes plus rapidement. Sentry est automatiquement désactivé lorsque la télémétrie est refusée.

Refus de la télémétrie

Vous pouvez refuser la télémétrie (y compris le suivi des erreurs Sentry) en définissant l'indicateur CLI --telemetry-enabled sur false ou la variable d'environnement TELEMETRY_ENABLED sur false. Les indicateurs CLI ont priorité sur les variables d'environnement.

Exemples

Pour le serveur distant (mcp.apify.com) :

# Disable via URL parameter
https://mcp.apify.com?telemetry-enabled=false

Pour le serveur local stdio :

# Disable via CLI flag
npx @apify/actors-mcp-server --telemetry-enabled=false

# Or set environment variable
export TELEMETRY_ENABLED=false
npx @apify/actors-mcp-server

⚙️ Développement

Veuillez consulter le guide CONTRIBUTING.md pour les directives de contribution et les conventions de messages de commit.

Pour des instructions détaillées sur la configuration de développement, la structure du projet et les tests locaux, consultez le guide DEVELOPMENT.md.

Prérequis

Créez un fichier d'environnement, .env, avec le contenu suivant :

APIFY_TOKEN="your-apify-token"

Compilez le package actors-mcp-server :

pnpm run build

Démarrer le serveur MCP HTTP streamable

Exécutez avec l'interface CLI Apify :

export APIFY_TOKEN="your-apify-token"
export APIFY_META_ORIGIN=STANDBY
apify run -p

Une fois le serveur en cours d'exécution, vous pouvez utiliser l'inspecteur MCP pour déboguer le serveur exposé à http://localhost:3001.

Démarrer le serveur MCP standard input/output (stdio)

Vous pouvez lancer l'inspecteur MCP avec cette commande :

export APIFY_TOKEN="your-apify-token"
npx @modelcontextprotocol/inspector node ./dist/stdio.js

Au lancement, l'inspecteur affichera une URL que vous pouvez ouvrir dans votre navigateur pour commencer le débogage.

Accès non authentifié

Lorsque le paramètre de requête tools inclut uniquement des outils explicitement activés pour une utilisation non authentifiée, le serveur hébergé autorise l'accès sans jeton API. Outils actuellement autorisés : search-actors, fetch-actor-details, search-apify-docs, fetch-apify-docs, apify-api-search, apify-api-details. Exemple : https://mcp.apify.com?tools=search-actors.

🐦 Versions canary des PR

Apify MCP est réparti sur deux dépôts : ce dépôt pour la logique MCP principale et le dépôt privé apify-mcp-server-internal pour le serveur hébergé. Les modifications doivent être synchronisées entre les deux.

Pour créer une version canary, ajoutez le libellé beta à votre pull request. Cela publie le package sur pkg.pr.new pour la préparation et les tests avant la fusion. Voir le fichier de workflow pour plus de détails.

🐋 Intégration Docker Hub

Le serveur MCP Apify est également disponible sur Docker Hub, enregistré via le dépôt mcp-registry. L'entrée dans servers/apify-mcp-server/server.yaml doit être déployée automatiquement par le registre MCP Docker Hub (la fréquence de déploiement est inconnue). Avant d'apporter des modifications majeures à la version du serveur stdio, testez-la localement pour vous assurer que la compilation Docker réussit. Pour tester, changez source.branch vers votre branche PR et exécutez task build -- apify-mcp-server. Pour plus de détails, consultez CONTRIBUTING.md.

🐛 Dépannage

Pour un dépannage étape par étape, consultez le guide d'intégration Claude Desktop dans la documentation Apify.

💡 Limitations

Le schéma d'entrée de l'Actor est traité pour être compatible avec la plupart des clients MCP tout en respectant les normes JSON Schema. Le traitement comprend :

  • Les descriptions de plus de 500 caractères (telles que définies dans ACTOR_MAX_DESCRIPTION_LENGTH) sont coupées à la dernière phrase complète dans cette fenêtre, ou au dernier mot complet s'il n'y a pas de rupture de phrase, et marquées [Description truncated].
  • Les champs d'énumération qui tiennent dans 2000 caractères combinés (tels que définis dans ACTOR_ENUM_MAX_LENGTH) sont conservés en entier ; les énumérations plus grandes sont omises, avec une courte note et quelques exemples de valeurs dans la description à la place.
  • Les champs obligatoires sont explicitement marqués avec un préfixe REQUIRED dans leurs descriptions pour la compatibilité avec les frameworks qui peuvent ne pas gérer correctement le schéma JSON.
  • Les propriétés imbriquées sont construites pour des cas spéciaux comme la configuration de proxy et les sources de listes de requêtes afin de garantir la structure d'entrée correcte.
  • Les types d'éléments de tableau sont déduits lorsqu'ils ne sont pas explicitement définis dans le schéma, en utilisant un ordre de priorité : type explicite dans les éléments > type de préremplissage > type de valeur par défaut > type d'éditeur.
  • Les valeurs d'énumération et les exemples sont ajoutés aux descriptions des propriétés pour garantir leur visibilité, même si le client ne prend pas entièrement en charge le schéma JSON.
  • Les Actors en location ne sont disponibles qu'avec le serveur MCP hébergé à https://mcp.apify.com.. Lorsque vous exécutez le serveur localement via stdio, vous ne pouvez accéder qu'aux Actors déjà ajoutés à votre ensemble d'outils local. Pour rechercher et utiliser dynamiquement n'importe quel Actor de l'Apify Store — y compris les Actors en location — connectez-vous au point de terminaison hébergé.

🔒 Politique de confidentialité

Lorsque vous utilisez ce serveur, vos requêtes et entrées d'Actor sont envoyées à l'API Apify pour exécution. Les données ne sont pas partagées avec des tiers au-delà de ce qui est nécessaire pour exécuter les Actors demandés. Pour tous les détails sur la collecte, l'utilisation, le partage et la conservation des données, consultez Apify Legal.

🤝 Contribution

Nous accueillons favorablement les rapports de bugs, les demandes de fonctionnalités et les corrections de documentation. Envoyez-nous le problème, pas le correctif — un problème précis avec une reproduction est plus utile qu'une pull request.

  • 🐛 Signaler un bug : Ouvrez un problème avec une reproduction. La chose la plus utile que vous puissiez nous envoyer.
  • 💡 Proposer une fonctionnalité : Ouvrez un problème — le problème et qui le rencontre, pas l'implémentation.
  • 🔧 Code : Travaillez uniquement sur un problème invité par un mainteneur. Un problème ouvert n'est pas une invitation à le prendre en charge ; les pull requests non sollicitées sont fermées.
  • 📚 Documentation : Les fautes de frappe, les liens cassés et les commandes incorrectes vont directement dans une PR.

Règles complètes, y compris les contributions assistées par IA : CONTRIBUTING.md.

📚 En savoir plus