pyhood-mcp
by bakernyc
README.md
# pyhood-mcp
**Model Context Protocol (MCP) server for Robinhood trading via pyhood**
Connect your Robinhood account to Claude Code (or any MCP client) for conversational portfolio management and automated trading.
## Features
- ๐ Portfolio monitoring (positions, gains/losses, buying power)
- ๐ Real-time quotes and market data
- ๐ Stock order placement (market, limit, stop orders)
- ๐ Order history and management
- ๐ Historical price data for technical analysis
- ๐ฐ Options chain data and expirations
- ๐ข Fundamental data (market cap, PE ratio, etc.)
## Installation
### Prerequisites
- Python 3.10+
- A Robinhood account
- Claude Code (or any MCP-compatible client)
### Install dependencies
```bash
pip install pyhood mcp
```
### Download the server
```bash
# Clone this repo
git clone https://github.com/YOUR_USERNAME/pyhood-mcp.git
cd pyhood-mcp
# Or just download pyhood_mcp_server.py
curl -O https://raw.githubusercontent.com/YOUR_USERNAME/pyhood-mcp/main/pyhood_mcp_server.py
chmod +x pyhood_mcp_server.py
```
## Setup
### 1. Authenticate with Robinhood
First, create a session (handles 2FA):
```bash
python3 -c "import pyhood; pyhood.login(username='YOUR_EMAIL', password='YOUR_PASSWORD')"
```
This creates a cached session in `~/.pyhood/session.json`.
### 2. Configure Claude Code
Add to your `~/.claude/settings.json`:
```json
{
"mcpServers": {
"pyhood": {
"command": "python3",
"args": ["/path/to/pyhood_mcp_server.py"],
"env": {
"ROBINHOOD_USERNAME": "your_email@example.com",
"ROBINHOOD_PASSWORD": "your_password"
}
}
}
}
```
Or set environment variables in your shell:
```bash
export ROBINHOOD_USERNAME="your_email@example.com"
export ROBINHOOD_PASSWORD="your_password"
```
### 3. Restart Claude Code
The pyhood MCP server will now be available in Claude Code.
## Usage
### In Claude Code
```
What's my portfolio performance today?
Get a quote for NVDA
Place a market order to buy 10 shares of AAPL
Show me my recent order history
Get historical data for TSLA over the past month
```
### Available Tools
| Tool | Description |
|------|-------------|
| `get_portfolio` | Portfolio summary with all positions |
| `get_positions` | List all current positions |
| `get_quote` | Real-time quote for a symbol |
| `get_quotes` | Quotes for multiple symbols |
| `get_buying_power` | Available cash balance |
| `place_order` | Place buy/sell orders |
| `get_stock_orders` | Recent order history |
| `cancel_order` | Cancel a pending order |
| `cancel_all_stock_orders` | Cancel all pending orders |
| `get_order` | Check status of a specific order |
| `get_stock_historicals` | Historical price data |
| `get_fundamentals` | Company fundamentals |
| `get_earnings` | Earnings dates and estimates |
| `get_options_chain` | Options data for a symbol |
| `get_options_expirations` | Available option expirations |
## Security
โ ๏ธ **Important Security Notes:**
- Never commit your Robinhood credentials to git
- The session cache (`~/.pyhood/session.json`) contains sensitive tokens
- Use environment variables for credentials when possible
- This server runs locally and communicates only with Robinhood's API
## Pattern Day Trading (PDT)
If your account is <$25k, you're limited to 3 day trades per rolling 5-day period. Be careful with automated trading strategies. See [FINRA PDT rules](https://www.finra.org/investors/learn-to-invest/advanced-investing/day-trading-margin-requirements-know-rules).
## Dependencies
- [pyhood](https://github.com/jiak94/pyhood) - Modern Robinhood Python client
- [mcp](https://github.com/modelcontextprotocol/python-sdk) - Model Context Protocol SDK
## Disclaimer
**This software is for educational purposes only. Trading stocks involves risk.**
- You are responsible for all trades executed through this tool
- No warranty or guarantee of fitness for any purpose
- The authors are not liable for any financial losses
- Always verify orders before execution
- Use at your own risk
Robinhoodยฎ is a trademark of Robinhood Markets, Inc. This project is not affiliated with or endorsed by Robinhood.
## Contributing
Contributions welcome! Please:
1. Fork the repo
2. Create a feature branch
3. Submit a pull request
## License
MIT License - see [LICENSE](LICENSE) file for details
## Related Projects
- [autonomous-trading-agent](https://github.com/bakernyc/autonomous-trading-agent) - Autonomous trading agent using this MCP server
- [pyhood](https://github.com/jamestford/pyhood) - The underlying Robinhood API client
## Support
- Issues: [GitHub Issues](https://github.com/YOUR_USERNAME/pyhood-mcp/issues)
- Discussions: [GitHub Discussions](https://github.com/YOUR_USERNAME/pyhood-mcp/discussions)
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues