Ecosystem · Execution All ecosystem services Kite MCP repo ↗
Zerodha Kite MCP — the execution layer
India's only first-party brokerage MCP. The standard place to send the actual order.
What it's great at. Zerodha is India's largest discount broker, and Kite MCP is the only first-party brokerage MCP shipping today.
If your agent needs to actually trade — place orders, modify, cancel, GTT, manage holdings — this is where it goes.
Compose with Genka for the read side: XBRL filings, concall search, MF screener.
Two MCP servers in one
~/.config/claude/mcp.json: agent decides on Genka, executes on Kite.
Decision matrix
| If you need | Pick |
|---|---|
| Place / modify / cancel an equity or F&O order | Kite MCP |
| Holdings, positions, P&L on your Zerodha account | Kite MCP |
| GTT (Good Till Triggered) orders | Kite MCP |
| Sub-second LTP / OHLC / market depth | Kite MCP |
| Quarterly XBRL fundamentals for Nifty 500 (FY17+) | Genka |
| Search 23,000 concall transcripts, cited LLM Q&A | Genka |
| Mutual fund screener (4,700 funds, SEBI taxonomy, 20y NAV) | Genka |
| Pre-computed indicator panel (RSI, MACD, DMA, returns) | Genka |
| 30y NSE bhavcopy with corp-action-adjusted returns | Genka |
| Work without a Zerodha account / cross-broker research | Genka |
What Kite MCP is great at
- Trading, end to end. Place, modify, cancel orders; GTT; positions; holdings; margins. The full execution surface for a Zerodha account.
- Live market data. Quotes (LTP, OHLC, depth), historical OHLC, instrument search — sourced directly from the exchange feed Zerodha already pays for.
- Hosted + self-hosted. Use
mcp.kite.tradedirectly (hosted version excludes destructive ops by default), or self-host with your own Kite Connect API key. - First-party MCP. Maintained by Zerodha; aligned with their order-API guarantees. Account-tied auth (per-user OAuth, daily token expiry).
Where Genka complements Kite
- Quarterly XBRL fundamentals.
/companies/{symbol}/ratios,/balance-sheets,/cash-flow-statements,/filings— primary-source NSE XBRL with filing URL per period, FY17 onward. - Concall corpus.
/concalls/search?q=(BM25),/concalls/{id}(full transcript),POST /concalls/answer(grounded LLM Q&A with citations). ~23,000 filings indexed. - Mutual funds.
mf_screeneracross 4,700 funds with SEBI category taxonomy; 20y NAV; rolling-window Sharpe / Sortino / max-DD. - Indicator panel.
/prices/{symbol}/latest— one call returns 8-window returns (split/bonus-adjusted), DMA 50/200, 52w + all-time hi/lo, RSI(14), MACD, Bollinger, ATR. - Broker-agnostic. One API key, no daily token expiry, no brokerage relationship required.
Compose them: two MCP servers, one config
Drop both into ~/.config/claude/mcp.json:
// ~/.config/claude/mcp.json { "servers": { "genka": { "transport": "http", "url": "https://genka.dev/mcp", "headers": { "X-API-Key": "${GENKA_API_KEY}" } }, "kite": { "transport": "sse", "url": "https://mcp.kite.trade/sse" } } }
Then ask Claude:
# Research with Genka, hand the trade to Kite:
"Find Nifty 500 names with FY26Q3 revenue growth > 20%,
operating margin expansion, and management guidance turning
positive on the last concall. For the top 3, place a 1%
portfolio-weight buy order on Kite."
Relevant Genka endpoints
GET /v1/companies/{symbol}/ratios?metric=pe— single-metric time series, FY17+GET /v1/prices/{symbol}/latest— pre-computed indicator panelGET /v1/concalls/search?q=capex+guidance— BM25 across ~23k transcriptsPOST /v1/concalls/answer— grounded Q&A with citationsGET /v1/mf/screener?period=3y&sharpe_absolute_gte=0.9— MF filterGET /v1/prices?symbols=A,B&from=1995-01-02— 30y bhavcopy
Full catalog: /llms.txt · tools: /docs/mcp/#tools
Working with Kite MCP — gotchas
- Daily token expiry. Kite Connect access tokens expire at 6:00 AM IST daily. An agent loop running overnight needs the refresh-on-401 pattern wired in, otherwise it dies at sunrise.
- Hosted vs self-hosted.
mcp.kite.tradeexcludes destructive operations by default for safety. To enable order placement etc., setEXCLUDED_TOOLS=""when self-hosting, or read the env-var docs in the repo. - Sandbox is separate. Kite Connect ships a sandbox at
api.kite.tradewith separate credentials. Test there first; live credentials hit production order books and lose real money. - Rate limits are per-route. Order endpoints are 10 req/sec, market-quote endpoints 1 req/sec, historical 3 req/sec. Hitting one bucket doesn't trip the others, but the SDK doesn't auto-throttle — agent code has to.
Other ecosystem services