Angel One MCP Server
by rohi221b
README.md
# Angel One MCP Server
Angel One Limited (formerly Angel Broking Limited) is India's leading stockbroker firm established in 1996, serving over 24.7 million clients across major Indian stock exchanges including BSE and NSE. This server provides access to Indian equity markets, commodities, and derivatives trading.
A Model Context Protocol (MCP) server that provides comprehensive trading and market data functionality for Angel One through their SmartAPI.
## Features
### Portfolio Management
- View stock holdings and investment portfolio
- Get comprehensive family account holdings
- Check current trading positions
- Access Risk Management System (RMS) limits
### Trading Operations
- Place buy/sell orders (market, limit, stop-loss)
- Modify existing orders
- Cancel orders
- View order book and trade history
- Create GTT (Good Till Triggered) rules
### Market Data
- Real-time Last Traded Price (LTP)
- Historical candlestick (OHLC) data
- Search for stocks and instruments
- Top gainers/losers analysis
- Put-Call Ratio (PCR) for market sentiment
### Advanced Features
- Option Greeks calculation
- Position conversion
- Brokerage estimation
- Automated authentication with TOTP
- Comprehensive error handling
- Safety controls and dry-run mode
## Installation
### Development Installation (Current)
```bash
# Clone the repository
git clone https://github.com/YOUR_USERNAME/angel-one-mcp-server.git
cd angel-one-mcp-server
# Install dependencies
pip install -r requirements.txt
# Install in development mode
pip install -e .
```
### PyPI Installation (Coming Soon)
```bash
pip install angel-one-mcp
```
## Configuration
You can configure your Angel One credentials using either of these approaches:
### Option 1: Environment Variables (Recommended)
Create a `.env` file in your project directory:
```bash
ANGEL_ONE_API_KEY=your_api_key
ANGEL_ONE_CLIENT_CODE=your_client_code
ANGEL_ONE_PASSWORD=your_password
ANGEL_ONE_TOTP_SECRET=your_totp_secret
MAX_ORDER_QUANTITY=10000
DRY_RUN_MODE=false
```
Then configure Claude Desktop (`claude_desktop_config.json`):
```json
{
"mcpServers": {
"angel-one-trading": {
"command": "python",
"args": ["-m", "angel_one_mcp.server"]
}
}
}
```
### Option 2: Direct Configuration
Configure credentials directly in Claude Desktop (`claude_desktop_config.json`):
```json
{
"mcpServers": {
"angel-one-trading": {
"command": "python",
"args": ["-m", "angel_one_mcp.server"],
"env": {
"ANGEL_ONE_API_KEY": "your_api_key",
"ANGEL_ONE_CLIENT_CODE": "your_client_code",
"ANGEL_ONE_PASSWORD": "your_password",
"ANGEL_ONE_TOTP_SECRET": "your_totp_secret"
}
}
}
}
```
**Note:** Option 1 is recommended as it keeps sensitive credentials separate from configuration files.
## Usage Examples
### Portfolio Management
- "Show my current holdings"
- "What's my available margin?"
- "Display my open positions"
### Trading
- "Buy 100 shares of RELIANCE at market price"
- "Place a limit order to sell 50 TCS at ₹3500"
- "Cancel order ID 12345"
### Market Data
- "What's the current price of NIFTY?"
- "Show me top gainers today"
- "Get historical data for SBIN"
## Security Features
- Automatic TOTP-based authentication
- Configurable order quantity limits
- Dry-run mode for testing
- Comprehensive error handling
- No credential storage in memory
## Requirements
- Python 3.8+
- Angel One SmartAPI account
- Valid API credentials and TOTP setup
## License
MIT License
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues