market_get_live_quoteLABSCO SUMMARY
The daily token is the friction; the missing write path is the point.
Excluding trading endpoints entirely is a stronger guarantee than a permission flag — a misread instruction cannot become an order, because the capability is not there. The cost of running it is the access token, which expires every 24 hours and has no automatic refresh yet, so a long-lived agent will need that handled. Live quotes only mean anything during market hours; outside them, intraday calls legitimately return nothing.
What it is
An MCP server over the Upstox trading API, covering NSE, BSE and MCX instruments. It carries market data, a set of technical-analysis calculators, and read access to your own account, with trading endpoints deliberately left out: no order placement, no modification, no fund transfers.
What you get
- Market data —
market_get_live_quotefor last traded price, OHLC and volume,market_search_instrumentsto find a symbol,market_get_instrument_detailsfor its metadata, plusmarket_get_historical_dataandmarket_get_intraday_candles - Individual indicator tools rather than one opaque call:
analysis_calculate_rsi,analysis_calculate_macd,analysis_calculate_adx,analysis_calculate_moving_averages,analysis_calculate_bollinger_bands,analysis_calculate_stochastic,analysis_calculate_williams_r,analysis_calculate_volatility_metricsandanalysis_calculate_support_resistance analysis_get_technical_analysisfor a combined report — price, the indicators you name, detected candlestick patterns, trend context and support and resistance levels in one responseanalysis_calculate_fibonacci_levelsandanalysis_analyze_candlestick_patternsfor retracements and pattern detection- Read-only account access —
account_get_summary,account_get_user_margin,account_get_holdings_list,account_get_positions_list,account_get_order_bookandaccount_get_trade_history - A standardised JSON envelope on every tool, so a failure comes back as structured data rather than prose
Requirements
Python 3.10 or higher, an Upstox trading account, and API credentials from the Upstox developer console. Install with pip install -e ., which puts upstox-mcp on the path; the package is upstock-mcp, version 2.2.0. UPSTOX_ACCESS_TOKEN is required and expires every 24 hours, so it needs refreshing daily; UPSTOX_API_KEY and UPSTOX_API_SECRET are optional. Transport is stdio by default and HTTP with --transport http; Docker and docker-compose files ship with it. A remote deployment can take credentials per request as X-Upstox-API-Key, X-Upstox-API-Secret and X-Upstox-Access-Token headers, which is how several people share one instance.
Setup effort
Build from source — git clone https://github.com/ravikant1918/mcp-server-upstox.git
USE CASES
Asking what a stock is doing right now
Get the last traded price, OHLC and volume for a symbol without opening a trading terminal.
Getting a read on a trend in one call
Request the combined analysis with the indicators you care about, and read the trend and levels alongside them.
Checking a single indicator you already trust
Call RSI, MACD or Bollinger Bands on its own instead of parsing a full report.
Reviewing your own positions mid-conversation
Read margin, holdings, positions and the day's orders without any ability to change them.
Studying a move after the fact
Pull intraday candles at the interval you want and look at the pattern that formed.
23 tools
Listed in project docs. Your client may show a different list.
market_search_instrumentsmarket_get_instrument_detailsmarket_get_historical_datamarket_get_intraday_candlesanalysis_calculate_rsianalysis_calculate_macdanalysis_calculate_adxanalysis_calculate_moving_averagesanalysis_calculate_bollinger_bandsanalysis_calculate_support_resistanceanalysis_calculate_volatility_metricsanalysis_calculate_stochasticanalysis_calculate_williams_ranalysis_calculate_fibonacci_levelsanalysis_analyze_candlestick_patternsanalysis_get_technical_analysisaccount_get_summaryaccount_get_user_marginaccount_get_holdings_listaccount_get_positions_listaccount_get_order_bookaccount_get_trade_historyBEFORE YOU INSTALL
What to know first
Tools you get
23 tools named in the project's documentation.
Requires
- Python 3.10 or later
- UPSTOX_ACCESS_TOKEN in your environment
INSTALLATION
Connect your client
You clone this one yourself.
Server setup
git clone https://github.com/ravikant1918/mcp-server-upstox.git
cd mcp-server-upstox
python -m venv venv && source venv/bin/activate
pip install -e .MCP Clients
Claude Desktop
{
"mcpServers": {
"Upstox": {
"command": "<YOUR_PATH_TO_VENV>/bin/upstox-mcp",
"args": [
"--transport",
"stdio"
],
"env": {
"UPSTOX_ACCESS_TOKEN": "<YOUR_UPSTOX_ACCESS_TOKEN>"
}
}
}
}<YOUR_PATH_TO_VENV>/bin/upstox-mcp is the full path of upstox-mcp inside the venv the steps create in your mcp-server-upstox clone: with the venv active, which upstox-mcp prints it (PowerShell: (Get-Command upstox-mcp).Path). <YOUR_UPSTOX_ACCESS_TOKEN> is an access token for the app you create in the Upstox developer console (https://api.upstox.com/). It is valid for 24 hours, so refresh it daily.
Cursor
Start the server in HTTP mode — it listens on http://localhost:8000: upstox-mcp --transport http
In Cursor Settings → Features → MCP, add a new server — Name: Upstox, Type: HTTP, URL: http://localhost:8000/mcp