quantower-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| QUANTOWER_MAX_BARS | No | Maximum number of bars per history request. | 500 |
| QUANTOWER_LOG_LEVEL | No | Log level: debug | info | warn | error (logs to stderr). | info |
| QUANTOWER_READ_ONLY | No | Set to true to force read-only mode even if trading is requested. | false |
| QUANTOWER_BRIDGE_URL | No | URL of the Quantower bridge (loopback only). | http://127.0.0.1:8765 |
| QUANTOWER_RETRY_COUNT | No | Number of retries for idempotent GET requests (never for writes). | 2 |
| QUANTOWER_BRIDGE_TOKEN | No | Bearer token. Takes priority over the token file. Reserved for development; do not commit. | |
| QUANTOWER_CACHE_TTL_MS | No | Read cache TTL in milliseconds (0 disables). | 1000 |
| QUANTOWER_MAX_NOTIONAL | No | Maximum estimated notional per order (0 disables). | 50000 |
| QUANTOWER_TRADING_ENABLED | No | Set to true to register write tools. | false |
| QUANTOWER_BRIDGE_TIMEOUT_MS | No | Timeout per bridge call in milliseconds. | 15000 |
| QUANTOWER_BRIDGE_TOKEN_FILE | No | Token file written by the bridge, re-read on each call. | %LOCALAPPDATA%\quantower-mcp\bridge-token |
| QUANTOWER_DENY_MARKET_ORDERS | No | Set to true to disallow market orders. | false |
| QUANTOWER_MAX_ORDER_QUANTITY | No | Maximum quantity per order (0 disables). | 50 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| quantower_statusA | Vérifie que le bridge QuantowerMcpBridge répond, renvoie la version de la plateforme, le mode du serveur MCP (read_only ou trading) et la liste des connexions actives. À appeler en premier pour diagnostiquer un problème de connexion. |
| quantower_list_connectionsA | Liste les connexions actives de Quantower (brokers / flux de données) avec leur connectionId. Le connectionId est requis ou utile pour la plupart des autres tools (multi-connexion, plan §1.1). |
| quantower_list_accountsA | Liste les comptes Quantower (accountId, connectionId, balance, devise, PnL). Filtrable par connectionId. À utiliser uniquement avec des comptes démo pendant le développement. |
| quantower_search_symbolsA | Recherche des instruments Quantower par texte (nom/code, insensible à la casse). Renvoie symbolId, connectionId, tickSize, lotStep, minLot/maxLot. Utilisez ensuite quantower_get_quote / quantower_get_history avec le symbolId exact. |
| quantower_get_quoteA | Renvoie Bid / Ask / Last / volume et OHLC du jour pour un instrument donné (symbolId exact, ex. « EUR/USD »). La quote est mise en cache une seconde côté serveur MCP. |
| quantower_get_historyA | Renvoie les bougies OHLCV d'un instrument (timeframes : 1m, 5m, 15m, 30m, 1h, 2h, 4h, 1d, 1w). Le nombre de barres est plafonné à QUANTOWER_MAX_BARS (actuellement 500). Cette lecture n'est pas mise en cache : réduisez limit pour les gros historiques. |
| quantower_get_domA | Renvoie la profondeur de marché (Level 2) d'un instrument : listes bids/asks {price, size}. Peut être indisponible selon la connexion ou la licence Quantower. |
| quantower_get_positionsB | Liste les positions ouvertes (positionId, symbolId, accountId, side, quantity, openPrice, NetPnL). Filtrable par connectionId / accountId. |
| quantower_get_ordersA | Liste les ordres actifs (working) : orderId, orderType, status, quantity, filledQuantity, price, triggerPrice. Filtrable par connectionId / accountId. |
| quantower_get_orders_historyA | Historique des ordres terminés (Core.GetOrdersHistory) : statuts filled/cancelled/rejected, quantités exécutées. Filtrable par plage ISO 8601, connectionId / accountId, avec limit. |
| quantower_get_tradesA | Historique des exécutions depuis le login Quantower (Core.Trades) : tradeId, price, quantity, fee, orderId. Filtrable par connectionId / accountId, avec limit. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| briefing-marche | Synthèse compte + positions + cours clés à partir des tools Quantower. |
| revue-positions | Analyse les positions ouvertes et le risque associé. |
| checklist-avant-ordre | Garde-fous à valider avant d'appeler quantower_place_order. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| quantower-connections | Snapshot JSON des connexions actives (connectionId, nom, état). |
| quantower-accounts | Snapshot JSON des comptes (balance, devise, PnL). |
| quantower-positions | Snapshot JSON des positions ouvertes (quantité, PnL, prix d'entrée). |
| quantower-orders | Snapshot JSON des ordres actifs. |
TDQS
Scored across 11 tools
Each tool targets a distinct resource or action: status/diagnostics, connections, accounts, symbol search, quote, history, DOM, positions, orders, order history, and trades. The potentially overlapping get_orders vs get_orders_history vs get_trades are explicitly differentiated (working orders vs terminated orders vs executions).
A consistent quantower_ prefix plus verb_noun pattern (list_*, get_*, search_*) is used across almost all tools. quantower_status breaks the verb_noun pattern but is a minor, understandable deviation for a health-check tool.
11 tools is well-scoped for a trading-platform bridge, covering diagnostics, discovery, market data, and account/order state. Each tool earns its place with no obviously redundant entries.
The surface is read-only (status, list, get, search), yet the server advertises a 'trading' mode; there are no place_order, cancel_order, or modify_order tools. Core read workflows are covered, but the trading side of the stated domain is a notable gap.