Skip to main content
Glama
SirAdlerBD

saxo-mcp

by SirAdlerBD

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SAXO_ENVNo`sim` (default). `live` is refused unless `SAXO_ALLOW_LIVE=1` is also set.sim
SAXO_APP_KEYYesThe AppKey shown for your app in the Saxo developer portal.
SAXO_TRADINGNo`disabled` (default) or `enabled`. Anything else is rejected at startup.disabled
SAXO_ALLOW_LIVENoSet to `1` to allow `SAXO_ENV=live`. Without this, `live` is refused.
SAXO_TOKEN_FILENoOptional. Where tokens are stored. Default `./.saxo-tokens.json`, created with mode `0600`../.saxo-tokens.json
SAXO_REDIRECT_URIYesMust match the redirect URL registered on the app. Must be `http://localhost:<port>/...`.

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

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_account_summaryA

Basic information about the logged-in Saxo user, the client entity and all its accounts (AccountKey, currency, type). Call this first: other tools take an optional AccountKey from here.

get_balancesA

Cash balance, total account value, margin available/used, unrealised P&L and open position/order counts for one account (default) or the whole client.

get_positionsA

Open positions with open price, current price, exposure and profit/loss. view="individual" (default) lists every position; view="net" nets positions per instrument.

get_ordersA

LISTS currently open/working orders (type, amount, price, status, duration). This is strictly a viewing tool: this server cannot place, modify or cancel orders.

get_account_historyA

Historical account performance. report=summary (default) returns key figures, returns, allocation and trade statistics for the period; report=timeseries returns day-by-day account value / balance / time-weighted return series. Choose a standardPeriod (Month, Quarter, Year, AllTime) or an explicit fromDate/toDate.

get_transactionsA

Historical transaction log. type=trades (default): executed trades. type=bookings: cash bookings such as deposits, withdrawals, dividends, fees and settlements. type=order_activities: audit trail of order events (placed, filled, cancelled). Defaults to the last 30 days.

search_instrumentsA

Look up instruments by name, ticker or ISIN and get their Saxo UIC + AssetType, which the other market data tools need. Returns Identifier (the UIC), Symbol, Description, AssetType, ExchangeId and CurrencyCode.

get_instrument_detailsA

Contract specification for one instrument: description, currency, exchange, tick size / price decimals, lot and minimum trade size, trading sessions (trading hours) and other reference data.

get_instrument_priceA

Current informational quote for an instrument: bid, ask, mid, last traded, day open/high/low, net and percent change, market open flag and whether the price is delayed. Read-only; never creates an order.

get_chart_dataA

Historical price bars (open/high/low/close, volume where available; FX returns bid/ask OHLC). horizon is the bar size in minutes: 1, 5, 10, 15, 30, 60, 120, 240, 360, 480, 1440, 10080, 43200 (1440 = daily, 10080 = weekly, 43200 = monthly). Up to 1200 bars per call; pass time + mode to page further back.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.2/5.0

Scored across 10 tools

Disambiguation5/5

Each tool maps to a distinct resource and action: account metadata, balances, positions, orders, history, transactions, instrument search, contract details, current quote, and historical bars. The two historical tools are clearly differentiated as performance reports versus transaction logs.

Naming Consistency5/5

All tool names follow a consistent lowercase verb_noun snake_case pattern, with get_* for lookups and search_instruments for query-based discovery. The naming is predictable and easy for an agent to navigate.

Tool Count5/5

Ten tools is well-scoped for a read-only Saxo data server, covering account, portfolio, transaction, and market data without unnecessary redundancy. Each tool earns its place in the set.

Completeness5/5

The surface covers the full read-only lifecycle: discover instruments, fetch contract details, get current and historical prices, and retrieve account, position, order, and transaction data. No critical dead ends exist, and the only omitted actions like order placement are explicitly out of scope.

Maintenance

ActivityMaintained
ResponsivenessNo issues