Back to MCP Servers

Trade Agent Mcp.git

Trade stocks and crypto on common brokerages (Robinhood, E*Trade, Coinbase, Kraken) via Trade Agent's MCP server.

finance-fintechragagent
By Trade-Agent
5415Updated 3 months agoCC0-1.0

Installation

npx -y trade-agent-mcp.git

Configuration

{
  "mcpServers": {
    "trade-agent-mcp.git": {
      "command": "npx",
      "args": ["-y", "trade-agent-mcp.git"]
    }
  }
}

How to use

  1. Run the installation command above (if needed)
  2. Open your Claude Code settings file (~/.claude/settings.json)
  3. Add the configuration to the mcpServers section
  4. Restart Claude Code to apply changes

Trade It MCP Server

👉 Full Documentation Here 👈

Now available through the Official MCP Registry

Table of contents

Overview

The Trade It MCP Server brings stock, crypto, and options trading support to agents. It enables natural-language interaction with stock and crypto brokerages—execute trades, query portfolio performance, and surface market insights by sending plain-English requests through the MCP protocol.

Endpoints:

  • Streamable HTTP: https://mcp.tradeit.app/mcp
  • SSE: https://mcp.tradeit.app/sse

Brokerage Support:

  • <img height="14" width="14" src="https://images.tradeit.app/brokerages/robinhood-logo.svg" alt="Robinhood Logo" /> Robinhood
  • <img height="14" width="14" src="https://images.tradeit.app/brokerages/charles_schwab-logo.svg" alt="Charles Scwhab Logo" /> Charles Schwab
  • <img height="14" width="14" src="https://images.tradeit.app/brokerages/etrade-logo.svg" alt="ETrade Logo" /> E*Trade
  • <img height="14" width="14" src="https://images.tradeit.app/brokerages/webull-logo.svg" alt="Webull Logo" /> Webull
  • <img height="14" width="14" src="https://images.tradeit.app/brokerages/public-logo.svg" alt="Public Logo" /> Public
  • <img height="14" width="14" src="https://images.tradeit.app/brokerages/tastytrade-logo.svg" alt="Tastytrade Logo" /> Tastytrade

Crypto Exchange Support:

  • <img height="14" width="14" src="https://images.tradeit.app/brokerages/coinbase-logo.svg" alt="Coinbase Logo" /> Coinbase
  • <img height="14" width="14" src="https://images.tradeit.app/brokerages/kraken-logo.svg" alt="Kraken Logo" /> Kraken

More to be added soon!

This server is remote so you don't need to run anything locally to connect. Just point your MCP-compatible agent platform to the URL above.


Getting Started

  1. First, create an account at https://tradeit.app.
  2. Sign up for the Pro plan's free trial.
  3. Connect your brokerage of choice.

Connecting

  1. Connect your MCP client to https://mcp.tradeit.app/mcp or https://mcp.tradeit.app/sse.
  2. Authenticate through the browser-based OAuth flow.
  3. You're now ready to start trading!

Tools

MCP tools connect your agent to linked brokerages: search symbols, list accounts, create draft orders, then execute only after confirmation.

MCP toolWhat it does
search_assetsLook up a stock or crypto by ticker or name; returns price and metadata.
get_accountsList linked accounts and balances; also used when linking a new brokerage.
create_tradeCreate a draft equity/crypto buy or sell for review.
create_options_tradeCreate a draft single- or multi-leg options order for review.
execute_tradeSubmit a previously created draft to the broker after explicit user confirmation.

Safety model (draft-first)

Trades start as draft orders and are not sent to the broker until the user clearly confirms.

Intended flow:

  1. Call create_trade or create_options_trade → you get a draft with a trade_id.
  2. Show the user the full order details and how to proceed.
  3. Call execute_trade only when the user explicitly asks to execute, confirm, or place the trade.
  4. Do not call execute_trade automatically or immediately after creating a draft.

After creating a draft, make sure the user knows they can place the order when ready (e.g. via your client’s Execute control, if available).

Optional steps before creating a draft:

  • search_assets — confirm ticker and context.
  • get_accounts — pick the right account_id when the user cares which account to use.

Execution flow:

User requests trade
       ↓
[Optional] search_assets — confirm ticker, get current price
       ↓
[Optional] get_accounts — identify correct account_id
       ↓
create_trade / create_options_trade → draft with trade_id, status: "draft"
       ↓
Show draft details; user confirms
       ↓
execute_trade(trade_id)
       ↓
Status: "placed" or "failed" (with details)

Account / order defaults: If the user omits amount, account, or order type, Trade It applies their default amount, default account, and market orders where applicable. If auto-execute is enabled in Trade It settings, behavior may skip the manual execute step in some setups; when in doubt, still treat execution as user-confirmed.


search_assets

Look up a stock or crypto by ticker or name.

  • Parameter: query (string) — e.g. "TSLA", "Tesla", "bitcoin".
  • Returns: Price, ticker, exchange, asset type, and related metadata.

Example:

{ "query": "TSLA" }

Natural-language examples: "How's Apple doing?" · "What's the price of TSLA?"


get_accounts

List all linked brokerage accounts (and use this flow when the user wants to connect a new brokerage).

  • Parameters: none.
  • Returns: Accounts with id, name, brokerage, balance, available_cash. Use account.id as account_id in trade calls when a specific account is required.

Natural-language example: "Show my accounts."


create_trade

Create a draft equity or crypto order.

Parameters:

FieldTypeRequiredDescription
symbolstringYesTicker, e.g. "TSLA".
amountnumberYesSize to trade.
unit"dollars" or "shares"YesUnit for amount.
buy_or_sell"buy" or "sell"YesDirection.
order_type"market", "limit", "stop", "stop_limit"NoDefaults to "market".
limit_pricenumberIf limit / stop_limitMax or min price per share as applicable.
stop_pricenumberIf stop / stop_limitStop trigger price.
time_in_force"day", "gtc", "ioc", "fok"NoOmit for brokerage default.
account_idnumberNoOmit for default account.

Order types:

TypeUse whenPrice fields
marketFill at current marketNone
limitOnly at limit_price or betterlimit_price
stopMarket order triggers at stop_pricestop_price
stop_limitLimit order triggers at stop_pricestop_price and limit_price

JSON examples:

Buy $500 of Apple at market:

{ "symbol": "AAPL", "amount": 500, "unit": "dollars", "buy_or_sell": "buy" }

Buy 10 shares of NVDA only if it drops to $800 or below:

{ "symbol": "NVDA", "amount": 10, "unit": "shares", "buy_or_sell": "buy", "order_type": "limit", "limit_price": 800 }

Sell 5 shares of Meta if the price falls to $450 (stop):

{ "symbol": "META", "amount": 5, "unit": "shares", "buy_or_sell": "sell", "order_type": "stop", "stop_price": 450 }

Buy 10 AAPL if it breaks above $200, paying at most $202/share:

{ "symbol": "AAPL", "amount": 10, "unit": "shares", "buy_or_sell": "buy", "order_type": "stop_limit", "stop_price": 200, "limit_price": 202 }

Buy $1,000 of Bitcoin:

{ "symbol": "BTC", "amount": 1000, "unit": "dollars", "buy_or_sell": "buy" }

Sell 100 shares of Tesla, good till canceled:

{ "symbol": "TSLA", "amount": 100, "unit": "shares", "buy_or_sell": "sell", "time_in_force": "gtc" }

Natural-language examples: "Buy $1000 of Tesla" · "Buy $1000 of Tesla only if the price drops to $150 or lower" · "Sell 10 shares of Apple if the price falls to $140" · "Buy a share of Apple if it hits $200" · "Buy 10 shares of Apple if it rises to $140, but don't pay more than $142"


create_options_trade

Create a draft single-leg or multi-leg options order (spreads, straddles, etc.).

Parameters:

FieldTypeRequiredDescription
symbolstringYesUnderlying ticker, e.g. "SPY".
legsarrayYesOne or more legs (see below).
direction"debit" or "credit"Multi-leg"debit" = you pay; "credit" = you collect.
order_type"market", "limit", etc.NoDefaults to "market".
limit_pricenumberFor limitNet debit/credit limit for the package.
time_in_force"day" or "gtc"NoOmit for default.
account_idnumberNoOmit for default account.

Each leg:

FieldTypeRequiredDescription
type"option" or "equity"YesLeg type.
action"buy" or "sell"YesSide of the leg.
position_effect"open" or "close"OptionsOpen a new position or close an existing one.
occstring or nullOptionsOCC string (below); null for equity legs.
quantitynumberYesContracts (options) or shares (equity).

OCC option symbol format

OCC strings follow: YYMMDD + C or P + 8-digit strike (strike × 1000, zero-padded).

DescriptionOCC
Jun 20, 2025 $250 call250620C00250000
Jun 20, 2025 $260 call250620C00260000
Mar 21, 2025 $500 put250321P00500000
Dec 19, 2025 $1,500 call251219C01500000
Jan 16, 2026 $50 put260116P00050000

Strike encoding: multiply dollars by 1,000 and pad to 8 digits (e.g. $250 → 00250000; $50.50 → 00050500).

Options JSON examples

Single call — buy 1 SPY $520 call exp Jun 20, 2025:

{
  "symbol": "SPY",
  "legs": [
    { "type": "option", "action": "buy", "position_effect": "open", "occ": "250620C00520000", "quantity": 1 }
  ]
}

Bull call spread (debit) — buy $250 call, sell $260 call, same expiry:

{
  "symbol": "TSLA",
  "direction": "debit",
  "legs": [
    { "type": "option", "action": "buy", "position_effect": "open", "occ": "250620C00250000", "quantity": 1 },
    { "type": "option", "action": "sell", "position_effect": "open", "occ": "250620C00260000", "quantity": 1 }
  ]
}

Bear put spread (debit):

{
  "symbol": "SPY",
  "direction": "debit",
  "legs": [
    { "type": "option", "action": "buy", "position_effect": "open", "occ": "250620P00520000", "quantity": 1 },
    { "type": "option", "action": "sell", "position_effect": "open", "occ": "250620P00510000", "quantity": 1 }
  ]
}

Bull put spread (credit):

{
  "symbol": "SPY",
  "direction": "credit",
  "legs": [
    { "type": "option", "action": "sell", "position_effect": "open", "occ": "250620P00510000", "quantity": 1 },
    { "type": "option", "action": "buy", "position_effect": "open", "occ": "250620P00500000", "quantity": 1 }
  ]
}

Spread with limit — net debit $3.50 or better:

{
  "symbol": "TSLA",
  "direction": "debit",
  "order_type": "limit",
  "limit_price": 3.50,
  "legs": [
    { "type": "option", "action": "buy", "position_effect": "open", "occ": "250620C00250000", "quantity": 1 },
    { "type": "option", "action": "sell", "position_effect": "open", "occ": "250620C00260000", "quantity": 1 }
  ]
}

Close a long call — sell to close 2 AAPL $200 calls exp Mar 21, 2025:

{
  "symbol": "AAPL",
  "legs": [
    { "type": "option", "action": "sell", "position_effect": "close", "o

…
View source on GitHub