Skip to main content
Glama

Zerodha Trading MCP

A Model Context Protocol (MCP) server that enables AI models to interact with the Zerodha trading platform. This project provides a set of tools for executing trades, viewing portfolio, and managing positions on Zerodha through a standardized interface.

Features

  • 🔐 Secure authentication with Zerodha API

  • 📊 View portfolio holdings

  • 📈 Check open positions

  • 💹 Place buy/sell orders

  • 👤 Access user profile information

Prerequisites

  • Node.js (v14 or higher)

  • Zerodha Trading Account

  • API credentials from Zerodha

Installation

  1. Clone the repository:

git clone https://github.com/shubhamprajapati7748/zerodha-trade-mcp.git cd zerodha-trade-mcp
  1. Install dependencies:

npm install
  1. Create a .env file in the root directory with your Zerodha credentials:

KITE_API_KEY=your_api_key KITE_SECRET_KEY=your_secret_key REQUEST_TOKEN=your_request_token ACCESS_TOKEN=your_access_token

Claude Desktop MCP Configuration

To use this MCP server with Claude Desktop, you need to configure the mcp server details. Here's how to set it up:

  1. Open claude_desktop_config.json in your project root

  2. Add the following configuration:

{ "mcpServers": { "tradeStocks": { "command": "/opt/homebrew/bin/bun", "args": [ "/path/to/your/index.ts" ], "env": { "KITE_API_KEY": "your_api_key", "KITE_SECRET_KEY": "your_secret_key", "REQUEST_TOKEN": "your_request_token", "ACCESS_TOKEN": "your_access_token" } } } }

Make sure to:

  • Update the path to your index.ts file

  • Replace the environment variables with your actual Zerodha credentials

Usage

The MCP server provides the following tools:

Get Profile

get-profile

Retrieves the user's profile information from Zerodha.

Buy Stock

buy-stock {stock: string, quantity: number}

Places a buy order for the specified stock and quantity.

Sell Stock

sell-stock {stock: string, quantity: number}

Places a sell order for the specified stock and quantity.

Show Portfolio

show-portfolio

Displays the user's complete portfolio holdings.

Show Positions

show-positions

Shows the user's open positions.

Development

The project is built using:

  • TypeScript

  • KiteConnect API

  • Model Context Protocol (MCP) SDK

  • Zod for schema validation

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Disclaimer

This project is for educational purposes only. Trading in financial markets carries significant risk. Always do your own research and trade responsibly.

-
security - not tested
A
license - permissive license
-
quality - not tested

Related MCP Servers

  • -
    security
    A
    license
    -
    quality
    A Model Context Protocol server that enables interaction with the Tradovate API for managing trading contracts, positions, orders, and accounts.
    Last updated -
    1
    MIT License
  • A
    security
    -
    license
    A
    quality
    A Model Context Protocol server that enables AI models to interact with the Monad testnet for checking token balances, sending transactions, and deploying smart contracts.
    Last updated -
    7
    8
    Apache 2.0
  • -
    security
    A
    license
    -
    quality
    A Model Context Protocol server that extends AI capabilities by providing tools to interact with the Solana blockchain, enabling operations like transactions, account queries, and wallet management.
    Last updated -
    1
    Apache 2.0
    • Apple
    • Linux
  • -
    security
    F
    license
    -
    quality
    Implements a Model Context Protocol server that connects with Zerodha Kite API, allowing users to buy/sell stocks and retrieve holdings and positions information.
    Last updated -
    1

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/shubhamprajapati7748/zerodha-trade-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server