Longbridge

officiel

Marchés US/HK — 110 outils : cotations en temps réel, options, ordres, fondamentaux, alertes, DCA et portefeuille

Que pouvez-vous faire avec Longbridge MCP ?

  • Cotations en temps réel — Demandez des cotations en direct ou historiques, des chandeliers, des profondeurs de marché et des données sur les options pour les symboles US et HK via l’outil quote.
  • Opérations de trading — Passez, annulez ou remplacez des ordres, y compris des combinaisons d’options multi-jambes, et consultez les positions, les soldes et les exécutions.
  • Recherche fondamentale — Récupérez les états financiers, les dividendes, les prévisions de BPA, les valorisations et les notations des analystes pour les entreprises.
  • Analyse de portefeuille — Obtenez des résumés de profits et pertes, des gains réalisés et des taux de change pour votre compte Longbridge.
  • Alertes de prix — Créez, listez, activez ou supprimez des alertes de prix pour suivre les mouvements du marché.
  • Trading DCA et en grille — Configurez, mettez en pause ou arrêtez des plans d’achat périodique (DCA) et des stratégies de trading en grille.

Serveur MCP hébergé

npx add-mcp 'https://mcp.longbridge.com'

S’installe dans Claude Code, Codex, Cursor et plus

Documentation

Longbridge

Serveur MCP Longbridge

ChatGPT App Claude Connector Official MCP Registry Smithery LobeHub longbridge-mcp MCP server License Longbridge

Serveur MCP officiel pour le courtier Longbridge. 164 outils couvrant les cotations en temps réel, les options, le routage des ordres, les fondamentaux, les notations des analystes, les calendriers, les introductions en bourse (IPO), les alertes de prix, les plans DCA, le trading en grille, l'analyse de portefeuille et les listes de partage communautaires — pour les marchés américains et hongkongais. Conçu en Rust avec rmcp et axum.


Disponible dès maintenant dans ChatGPT et Claude

Longbridge est officiellement répertorié dans le répertoire des applications ChatGPT et le répertoire des connecteurs Claude.
Parlez aux marchés en langage naturel — cotations, options, fondamentaux et votre propre portefeuille —
sans fichiers de configuration à modifier ni jetons à coller.

Ajoutez-le en un seul endroitPuis demandez simplement
ChatGPTParamètres → Applications et connecteurs → ajoutez Longbridge« Comment se négocie NVDA aujourd'hui ? » · « Affichez mes positions HK »
ClaudeParamètres → Connecteurs → ajoutez Longbridge (web · bureau · mobile)« Comparez les valorisations d'AAPL et MSFT » · « Y a-t-il des IPO cette semaine ? »

Connectez-vous une seule fois avec votre compte Longbridge. Chaque requête passe par le même endpoint hébergé et sécurisé OAuth 2.1 décrit ci-dessous — données de marché en lecture seule ainsi que tous les outils de compte, de portefeuille et de trading, tous contrôlés par vos propres identifiants.


Points forts

  • 164 outils, un seul endpoint — cotations, options, routage des ordres, fondamentaux, recherche analystes, screeneurs, IPO, alertes, DCA, trading en grille et analyse de portefeuille pour les marchés américains et hongkongais.
  • Sans état par conception — chaque requête transmet son jeton Bearer directement au SDK Longbridge. Aucune session, aucune base de données, rien n'est stocké côté serveur.
  • OAuth 2.1, découverte automatique — métadonnées de ressource protégée RFC 9728 et de serveur d'autorisation RFC 8414 ; les clients complètent le flux sans jeton à coller.
  • Réponses propres et typées — champs en snake_case, horodatages RFC 3339, symboles lisibles et schémas de réponse typés disponibles en tant que ressources MCP.

Conçu en Rust avec rmcp et axum.

Filtrer les réponses des outils avec jq

Chaque outil accepte une chaîne _jq optionnelle dans ses arguments. L'expression s'exécute sur le JSON complet renvoyé, après la sérialisation normale de la réponse. Le nom _jq est réservé au filtrage des réponses pour éviter les conflits avec les paramètres métier. Les instructions d'utilisation sont envoyées une fois dans le instructions de la réponse MCP initialize ; chaque schéma d'outil ne déclare que le nom et le type du paramètre optionnel. Par exemple :

{
  "name": "quote",
  "arguments": {
    "symbols": ["AAPL.US", "MSFT.US"],
    "_jq": "map({symbol, last_done})"
  }
}

Utilisez .data[:5] pour prendre les cinq premières entrées d'un tableau data, .data | map(select(.price > 10)) pour sélectionner des lignes, ou {total: .total} pour projeter des champs. Les expressions utilisent la syntaxe compatible jq du moteur jaq intégré ; aucun exécutable jq séparé n'est nécessaire.

  • Omettez _jq (ou passez null) pour conserver la réponse d'origine.
  • Une valeur de sortie est renvoyée directement, plusieurs valeurs sous forme de tableau, et aucune valeur sous forme de []. Les scalaires et les tableaux sont du texte JSON ; les objets apparaissent également dans structuredContent, contenant uniquement les champs filtrés.
  • Les réponses en texte brut sont disponibles sous forme de chaînes JSON. Plusieurs blocs de contenu sans contenu structuré sont disponibles sous forme de tableau.
  • Les erreurs d'outil et les explications de permission/absence de données restent non filtrées.
  • Les expressions vides, invalides ou non-chaînes sont rejetées avant l'exécution de l'outil. Si le filtrage échoue à l'exécution, la réponse indique explicitement que l'outil a déjà été exécuté. Ne réessayez pas automatiquement les écritures telles que le passage d'un ordre.
  • L'accès à l'environnement, les importations de fichiers système et les filtres de journalisation sont indisponibles. La sortie est limitée à 10 000 valeurs et 8 Mio ; dépasser une limite renvoie une erreur plutôt qu'un résultat partiel.

Parce que les filtres peuvent modifier la forme de la réponse, les outils n'annoncent pas de outputSchema fixe. Les schémas typés d'origine restent disponibles via resources/list et resources/read à lb://tools/{tool-name}/output-schema pour les outils basés sur des schémas.

Connecter votre propre client

Longbridge exécute un endpoint hébergé à https://mcp.longbridge.com — pointez n'importe quel client MCP dessus et complétez OAuth lorsque vous y êtes invité. L'autorisation est découverte automatiquement via RFC 9728 ; il n'y a aucun jeton à coller.

Claude Code

claude mcp add --transport http longbridge https://mcp.longbridge.com

Claude Desktop — ajoutez à claude_desktop_config.json, puis redémarrez :

{ "mcpServers": { "longbridge": { "url": "https://mcp.longbridge.com" } } }

Cursor · Cline · Windsurf · Zed · autres clients — pointez-les vers https://mcp.longbridge.com avec le transport streamable-http.

Plus de commandes Claude Code
# Local self-hosted instance (see Self-hosting below)
claude mcp add --transport http longbridge-local http://localhost:8000/mcp

claude mcp list                  # registered servers
claude mcp get longbridge        # config + auth status
claude mcp remove longbridge     # unregister
claude mcp logout longbridge     # re-trigger OAuth after revocation

Lors de la première utilisation, le client lit le défi WWW-Authenticate, récupère /.well-known/oauth-protected-resource (RFC 9728) et ouvre votre navigateur pour le flux OAuth Longbridge. Les jetons sont mis en cache par session et actualisés automatiquement.

Les 164 outils

Vingt catégories couvrant les données de marché, le trading, la recherche et la gestion de compte.

CatégorieNombreCouverture
Cotation32Cotations en temps réel et historiques, chandeliers, profondeur, courtiers, options, warrants, listes de suivi, flux de capitaux, température du marché, positions courtes, volume d'options
Fondamental33États financiers/rapports, segments d'activité, vues institutionnelles, pairs du secteur/valorisation, dividendes, prévisions BPA, valorisations et comparaison de valorisations, informations société/dirigeants, actionnaires, opérations sur titres, indicateurs opérationnels
Négociation15Soumission/annulation/remplacement d'ordres, ordres combinés multi-jambes d'options, positions, solde, exécutions, flux de trésorerie, marge
Marché15Statut du marché, classement secteur/plus fortes variations, avoirs des courtiers, prime A/H, statistiques de négociation, anomalies, opérations courtes/marge, constituants d'indices
DCA9Création/mise à jour/pause/reprise/arrêt de plan d'achat périodique, historique d'exécution, statistiques, vérification de prise en charge
Grille11Soumission/remplacement/annulation/suspension/redémarrage d'ordres de trading en grille, lectures de liste/détail/historique de déclenchement, informations de configuration par symbole, consentement de stratégie unique
Liste de partage8CRUD de listes de partage communautaires, ajout/suppression/tri de membres, listes populaires
IPO7Souscriptions IPO, calendrier, actions cotées, détail d'ordre, analyse des profits/pertes
Contenu7Liste/détail d'actualités, CRUD de sujets de discussion et réponses
Alerte5CRUD d'alertes de prix (ajout, suppression, activation, désactivation, liste)
Screener5Recherche de screener d'actions, indicateurs, recommandation/gestion de stratégie
Portefeuille4Taux de change, analyse des profits/pertes (résumé, détail, réalisé)
ATM3Cartes bancaires, relevés de retraits, relevés de dépôts
Macrodata2Liste et détail d'indicateurs macroéconomiques
Recherche2Recherche d'actualités, recherche de sujets communautaires
Relevé2Liste et exportation de relevés de compte
Calendrier1Calendrier financier (résultats, dividendes, IPO, données macro, fermetures)
Quant1Exécuter un script d'indicateur quantitatif sur des données historiques de chandeliers
Authentification1Échange de code OAuth pour les clients qui ne peuvent pas compléter une redirection de navigateur
Utilitaire1Heure UTC actuelle

Auto-hébergement

Vous préférez votre propre instance ? Exécutez l'image publiée :

docker run -p 8443:8443 \
  -v /path/to/certs:/certs:ro \
  ghcr.io/longbridge/longbridge-mcp \
  --bind 0.0.0.0:8443 \
  --base-url https://mcp.example.com \
  --tls-cert /certs/cert.pem \
  --tls-key /certs/key.pem

Définissez --base-url sur votre URL accessible de l'extérieur sur tout déploiement public — elle est publiée dans les métadonnées OAuth que les clients utilisent pour découvrir le serveur d'autorisation. Elle est par défaut http://localhost:{port}, que les clients distants ne peuvent pas utiliser.

Ou construisez à partir des sources : cargo build --release && ./target/release/longbridge-mcp.

Configuration et variables d'environnement

La configuration se trouve à ~/.longbridge/mcp/config.json (remplacez le répertoire avec LONGBRIDGE_MCP_CONFIG_DIR). Les drapeaux CLI ont priorité. Lorsque tls_cert et tls_key sont tous deux définis, le serveur exécute HTTPS, sinon HTTP ; base_url est par défaut https://localhost:{port} avec TLS ou http://localhost:{port} sans.

OptionClé de configurationDrapeau CLIDéfautDescription
Adresse de liaisonbind--bind127.0.0.1:8000Adresse d'écoute du serveur HTTP
URL de basebase_url--base-urlautoURL publique de base pour les métadonnées de ressources
Répertoire de journauxlog_dir--log-dir(stderr)Répertoire pour les fichiers journaux rotatifs
Certificat TLStls_cert--tls-cert(aucun)Fichier de certificat PEM pour HTTPS
Clé privée TLStls_key--tls-key(aucun)Fichier de clé privée PEM pour HTTPS
Amont canaricanary--canaryfalseCommuniquer avec l'environnement canari Longbridge (*.longbridge.xyz). --canary=false force la production même lorsque le fichier de configuration l'active

L'environnement Chine continentale (*.longbridge.cn) n'est pas un drapeau : il est sélectionné automatiquement lorsque LONGBRIDGE_REGION=cn est défini (la même variable utilisée par le SDK), donc un cluster continental n'a besoin d'aucun réglage dédié.

Les endpoints amont sont fixés par l'environnement sélectionné :

Production (défaut)Canari (--canary)Continent (LONGBRIDGE_REGION=cn)
OpenAPIhttps://openapi.longbridge.comhttps://openapi-global.longbridge.xyzhttps://openapi.longbridge.cn
WebSocket de cotationswss://openapi-quote.longbridge.com/v2wss://openapi-global-quote.longbridge.xyz/v2wss://openapi-quote.longbridge.cn/v2
WebSocket de négociationwss://openapi-trade.longbridge.com/v2wss://openapi-global-trade.longbridge.xyz/v2wss://openapi-trade.longbridge.cn/v2
Page OAuth / connexionopenapi.longbridge.com / open.longbridge.comopenapi-global.longbridge.xyz / open.longbridge.xyzopenapi.longbridge.cn / open.longbridge.cn

Le canari utilise la passerelle -global, pas openapi.longbridge.xyz : seule la première est derrière CloudFront et effectue le routage de centre de données x-dc-region, dont ce serveur dépend pour servir les identifiants préfixés us_ et ap_ depuis un seul processus.

Le canari et le continent épinglent chaque URL ci-dessus au démarrage ; la production s'en remet à la résolution du SDK, sauf qu'un identifiant us_ sans remplacement amont est épinglé à la passerelle globale .com. Voir src/endpoints.rs pour les règles de sélection exactes.

Variables d'environnement avancées — la plupart des déploiements n'y touchent jamais ; elles existent pour le débogage du SDK et les déploiements edge/entrée globale.

VariableDéfautDescription
LONGBRIDGE_MCP_CONFIG_DIR~/.longbridge/mcpRépertoire du fichier de configuration
LONGBRIDGE_PUBLIC_HOSTS(aucun)Noms d'hôtes séparés par des virgules acceptés depuis l'en-tête X-Host injecté en périphérie ; les requêtes correspondantes renvoient cet hôte dans le défi 401 / les métadonnées RFC 9728. Non défini = X-Host ignoré
LONGBRIDGE_GLOBAL_OAUTH_URL(aucun)URL du serveur d'autorisation annoncée aux requêtes arrivant via un X-Host sur liste blanche (entrée globale à domaine unique). Non défini = repli sur l'URL de base OpenAPI du mode
LONGBRIDGE_MCP_QUOTE_WS_IDLE_TTL_SECS600Secondes d'inactivité avant l'éviction d'un contexte WebSocket de cotations en cache
LONGBRIDGE_MCP_QUOTE_WS_MAX_CONTEXTS1024Nombre maximal de contextes WebSocket de cotations en cache par processus serveur
LONGBRIDGE_MCP_LOG_PAYLOADS(non défini)1 lève les plafonds de journalisation des charges utiles (voir ci-dessous). Ne définissez jamais cela en production
LONGBRIDGE_LOG_PATH(aucun)Chemin de journal interne du SDK. Laissez non défini en production — le SDK écrit des corps de requête/réponse non filtrés à cet endroit
Journalisation et données clients Les requêtes et réponses MCP transportent des données clients — soldes de trésorerie, positions, historique des ordres — et les trames SDK en amont transportent des jetons d'accès. Rien de tout cela ne doit se retrouver dans un fichier journal, c'est pourquoi le serveur plafonne les cibles de journalisation qui pourraient les afficher, indépendamment de `RUST_LOG` :
CiblePlafondCe qu'elle afficherait autrement
longbridge_httpcliwarnRequête OpenAPI et corps de réponse complets (INFO)
longbridge_wscliwarnChaque trame WebSocket, jeton d'authentification inclus (INFO)
longbridge::tradewarnÉvénements de poussée d'ordres (INFO)
rmcpinfoRequêtes MCP décodées et résultats d'outils complets (DEBUG), trames JSON-RPC brutes (TRACE)

Ainsi, augmenter la verbosité est sans danger : RUST_LOG=debug (ou trace) vous donne les journaux du serveur lui-même sans fuite de données clients. Deux commutateurs contrecarrent cela, tous deux désactivés par défaut — LONGBRIDGE_MCP_LOG_PAYLOADS=1 (supprime les plafonds ; à utiliser uniquement contre un compte de test en local) et LONGBRIDGE_LOG_PATH (fait écrire au SDK des corps non filtrés dans ce répertoire ; le serveur émet un avertissement au démarrage lorsqu'il est défini).

Points de terminaison HTTP, authentification & métriques

Le serveur attend un jeton d'accès OAuth Longbridge dans Authorization: Bearer <token>. En cas d'authentification manquante ou invalide, il renvoie 401 avec un en-tête WWW-Authenticate pointant vers les métadonnées de la ressource protégée, qui dirigent les clients vers le serveur d'autorisation OAuth Longbridge.

Envoyez x-papertrading: true (ou 1) sur une requête pour l'exécuter contre l'environnement de trading simulé. L'amont rejette une requête de trading simulé faite avec un jeton d'argent réel, donc l'en-tête est une garde de sécurité plutôt qu'un commutateur de routage : il ne peut que restreindre ce qu'un jeton peut faire. LONGBRIDGE_PAPERTRADING=true l'active pour tout le déploiement à la place.

MéthodeCheminDescription
GET/.well-known/oauth-protected-resourceMétadonnées de ressource protégée (RFC 9728)
GET/.well-known/oauth-authorization-serverMétadonnées du serveur d'autorisation (RFC 8414) ; annonce les points de terminaison directs d'autorisation/enregistrement Longbridge et les points de terminaison proxy de jeton/révocation
POST/oauth2/tokenProxy de jeton OAuth ; dérive x-dc-region du code/jeton d'actualisation, par défaut AP
POST/oauth2/revokeProxy de révocation OAuth ; dérive x-dc-region du jeton, par défaut AP
GET/metricsMétriques Prometheus
POST/GET/DELETE/mcpPoint de terminaison MCP Streamable HTTP (nécessite un jeton Bearer)

Métriques Prometheus : mcp_tool_calls_total (compteur), mcp_tool_call_duration_seconds (histogramme) et mcp_tool_call_errors_total (compteur) — chacune étiquetée par tool_name.

Développement

cargo +nightly fmt      # format
cargo clippy            # lint
cargo test              # test

Licence

Publié sous la licence MIT.