TradeStation MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@TradeStation MCP Server get a quote for AAPL"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
TradeStation MCP Server
A Model Context Protocol (MCP) server that provides TradeStation API integration for Claude Code and other MCP clients.
Features
Real-time market data (quotes, bars, option chains)
Account information (balances, positions, orders)
Order preview and validation
Automatic token refresh management
Support for both simulation and live environments
Related MCP server: MetaTrader5 MCP Server
Available Tools
Market Data
marketData- Get real-time quotes for symbolsbarChart- Get historical price bars/candlesgetSymbolDetails- Get detailed symbol informationgetOptionExpirations- Get available option expiration datesgetOptionStrikes- Get available option strike prices
Account Management
getAccounts- List all brokerage accountsgetBalances- Get account balances and buying powergetPositions- Get current positions with P&LgetOrders- Get order history with optional status filtergetOrderDetails- Get detailed information for a specific ordergetExecutions- Get fills/executions for a specific order
Order Operations
confirmOrder- Preview order costs and requirements (READ-ONLY, does not execute trades)
Setup
Prerequisites
Node.js 18 or higher
TradeStation developer account with API credentials
Active TradeStation account (simulation or live)
Installation
Clone this repository:
git clone <repository-url>
cd mcp-tradesationInstall dependencies:
npm installCopy the example environment file:
cp .env.example .envEdit
.envand add your TradeStation API credentials:
TRADESTATION_CLIENT_ID=your_client_id_here
TRADESTATION_CLIENT_SECRET=your_client_secret_here
TRADESTATION_REFRESH_TOKEN=your_refresh_token_here
TRADESTATION_REDIRECT_URI=http://localhost:3000/callbackBuild the server:
npm run buildGetting TradeStation API Credentials
Create a new application to get your Client ID and Client Secret
Complete the OAuth flow to obtain a refresh token
Add the credentials to your
.envfile
Configure in Claude Code
Add the following to your Claude Code MCP configuration file:
macOS/Linux: ~/.config/claude-code/mcp_config.json
Windows: %APPDATA%\claude-code\mcp_config.json
{
"mcpServers": {
"tradestation": {
"command": "node",
"args": ["/path/to/mcp-tradesation/build/index.js"],
"env": {
"TRADESTATION_CLIENT_ID": "your_client_id_here",
"TRADESTATION_CLIENT_SECRET": "your_client_secret_here",
"TRADESTATION_REFRESH_TOKEN": "your_refresh_token_here",
"TRADESTATION_REDIRECT_URI": "http://localhost:3000/callback"
}
}
}
}Alternatively, if you have a .env file in the project directory, you can omit the env section and the server will automatically load credentials from the .env file.
Usage
Once configured, the MCP tools will be automatically available in Claude Code. You can use them like this:
Get a quote for SPY
Show me a 5-minute chart for AAPL with the last 20 bars
What are my account balances?
List my current positions
Preview an order to buy 100 shares of SPY at market priceDevelopment
Project Structure
mcp-tradesation/
├── src/
│ ├── index.ts # Main MCP server implementation
│ └── test-*.js # Test scripts for API endpoints
├── build/ # Compiled JavaScript output
├── .env.example # Example environment configuration
├── package.json # Package dependencies and scripts
└── tsconfig.json # TypeScript configurationTesting
The project includes several test scripts to verify API functionality:
# Test token refresh and basic API access
node src/quick-token-test.js
# Test all MCP server functions
node src/test-mcp-functions.js
# Test specific endpoints
node src/test-specific-endpoints.jsBuilding
npm run buildThis compiles the TypeScript source to JavaScript in the build/ directory.
Environment Variables
Variable | Required | Description |
| Yes | Your TradeStation API client ID |
| Yes | Your TradeStation API client secret |
| Yes | OAuth refresh token for authentication |
| Yes | OAuth redirect URI (must match app config) |
| No | Default account ID for operations |
| No | Environment: 'simulation' or 'production' (default: simulation) |
Troubleshooting
Token Errors
If you see authentication errors:
Verify your credentials in the
.envfile are correctEnsure your refresh token hasn't expired
Check that your TradeStation account has API access enabled
Build Errors
If the build fails:
Ensure you have Node.js 18 or higher installed
Delete
node_modulesandbuilddirectoriesRun
npm installagainRun
npm run build
MCP Connection Issues
If Claude Code can't connect to the server:
Verify the path to
build/index.jsin your MCP config is correctCheck that the server built successfully (
build/index.jsexists)Review Claude Code logs for error messages
API Documentation
For detailed TradeStation API documentation, visit:
License
ISC
Contributing
Contributions are welcome! Please feel free to submit issues or pull requests.
Available Tools
13 toolsbarChartC
Get historical price bars/candles
Inputs: symbol (required), interval (required), unit (required), beginTime, +2 more.
confirmOrderA
Preview order costs and requirements (READ-ONLY - does not execute trades)
Inputs: symbol (required), quantity (required), orderType (required), tradeAction (required), +4 more.
getAccountsB
Get list of brokerage accounts
Inputs: no named parameters.
getBalancesC
Get account balances and buying power
Inputs: accountId.
getExecutionsC
Get fills/executions for a specific order
Inputs: orderId (required), accountId.
getOptionExpirationsC
Get available expiration dates for options on an underlying symbol
Inputs: underlying (required).
getOptionStrikesC
Get available strike prices for options on an underlying symbol
Inputs: underlying (required), expiration.
getOrderDetailsC
Get detailed information for a specific order
Inputs: orderId (required), accountId.
getOrdersB
Get order history with optional status filter
Inputs: accountId, status.
getPositionsC
Get current positions with P&L
Inputs: accountId.
getSymbolDetailsC
Get detailed symbol information
Inputs: symbols (required).
marketDataC
Get quotes for symbols
Inputs: symbols (required).
searchSymbolsA
Search for symbols (Note: Symbol search not available in TradeStation v3 API - use getSymbolDetails instead with known symbols)
Inputs: criteria (required), type.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 13 tools
Most tools have distinct purposes, such as getAccounts for account lists and getBalances for balances, but there is some overlap between getOrders and getOrderDetails, and between marketData and barChart for price data, which could cause minor confusion.
The naming follows a consistent verb_noun pattern with minor deviations, as most tools start with 'get' or descriptive verbs like 'confirm' and 'search', but 'barChart' and 'marketData' break this pattern slightly by using noun-based names.
With 13 tools, the count is well-scoped for a brokerage and trading server, covering key areas like accounts, orders, market data, and options without being overwhelming or insufficient.
The toolset provides comprehensive coverage for querying accounts, orders, positions, and market data, but lacks tools for executing trades or modifying orders, which are notable gaps in a trading context.
Maintenance
Related MCP Connectors
Unified financial infrastructure connecting AI agents directly to trade live/demo brokerage accounts, Web3 non-custodial wallets, real-time market data across equities, ETFs, crypto, forex, options, DeFi swaps, and prediction markets, institutional research feeds, and algorithmic strategy backtesters.
Agentic brokerage access to a US brokerage account: quotes, orders, positions, cash and documents.
Scan options flow, analyze real-time market data, and build investing and trading workflows.
Trading MCP server for AI agents, with live market data, account reads and controlled execution.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables trading and market analysis through Tiger Brokers API integration. Provides real-time market data, portfolio management, order execution, and technical analysis tools with a comprehensive web dashboard for monitoring.9-
- AlicenseNot gradedqualityBmaintenanceEnables access to MetaTrader5 market data and trading functionality, including real-time quotes, historical OHLCV data, tick data, symbol information, and technical indicators for forex and other trading instruments.22MIT
- AlicenseNot gradedqualityDmaintenanceEnables comprehensive E\*TRADE integration with OAuth authentication, account management, risk calculations, watch lists, and trading operations. Includes built-in risk management guardrails, portfolio tracking, market data access, and trading validation for safe automated trading operations.8GPL 3.0
- -licenseNot gradedqualityNot gradedmaintenanceEnables real-time stock and options market data retrieval from Interactive Brokers through IB Gateway. Provides stock quotes with price and volume information, plus options quotes with bid, ask, and last price data.-