- Home
- MCP servers
- E*TRADE
E*TRADE
- python
1
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"davdunc-mcp_etrade": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/davdunc/mcp_etrade.git",
"mcp_etrade"
],
"env": {
"ETRADE_OAUTH_CONSUMER_KEY": "YOUR_CONSUMER_KEY",
"ETRADE_OAUTH_CONSUMER_SECRET": "YOUR_CONSUMER_SECRET"
}
}
}
}You deploy this MCP server to connect your environment with E*TRADE using OAuth, manage accounts and risk, and automate trading guardrails. It exposes practical capabilities like authenticating users, retrieving balances and transactions, calculating risk, handling watch lists, and providing market data and alerts in a structured, JSON-friendly format for agents and pipelines.
How to use
Use an MCP client to start and communicate with the E*TRADE MCP Server. You can run the server locally for development or connect it through the Colosseum framework to orchestrate multiple MCP endpoints. The server handles OAuth authentication, account operations, risk validation, watch lists, market data lookups, and alerts, and returns clean JSON responses suitable for automated agents and dashboards.
Typical usage patterns include: initializing the OAuth flow to obtain request and access tokens, querying account balances and transactions, validating orders against risk rules before placement, managing watch lists independently from your portfolio, fetching real-time quotes or option chains, and creating or responding to price alerts.
How to install
Prerequisites: Python 3.11+ and an E*TRADE developer account with API keys.
Install via UVX (recommended) by running the following command.
uvx --from git+https://github.com/davdunc/mcp_etrade.git mcp_etrade
Install via pip if you prefer Python packaging.
pip install git+https://github.com/davdunc/mcp_etrade.git
For a development setup, clone the project and install in editable mode so you can modify and test locally.
git clone https://github.com/davdunc/mcp_etrade.git
cd mcp_etrade
pip install -e .
Configuration
Configure your E*TRADE API credentials in the environment before starting the server.
export ETRADE_OAUTH_CONSUMER_KEY="your_consumer_key"
export ETRADE_OAUTH_CONSUMER_SECRET="your_consumer_secret"
Usage details
Run the standalone server directly or integrate it with Colosseum for multi-MCP workflows.
Standalone server command.
python -m mcp_etrade.server
Colosseum integration adds a configuration entry that invokes the MCP server through UVX with the required environment variables.
{
"etrade": {
"type": "etrade",
"command": "uvx",
"args": ["--from", "git+https://github.com/davdunc/mcp_etrade.git", "mcp_etrade"],
"env": {
"ETRADE_OAUTH_CONSUMER_KEY": "${ETRADE_OAUTH_CONSUMER_KEY}",
"ETRADE_OAUTH_CONSUMER_SECRET": "${ETRADE_OAUTH_CONSUMER_SECRET}"
}
}
}
Available tools
get_request_token
Start OAuth flow by obtaining a request token from the MCP server.
get_authorization_url
Provide the user with a URL to authorize access to their account.
get_access_token
Complete the OAuth flow by exchanging the verifier for an access token.
renew_access_token
Refresh the access token when it expires.
revoke_access_token
Revoke the current access token and invalidate the session.
get_account_balance
Retrieve account balances and related details.
list_transactions
List recent account transactions.
get_transaction_details
Fetch details for a specific transaction.
view_portfolio
Display portfolio positions and holdings.
calculate_risk_parameters
Calculate R-multiple based risk parameters for orders.
validate_order_risk
Validate an order against predefined risk limits.
get_daily_risk_status
Return current daily risk utilization metrics.
record_actual_loss
Record actual trading losses for risk tracking.
create_watch_list
Create a new watch list.
get_watch_lists
Retrieve all watch lists.
update_watch_list
Update an existing watch list.
delete_watch_list
Delete a watch list.
get_option_chains
Fetch option chains for given symbols.
get_option_expire_dates
Retrieve option expiration dates for symbols.
get_quotes
Get real-time quotes for securities.
lookup_product
Search securities by company name.
list_alerts
List price alerts for monitoring.
delete_alerts
Remove one or more alerts.
get_alert_details
Fetch details for a specific alert.