Skip to main content
Glama
Ritesh17rb

kite-mcp-server

by Ritesh17rb

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
KITE_API_KEYYesYour Kite Connect API key.
KITE_API_SECRETNoYour Kite Connect API secret, used by npm run login to create .kite-session.json.
KITE_MCP_ENABLE_TRADINGNoSet to true to enable live order/SIP/position mutation. Default false runs mutating tools in dry-run mode.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

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_profileB

Get the logged-in Kite user's profile.

get_marginsB

Get available trading margins. Optionally scoped to a segment (equity or commodity).

get_holdingsA

Get long-term equity holdings (stocks held in demat, not intraday positions).

get_positionsA

Get current day's and net trading positions (intraday + carry-forward F&O etc).

get_auction_instrumentsA

Get instruments currently available to buy in an auction session (used to cover short-delivery obligations).

convert_positionA

Convert an open position's product type (e.g. move an intraday MIS position to CNC overnight delivery, or vice versa). Dry-run unless KITE_MCP_ENABLE_TRADING=true is set.

get_ordersA

Get the day's order book (all orders placed today and their status).

get_order_historyC

Get the full status history of a single order.

get_order_tradesB

Get the trades (fills) generated by a single order.

get_tradesA

Get all trades (fills) for the day across all orders.

place_orderA

Place a new order on Kite. Returns a dry-run preview unless KITE_MCP_ENABLE_TRADING=true is set in the server's environment, since this sends a real order to the exchange with real money.

modify_orderA

Modify a pending order (price, quantity, order type, trigger price, validity, or disclosed quantity). Dry-run unless KITE_MCP_ENABLE_TRADING=true is set.

cancel_orderA

Cancel a pending order. Dry-run unless KITE_MCP_ENABLE_TRADING=true is set.

get_gttsB

List all active GTT (Good Till Triggered) orders.

get_gttB

Get details of a single GTT order by trigger id.

place_gttB

Create a GTT (Good Till Triggered) order — e.g. a standing stop-loss or target that fires without you watching the price. Dry-run unless KITE_MCP_ENABLE_TRADING=true is set.

modify_gttB

Modify an existing GTT order. Dry-run unless KITE_MCP_ENABLE_TRADING=true is set.

delete_gttA

Delete (cancel) a GTT order. Dry-run unless KITE_MCP_ENABLE_TRADING=true is set.

get_quoteA

Get full market quote (price, depth, OHLC, volume) for up to 50 instruments. Requires a paid Kite Connect subscription with market data access — not included in the free Personal tier.

get_ohlcA

Get OHLC (open/high/low/close) snapshot for up to 50 instruments. Requires a paid Kite Connect subscription with market data access — not included in the free Personal tier.

get_ltpA

Get last traded price for up to 50 instruments. Requires a paid Kite Connect subscription with market data access — not included in the free Personal tier.

get_trigger_rangeB

Get the valid stop-loss trigger price range for Cover Order instruments. Requires a paid Kite Connect subscription with market data access — not included in the free Personal tier.

get_historical_dataA

Get historical OHLC candles for an instrument. Use search_instruments first to find the instrument_token. Requires a paid Kite Connect subscription with market data access — not included in the free Personal tier. Minute-level data is capped by Kite to recent history (e.g. ~60 days for 'minute'); day candles go back much further.

watch_ticksA

Open a live WebSocket connection to Kite and collect ticks for a short window, then return everything received (latest price per instrument plus full history within the window). Requires a paid Kite Connect subscription with market data access. Use search_instruments first to find instrument_token values.

search_instrumentsA

Search the instrument master list by trading symbol or name substring (case-insensitive). Use this to find instrument_token / exact tradingsymbol values needed by quote, historical-data, and tick-watching tools. The full list has tens of thousands of rows, so results are capped — narrow with exchange and query for best results. Free on all Kite Connect tiers.

search_mf_instrumentsB

Search the mutual fund instrument list by trading symbol (ISIN) or name substring, e.g. "Nifty 50 Index".

get_mf_holdingsB

Get mutual fund holdings.

get_mf_ordersA

Get mutual fund orders. Omit order_id to list all of today's orders.

get_mf_sipsB

Get mutual fund SIPs (systematic investment plans). Omit sip_id to list all active SIPs.

place_mf_orderA

Place a mutual fund buy (amount) or sell (quantity) order. Dry-run unless KITE_MCP_ENABLE_TRADING=true is set.

cancel_mf_orderA

Cancel a pending mutual fund order. Dry-run unless KITE_MCP_ENABLE_TRADING=true is set.

place_mf_sipB

Start a mutual fund SIP (recurring investment). Dry-run unless KITE_MCP_ENABLE_TRADING=true is set.

modify_mf_sipB

Modify, pause, or unpause an existing SIP. Dry-run unless KITE_MCP_ENABLE_TRADING=true is set.

cancel_mf_sipB

Cancel an SIP. Dry-run unless KITE_MCP_ENABLE_TRADING=true is set.

calculate_order_marginsA

Calculate the margin required for one or more hypothetical orders, without placing them. Use this before place_order to check affordability/leverage. Read-only — free on all tiers.

calculate_basket_marginsB

Calculate combined margin for a basket of hypothetical orders, accounting for hedges/offsets across them (e.g. a spread). Read-only — free on all tiers.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.5/5.0

Scored across 36 tools

Disambiguation4/5

Most tools map to distinct resources and actions, and descriptions clarify boundaries between similar-sounding pairs such as get_order_trades vs get_trades and calculate_order_margins vs calculate_basket_margins. Minor overlap remains among market-data snapshot tools (get_quote, get_ohlc, get_ltp) and order-inspection tools, but it is manageable.

Naming Consistency5/5

The tool set uses a consistent snake_case verb_noun pattern throughout: get_*, place_*, modify_*, cancel_*, search_*, calculate_*, convert_*, and watch_*. Domain prefixes such as mf and gtt are applied predictably, with only natural pluralization differences.

Tool Count3/5

36 tools is heavy for agent selection and exceeds the typical well-scoped range. However, the server covers a broad brokerage surface including equity orders, GTTs, market data, mutual funds, SIPs, positions, holdings, and margin calculations, so many tools are justified rather than gratuitous.

Completeness4/5

Coverage is strong across core trading workflows: equity order lifecycle, GTT CRUD, market data snapshots/history/ticks, positions, holdings, margins, and mutual fund/SIP operations. Minor gaps exist around some single-resource retrieval and mutual fund order-modification paths, but there are no major dead ends for common workflows.

Maintenance

ActivityMaintained
ResponsivenessNo issues