Connecter Claude et ChatGPT aux prix de l'or en direct avec MCP
Connectez Claude, ChatGPT, Cursor et VS Code aux prix de l'or et des métaux en direct via le serveur MCP MetalAPI : OAuth ou clé API, outils, sécurité, quotas.
Pourquoi un assistant a besoin d'un outil de prix
Demandez le prix de l'or du jour à un assistant conversationnel dépourvu d'outils, et vous obtiendrez l'une de ces trois réponses : un refus, un chiffre tiré de ses données d'entraînement, ou une estimation livrée avec plus d'assurance qu'elle n'en mérite. Aucune n'est utile. Un modèle de langage apprend à partir d'un instantané de textes qui s'arrête des mois avant que vous ne lui parliez, alors que les prix de l'or, de l'argent et du pétrole bougent toutes les quelques secondes tant que les marchés sont ouverts.
La parade habituelle consiste à chercher le prix vous-même et à le coller dans la conversation. Cela fonctionne pour une question, puis atteint vite ses limites. Vous devez vous souvenir de l'unité copiée (once troy ou gramme ?), de la devise et du moment où le chiffre a été relevé. Posez une question complémentaire sur la fourchette du mois dernier, ou demandez une conversion en livres turques, et vous voilà de retour dans le navigateur.
Le Model Context Protocol (MCP) supprime cette étape. L'assistant dispose d'un petit ensemble d'outils qu'il peut appeler de lui-même, et chaque réponse s'appuie sur une réponse fraîche de l'API qui porte son propre horodatage, sa devise de base et son unité. Cet article montre comment connecter Claude, ChatGPT, Claude Code, Cursor et VS Code au serveur MCP MetalAPI, ce que l'assistant peut faire une fois connecté et quelles garanties s'appliquent.
| Aspect | Coller les chiffres à la main | Appeler un outil MCP |
|---|---|---|
| Fraîcheur | Ce que vous avez copié, au moment où vous l'avez copié | Le dernier prix autorisé par votre plan, récupéré au moment de la question |
| Unités et devise | Facile de confondre onces troy, grammes et devises | Arguments base et unit explicites, repris dans la réponse |
| Horodatage | Généralement perdu en route | Chaque réponse inclut timestamp et date |
| Questions complémentaires | Une nouvelle recherche manuelle | L'assistant appelle un autre outil |
| Historique et conversions | Un autre site web ou un tableur | Outils de séries temporelles, OHLC, variation et conversion |
Qu'est-ce que MCP ?
MCP est un protocole ouvert, présenté par Anthropic en 2024 et désormais pris en charge par de nombreuses applications d'IA, qui standardise la manière dont un assistant communique avec des outils et des données externes. Un serveur MCP publie une liste d'outils. Chaque outil a un nom, une description en langage courant, un schéma JSON pour ses arguments et des annotations facultatives comme « lecture seule ». Un client MCP (Claude, ChatGPT, Cursor, VS Code et d'autres) lit cette liste, laisse le modèle décider quand un outil est pertinent, envoie l'appel au serveur et transmet le résultat au modèle.
Le modèle lui-même ne voit jamais vos identifiants et ne communique jamais directement avec l'API. Il produit une requête structurée du type « appeler get_latest_prices avec symbols: XAU et base: EUR », le client l'exécute, et le modèle rédige sa réponse à partir du JSON renvoyé.
Le serveur de MetalAPI se trouve à l'adresse https://metalapi.com/mcp. Il utilise Streamable HTTP, le transport distant défini par la spécification MCP, et il est sans état : chaque appel est une requête HTTPS indépendante avec une réponse JSON, il n'y a donc aucune session de longue durée à maintenir. Le serveur est référencé dans le MCP Registry officiel sous le nom com.metalapi/metalapi. Si vous ouvrez l'URL dans un navigateur, vous êtes redirigé vers la page de présentation IA & MCP.
Se connecter avec OAuth ou utiliser une clé API
Chaque appel au serveur est authentifié. Il existe deux façons de le faire, et la bonne dépend du client :
- OAuth 2.1 (connexion) pour les applications dotées d'un écran de connecteurs, comme Claude et ChatGPT. Le client découvre seul le serveur d'autorisation : un appel non authentifié reçoit une réponse
401avec un en-têteWWW-Authenticatequi pointe vers les métadonnées de ressource protégée du serveur. Le client s'inscrit ensuite par enregistrement dynamique de client et ouvre une page de connexion MetalAPI. Le flux utilise PKCE : aucun secret client n'a besoin d'être intégré à l'application. Vous vous connectez, ou créez un compte gratuit, et approuvez la connexion. - Clé API pour les outils de développement qui permettent de définir des en-têtes HTTP, comme Claude Code, Cursor et VS Code. Vous envoyez la même clé que pour l'API REST, sous la forme
Authorization: Bearer mk_live_….
Les deux voies mènent au même compte, au même plan et au même quota. Il existe une différence dans la liste des outils : create_api_key n'est proposé que sur les connexions OAuth. Une clé copiée dans un fichier de configuration ne doit jamais pouvoir générer d'autres clés : une connexion par clé voit donc douze outils au lieu de treize.
Les connexions OAuth sont listées dans votre tableau de bord sous Settings → Connected apps, où vous pouvez déconnecter chacune d'elles. Les clés API peuvent être renouvelées ou révoquées sous API keys. Traitez une clé placée dans un fichier de configuration MCP exactement comme une clé dans votre code source.
Connecter Claude et ChatGPT
Pour Claude sur claude.ai et dans Claude Desktop :
- Ouvrez Settings → Connectors et choisissez Add custom connector.
- Nommez-le MetalAPI et saisissez
https://metalapi.com/mcp. - Cliquez sur Connect, connectez-vous à MetalAPI (ou créez un compte gratuit) et cliquez sur Allow.
Pour ChatGPT, ouvrez Settings → Apps & Connectors et créez un connecteur en mode développeur avec l'URL https://metalapi.com/mcp et l'authentification OAuth. ChatGPT ouvre la page de connexion de MetalAPI ; approuvez la connexion et les outils deviennent disponibles dans vos conversations. La possibilité d'ajouter des connecteurs personnalisés dépend de votre plan ChatGPT et, dans un espace de travail, de ce qu'autorise l'administrateur.
Les noms de menus des deux applications changent de temps en temps. Le guide de configuration MCP est tenu à jour avec les étapes actuelles pour chaque client.
Lors de votre première conversation, il est utile de nommer la source (« Avec MetalAPI, quel est… ») pour que l'assistant se tourne vers l'outil plutôt que vers sa mémoire. Ensuite, la plupart des assistants choisissent l'outil d'eux-mêmes dès qu'une question porte sur un prix.
Connecter Claude Code, Cursor et VS Code
Les assistants de code utilisent généralement une clé API. Créez-en une dans le tableau de bord (le plan Free suffit pour commencer) et utilisez une clé distincte pour chaque outil, afin de pouvoir en révoquer une sans casser les autres.
Dans Claude Code, ajoutez le serveur depuis le terminal :
claude mcp add --transport http metalapi https://metalapi.com/mcp \
--header "Authorization: Bearer YOUR_API_KEY"Si vous préférez ne pas stocker de clé, ajoutez le serveur sans --header et lancez /mcp dans Claude Code pour vous connecter via OAuth.
Dans Cursor, ajoutez le serveur à ~/.cursor/mcp.json, ou à .cursor/mcp.json dans un projet :
{
"mcpServers": {
"metalapi": {
"url": "https://metalapi.com/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}Dans VS Code avec GitHub Copilot, enregistrez ce qui suit sous .vscode/mcp.json. Grâce au bloc inputs, VS Code demande la clé une seule fois et la stocke de façon sécurisée : la clé n'apparaît donc jamais dans le fichier lui-même :
{
"inputs": [
{ "type": "promptString", "id": "metalapi-key", "description": "MetalAPI API key", "password": true }
],
"servers": {
"metalapi": {
"type": "http",
"url": "https://metalapi.com/mcp",
"headers": { "Authorization": "Bearer ${input:metalapi-key}" }
}
}
}Les autres clients qui prennent en charge les serveurs MCP distants via Streamable HTTP, comme Windsurf, suivent le même principe : l'URL du serveur, plus un en-tête Bearer ou une connexion OAuth.
À quoi ressemble une conversation
Une fois connecté, vous posez vos questions en langage naturel et l'assistant choisit un outil et ses arguments. Quelques demandes typiques et les appels qu'elles entraînent :
| Votre question | Outil | Arguments |
|---|---|---|
| Quel est le prix de l'or au gramme en euros en ce moment ? | get_latest_prices | symbols: XAU, base: EUR, unit: gram |
| Comment l'argent a-t-il évolué ces deux dernières semaines ? | get_timeseries ou get_fluctuation | symbols: XAG, start_date, end_date |
| Convertis 2,5 onces troy de platine en livres turques. | convert | from: XPT, to: TRY, amount: 2.5 |
| Quels ont été l'ouverture, le plus haut, le plus bas et la clôture de l'or aujourd'hui ? | get_ohlc | symbols: XAU |
| Combien coûte l'or 18 carats au gramme en livres sterling ? | get_carat_prices | base: GBP (plans payants) |
| Quel est mon plan et combien de quota me reste-t-il ? | get_account | Aucun |
Les outils de prix renvoient un JSON compact. Le bloc rates de l'API REST liste chaque symbole deux fois, sous forme de prix et de son inverse, par compatibilité avec les anciennes intégrations. Le serveur MCP ne conserve que les prix, indexés par symbole, sous prices. Cela divise à peu près par deux le nombre de tokens et supprime la cause la plus fréquente de mauvaise lecture des données. Un appel à get_latest_prices avec symbols: XAU,XAG, base: EUR et unit: gram renvoie quelque chose comme ceci :
{
"success": true,
"timestamp": 1792834892,
"date": "2026-10-24",
"base": "EUR",
"unit": "gram",
"rate_limit": {
"limit": 10000,
"remaining": 9874,
"reset": 1793491200,
"used": 126,
"plan": "Standard",
"reset_date": "2026-11-01T00:00:00.000Z"
},
"prices": {
"XAU": 110.4064149,
"XAG": 1.489616277
}
}Les chiffres de cet article sont donnés à titre d'illustration. Les vraies réponses utilisent les derniers prix autorisés par votre plan.
Comme chaque réponse porte timestamp, base et unit, une bonne réponse indique que l'or valait environ 110 € le gramme à un moment donné, et pas seulement « 110 € ». Si une réponse omet ce contexte, demandez-le.
Les assistants peuvent aussi enchaîner les appels. Si vous lui demandez de comparer le ratio or/argent d'aujourd'hui à celui d'il y a un mois, un assistant peut récupérer les deux métaux aux deux dates et faire la division lui-même. Si vous demandez un graphique, un client capable d'exécuter du code peut le tracer à partir d'un résultat de get_timeseries.
Les 13 outils
Le serveur expose treize outils. Sept renvoient des données de marché et comptent chacun pour une requête dans l'allocation mensuelle de votre plan, exactement comme un appel REST. Les autres sont gratuits.
| Outil | Rôle | Quota |
|---|---|---|
get_latest_prices | Derniers prix des métaux, de l'énergie, des devises et des cryptos, dans n'importe quelle devise de base et unité de masse | 1 requête |
get_historical_prices | Prix de clôture d'un jour passé | 1 requête |
convert | Convertit un montant entre deux symboles, au dernier prix ou à une date passée | 1 requête |
get_timeseries | Prix de clôture quotidiens entre deux dates (jusqu'à 30 jours par appel sur Free, 365 sur les plans payants) | 1 requête |
get_fluctuation | Prix de début et de fin, variation absolue et en pourcentage entre deux dates | 1 requête |
get_ohlc | Ouverture, plus haut, plus bas et clôture d'une journée | 1 requête |
get_carat_prices | Prix de l'or par carat, par exemple 22K ou 18K (plans payants) | 1 requête |
list_symbols | Tous les codes de symboles avec leur nom, leur catégorie et leur unité | Gratuit |
get_account | Votre plan, votre allocation mensuelle, votre consommation et la date de réinitialisation | Gratuit |
list_plans | Tous les plans avec leurs limites et leurs prix mensuels et annuels | Gratuit |
list_api_keys | Vos clés API actives, masquées | Gratuit |
create_api_key | Crée une clé pour vos propres applications ; connexions OAuth uniquement ; demande confirmation | Gratuit |
get_upgrade_link | Prépare un lien de paiement Stripe Checkout, ou un lien vers le portail de facturation pour les abonnés ; demande confirmation | Gratuit |
Lorsqu'un client se connecte, le serveur envoie aussi de courtes instructions : la signification des codes de symboles, le fait que les prix des métaux sont exprimés à l'once troy sauf si une unité est indiquée, et le fait que les outils de données consomment du quota. Les clients les transmettent au modèle, et c'est pourquoi un assistant bien conçu ne demande que les symboles dont il a besoin. Moins de symboles, ce sont des réponses plus courtes et moins de tokens.
Sécurité : lecture seule par défaut, aucun paiement
Connecter un assistant à un compte soulève une question légitime : que peut-il modifier ? Sa conception permet d'y répondre en peu de mots.
- Onze des treize outils sont en lecture seule. Ils portent l'annotation MCP
readOnlyHintet ne peuvent lire que les prix, votre plan, votre consommation et les détails masqués de vos clés. - Les deux outils d'écriture demandent d'abord confirmation.
create_api_keyetget_upgrade_linksont marqués comme des actions qui modifient quelque chose : les clients MCP vous demandent donc confirmation avant de les exécuter. - Le serveur ne facture jamais rien.
get_upgrade_linkcrée une session Stripe Checkout pour le plan demandé, ou un lien vers le portail de facturation si vous êtes déjà abonné, et renvoie l'URL. C'est vous qui l'ouvrez, vérifiez le prix et payez. L'assistant ne peut pas finaliser un paiement. - Les nouvelles clés ne s'affichent qu'une fois. Une clé créée via
create_api_keyest renvoyée en entier une seule fois, comme dans le tableau de bord, et seul son hash est conservé. - Périmètre restreint. La connexion n'accède qu'à MetalAPI : prix, plan, consommation et clés API. Le serveur ne voit jamais vos conversations, vos fichiers ni vos autres connecteurs.
- Journalisé comme le trafic de l'API. Les appels de données de marché apparaissent dans le journal des requêtes de votre tableau de bord sous la forme
/mcp/suivi du nom de l'outil, à côté de vos requêtes REST.
Une habitude générale vaut la peine d'être conservée avec n'importe quel serveur MCP : lisez les demandes de confirmation affichées par votre client au lieu de les approuver par réflexe, et supprimez les connecteurs que vous n'utilisez plus.
Quotas, fraîcheur et plans
Les appels MCP puisent dans la même allocation que l'API REST. Un appel d'outil de données coûte une requête, quel que soit le nombre de symboles renvoyés, tandis que list_symbols et les outils de compte ne coûtent rien. Les limites par minute s'appliquent aussi, à partir de 10 requêtes par minute sur Free.
Les prix sont aussi frais que votre plan le permet. Sur le plan Free, l'assistant voit des prix quotidiens ; les plans payants les actualisent de toutes les 30 minutes jusqu'à toutes les 5 secondes :
| Plan | Prix / mois | Requêtes / mois | Intervalle de mise à jour |
|---|---|---|---|
| Free | 0 $ | 100 | Quotidien |
| Lite | 4,99 $ | 1 000 | 30 minutes |
| Standard | 11,99 $ | 10 000 | 10 minutes |
| Advanced | 24,99 $ | 50 000 | 1 minute |
| Pro | 49,99 $ | 100 000 | 1 minute |
| Ultra | 99,99 $ | 500 000 | 15 secondes |
| Business | 149,99 $ | 500 000 | 15 secondes |
| Enterprise | 299,99 $ | 1 500 000 | 5 secondes |
Cent requêtes par mois suffisent pour des questions occasionnelles dans une conversation. Si vous utilisez un assistant pour des analyses qui récupèrent de nombreuses séries, ou si vous le branchez à un agent exécuté selon un planning, demandez-lui de temps en temps get_account : il indique les requêtes utilisées, les requêtes restantes et la date de réinitialisation de l'allocation. Lorsque l'allocation mensuelle est épuisée, les outils de données renvoient une erreur de quota dépassé avec un lien de mise à niveau jusqu'au 1er du mois (UTC), tandis que les outils de compte continuent de fonctionner. La page des tarifs présente la comparaison complète.
Démarrer ne prend que quelques minutes : inscrivez-vous pour obtenir un compte gratuit, suivez le guide de configuration MCP pour votre client et posez votre première question. La page IA & MCP résume la configuration, et la documentation de l'API décrit les endpoints REST qui se trouvent derrière chaque outil.
Essayez avec vos propres données
Créez un compte gratuit et envoyez votre première requête en moins de deux minutes. 100 requêtes par mois, sans carte bancaire.
À lire aussi
Spot, bid, ask et spread : comment sont cotés les métaux précieux
Spot, bid, ask, mid et spread pour l'or, l'argent, le platine et le palladium : comment les négociants cotent et comment obtenir et afficher le bid/ask par API.
Prix du cuivre, de l'aluminium, du zinc et du pétrole par API : le guide du développeur
Prix du cuivre, de l'aluminium, du zinc, de l'acier, du pétrole et du gaz par API : unités de marché, normalisation, contrats à terme, conversions et exemples.
Comment choisir une API de prix des métaux précieux : 12 questions à poser
Une checklist neutre pour choisir une API de prix des métaux précieux : sources, fraîcheur, historique, unités, bid/ask, limites, tarifs, sécurité et MCP.