trclient-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TR_LOCALE | No | Language of news and document titles. | de |
| TR_BUDGET_EUR | No | Total amount orders may use. No default. | |
| TR_APP_VERSION | No | Set if login fails with 426 CLIENT_VERSION_OUTDATED. | |
| TR_ALLOWED_ISINS | No | Comma-separated allow list of ISINs. No restriction if unset. | |
| TR_DOCUMENTS_DIR | No | Download folder for documents. | ~/trclient-documents |
| TR_MAX_ORDER_EUR | No | Maximum value of one buy. | 500 |
| TR_ORDER_FEE_EUR | No | Fee per order. | 1.0 |
| TR_TRADING_ENABLED | No | Set to '1' to allow real orders. Without it the server is read-only. | 0 |
| TR_MAX_ORDERS_PER_DAY | No | Maximum number of orders per day. | 10 |
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": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_account_statusB | Login state, securities account number and the active trading guardrails. |
| get_portfolioA | All positions of the securities account, grouped by instrument type. |
| get_cashA | Cash balance of the account. |
| get_ordersA | Open orders. With include_terminated=true: finished, cancelled and expired orders instead. |
| get_transactionsA | Latest account transactions (timeline). Pass the cursor from a previous answer as |
| get_available_sizeC | How many units of an instrument can currently be sold. |
| list_documentsA | Documents of the last |
| download_documentsB | Save documents as PDF files in the local folder TR_DOCUMENTS_DIR (default ~/trclient-documents). Without document_ids every document matching the filters is saved. Existing files are kept. |
| get_quoteC | Current order price for an instrument (priceAsk / priceBid in EUR). |
| get_instrumentC | Master data of an instrument: name, type, exchanges, tags. |
| get_price_historyB | Price history (OHLC aggregates) of an instrument. |
| get_performanceC | Price changes of an instrument over the usual reference periods. |
| search_instrumentsB | Search tradable instruments by name, ticker or ISIN. |
| get_newsB | Recent news about an instrument from Trade Republic (in the app language, TR_LOCALE). |
| get_stock_detailsB | Trade Republic's own company details for a stock (description, key figures, analyst ratings). |
| get_market_statusA | Whether an instrument is tradable right now (quote freshness, spread, Trade Republic trading status). |
| wait_for_marketC | Wait (max 300 s) until the instrument has a fresh two-sided quote. |
| wait_for_priceA | Watch the live price (max 300 s) until it reaches |
| get_budget_statusA | Budget ledger of this agent (TR_BUDGET_EUR): committed, remaining, units it bought, order fee. Orders that expired or were cancelled release their reservation automatically. |
| preview_orderA | Validate an order and check it against the guardrails WITHOUT sending it. size is the number of units (fractions allowed). limit_price is required for order_type=limit, stop_price for stopMarket. expiry gtd needs expiry_date (YYYY-MM-DD). Market orders only support expiry gfd. Returns a single-use confirmation_id for place_order. |
| place_orderA | Send a previously previewed order to Trade Republic. REAL MONEY. Only works with a confirmation_id from preview_order (single use, expires). The guardrails are checked again right before sending. |
| cancel_orderA | Cancel an open order by its order_id (from get_orders or place_order). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 22 tools
Each tool targets a distinct resource or action: cash, portfolio, orders, documents, instruments, market status, budget, and order lifecycle. Even the price-related tools are clearly separated by intent (quote, history, performance, market status, wait conditions). No two tools appear to do the same thing.
All tool names follow a consistent snake_case verb_noun pattern: get_*, list_documents, search_instruments, download_documents, wait_for_*, preview_order, place_order, cancel_order. Verbs are specific and consistently placed at the start, making the tool surface predictable.
With 22 tools, the server falls into the 16-25 range that starts to feel heavy. Most tools are individually justified for a broad trading client domain, but the overall count is borderline and could be perceived as cluttered.
The tool set covers the core lifecycle well: account status, cash, portfolio, orders, transactions, document retrieval, instrument research, market data, and order placement/cancellation. The main gap is order modification (update), but cancel-and-replace is a viable workaround.