@alexbuzo/dzengi-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DZENGI_ENV | No | Selects the official adapter host. Accepted values: demo or live. Defaults to demo. | demo |
| DZENGI_API_KEY | No | Signed-request key. Public reads do not need it; signed reads and mutations require both this and DZENGI_API_SECRET. | |
| DZENGI_BASE_URL | No | Official host override. Only set to an endpoint you fully trust; custom hosts require DZENGI_ALLOW_CUSTOM_BASE_URL=true. Signed reads and mutations send credentials to this host. | |
| DZENGI_LOG_LEVEL | No | Secret-free stderr verbosity. Accepted values: debug, info, warn, error. Defaults to info. | info |
| DZENGI_API_SECRET | No | HMAC secret. Never returned in status or errors. Required with DZENGI_API_KEY for signed requests. | |
| DZENGI_TIMEOUT_MS | No | HTTP timeout in milliseconds. Defaults to 10000, integer from 100 to 120000. | 10000 |
| DZENGI_ALLOW_TRADE | No | Master mutation gate. Accepted values: true or false. Defaults to false. | false |
| DZENGI_API_VERSION | No | API version. Accepted values: 1 or 2. Defaults to 1 for demo and 2 for live. Demo v2 is rejected. | |
| DZENGI_MAX_LEVERAGE | No | Maximum requested leverage. Defaults to 1, up to 1000. | 1 |
| DZENGI_READ_RETRIES | No | Bounded retries for transient reads only. Defaults to 2, integer from 0 to 5. | 2 |
| DZENGI_AUDIT_LOG_PATH | No | Optional append-only JSONL mutation audit path. Must resolve to a regular file. Newly created files use mode 600. | |
| DZENGI_RECV_WINDOW_MS | No | Signed request timing window in milliseconds. Defaults to 5000, integer from 1 to 60000. | 5000 |
| DZENGI_ALLOWED_SYMBOLS | No | Optional trimmed, case-sensitive comma-separated symbol allowlist. Copy symbols exactly from dzengi_list_instruments. | |
| DZENGI_ALLOW_LIVE_TRADING | No | Required in addition to the master gate for live trading. Accepted values: true or false. Defaults to false. | false |
| DZENGI_MAX_ORDER_NOTIONAL | No | Maximum order notional in quote currency. Mandatory when live trading is enabled. Must be a positive plain decimal. | |
| DZENGI_REQUIRE_CONFIRMATION | No | Requires confirm: true on every mutation; live trading enforces true at startup. Accepted values: true or false. Defaults to true. | true |
| DZENGI_ALLOW_CUSTOM_BASE_URL | No | Explicitly permits a non-official, fully trusted host. Accepted values: true or false. Defaults to false. Custom non-loopback hosts must use HTTPS. | false |
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
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| dzengi_get_runtime_statusA | Return credential-safe runtime configuration and enabled safety gates. |
| dzengi_get_server_timeA | Read the current Dzengi server time and refresh the client's clock offset. |
| dzengi_list_instrumentsA | Read exchange instruments with bounded local pagination; never return an unbounded exchangeInfo payload. |
| dzengi_get_tickerA | Read the public 24-hour ticker, optionally filtered by a normalized symbol. |
| dzengi_get_order_bookA | Read a bounded public order book snapshot for one symbol. |
| dzengi_get_candlesB | Read bounded candlesticks for one symbol and interval. |
| dzengi_get_trading_feesA | Read public trading fee information, optionally filtered by symbol. |
| dzengi_get_trading_limitsA | Read public broker trading limits, optionally filtered by symbol. |
| dzengi_get_leverage_settingsB | Read supported leverage settings for one normalized symbol. |
| dzengi_get_accountA | Read the signed account permissions and balances without changing account state. |
| dzengi_list_open_ordersA | Read currently open orders, optionally filtered by a normalized symbol. |
| dzengi_get_orderB | Read one signed order by its required symbol and order ID. |
| dzengi_list_positionsA | Read current signed leverage positions. |
| dzengi_list_tradesB | Read bounded signed user trades for one symbol and optional time filters. |
| dzengi_list_position_historyB | Read bounded signed position history with optional time and symbol filters. |
| dzengi_preflight_orderA | Validate an order intent against fresh broker metadata and configured policy without placing it. |
| dzengi_place_orderA | Place an order with a financial side effect. This mutation is sent once; an unknown outcome requires account reconciliation before any retry. |
| dzengi_cancel_orderA | Cancel an order with a financial side effect. This mutation is sent once; an unknown outcome requires account reconciliation before any retry. |
| dzengi_edit_orderB | Edit an exchange order with a financial side effect. This mutation is sent once; an unknown outcome requires account reconciliation before any retry. |
| dzengi_update_orderA | Update leverage-order protection with a financial side effect. This mutation is sent once; an unknown outcome requires account reconciliation before any retry. |
| dzengi_close_positionA | Close a leverage position with a financial side effect. This mutation is sent once; an unknown outcome requires account reconciliation before any retry. |
| dzengi_update_positionA | Update leverage-position protection with a financial side effect. This mutation is sent once; an unknown outcome requires account reconciliation before any retry. |
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
Most tools are clearly separated by resource and action (e.g., get_order vs list_open_orders vs place_order). The only potential confusion is between dzengi_edit_order and dzengi_update_order, which both target orders but have different meanings (exchange order edit vs leverage-order protection update), and between dzengi_close_position and dzengi_update_position, which are distinct but could be misread.
All tools follow a consistent dzengi_<verb>_<noun> pattern with clear verbs like list, get, place, cancel, edit, update, close. The naming convention is uniform and predictable across the entire set.
22 tools is on the higher end but appropriate for a trading exchange server covering public market data, account data, order lifecycle, and position management. It is slightly heavy but each tool maps to a distinct exchange operation.
The surface covers the core trading lifecycle: market data, account info, order placement/cancellation/editing, position management, and preflight validation. Minor gaps include no explicit deposit/withdrawal or historical order archive, but the main workflows are complete.