Skip to main content

Webull MCP Server

Webull MCP Server enables AI assistants (Cursor, Claude Desktop, Kiro, etc.) to securely access Webull OpenAPI trading and market data capabilities via the Model Context Protocol (MCP).

Source code: webull-inc/webull-openapi-mcp


What is Webull MCP

Webull MCP Server is a server built on the Model Context Protocol that wraps Webull OpenAPI capabilities into tools callable by AI assistants. With MCP, you can use natural language in your AI coding assistant to:

  • Query real-time market data
  • View account balances and positions
  • Place, modify, and cancel orders
  • Query order history and order details

Architecture Overview


Prerequisites

API Credentials (App Key and App Secret)

Apply based on your account type:

Individual users: Individual Application Guide

Institutional users: Institution Application Guide

Other Requirements


Setup Steps

Step 1: Install

Ensure Python 3.10+ and uvx are installed. No need to manually install Webull MCP Server — your AI client will automatically download and launch it via uvx.

Step 2: Configure AI Client

Add the following configuration to your AI client's MCP config file. Replace your_app_key and your_app_secret with the credentials obtained in the prerequisites:

Edit .cursor/mcp.json:

{
"mcpServers": {
"webull": {
"command": "uvx",
"args": ["webull-openapi-mcp", "serve"],
"env": {
"WEBULL_APP_KEY": "your_app_key",
"WEBULL_APP_SECRET": "your_app_secret",
"WEBULL_REGION_ID": "us",
"WEBULL_ENVIRONMENT": "prod"
}
}
}
}
tip

For sandbox environment, set WEBULL_ENVIRONMENT to uat.

Step 3: Authenticate

note

This step is only required if your account has Two-Factor Authentication enabled.

Complete a one-time authentication in the terminal before first use:

uvx webull-openapi-mcp auth

Authentication flow:

After approving the request in the Webull App, the token is saved locally. The token is valid for 15 days and auto-refreshes on use.

Step 4: Verify Connection

Restart your AI client and try the following in a conversation:

Get my account list

If your account information is returned, Webull MCP is successfully connected.


Usage Examples

Market Data

Get a real-time snapshot for AAPL
Show me AAPL's daily bars for the last 5 days

Trading

Buy 100 shares of AAPL at market price
Buy 10 shares of TSLA at market price

Available Endpoints

EndpointDescription
get_account_listGet all linked accounts
get_account_balanceGet account balance, buying power, and cash details
get_account_positionsGet current positions and holdings
get_stock_tickGet stock tick-by-tick trade data
get_stock_snapshotGet real-time stock/ETF snapshot
get_stock_quotesGet real-time bid/ask quotes with depth
get_stock_footprintGet stock large order footprint (order flow)
get_stock_barsGet stock OHLCV bars in batch
get_stock_bars_singleGet OHLCV bars for a single stock
get_futures_tickGet futures tick-by-tick trade data
get_futures_snapshotGet futures real-time snapshot
get_futures_depthGet futures order book depth
get_futures_barsGet futures OHLCV bars
get_futures_footprintGet futures large order footprint
get_crypto_snapshotGet cryptocurrency real-time snapshot
get_crypto_barsGet cryptocurrency OHLCV bars
get_event_tickGet event contract tick-by-tick data
get_event_snapshotGet event contract real-time snapshot
get_event_depthGet event contract order book depth
get_event_barsGet event contract OHLCV bars
get_instrumentsGet stock/ETF instrument info
get_futures_instrumentsGet futures instrument info
get_futures_instruments_by_codeGet futures contracts by product code
get_futures_productsGet all futures products and codes
get_crypto_instrumentsGet cryptocurrency instrument info
get_event_seriesGet event contract series
get_event_instrumentsGet event contract instruments by series
get_event_categoriesGet event contract categories
get_event_eventsGet events within a series
place_stock_orderPlace a stock order
preview_stock_orderPreview a stock order without submitting
replace_stock_orderModify an existing stock order
place_stock_combo_orderPlace a combo stock order (OTO/OCO/OTOCO)
place_algo_orderPlace an algorithmic order (TWAP/VWAP/POV)
place_option_single_orderPlace a single-leg option order
preview_option_orderPreview an option order without submitting
replace_option_orderModify an existing option order
place_option_strategy_orderPlace a multi-leg option strategy order
place_futures_orderPlace a futures order
replace_futures_orderModify an existing futures order
place_crypto_orderPlace a cryptocurrency order
place_event_orderPlace an event contract order
replace_event_orderModify an existing event contract order
cancel_orderCancel an unfilled order
get_order_historyGet historical orders
get_open_ordersGet all current open/pending orders
get_order_detailGet single order details

Configuration Parameters

VariableDescriptionDefault
WEBULL_APP_KEYApp Key (required)
WEBULL_APP_SECRETApp Secret (required)
WEBULL_ENVIRONMENTuat (sandbox) or prod (production)uat
WEBULL_REGION_IDusus
WEBULL_TOOLSETSEnabled tool categories (comma-separated)all enabled
WEBULL_MAX_ORDER_NOTIONAL_USDMax order notional for US market (USD)10000
WEBULL_MAX_ORDER_QUANTITYMax order quantity per order1000
WEBULL_SYMBOL_WHITELISTAllowed symbols whitelist (comma-separated)no restriction

For read-only access (market data + account only), set WEBULL_TOOLSETS=account,market-data to disable trading tools.


Security Recommendations

  • Never share your App Key, App Secret, or Token via chat with an AI model. These credentials should only be passed to the MCP Server process via the env field in mcp.json, never as conversation content.
  • Use preview_stock_order / preview_option_order before placing orders.
  • Use WEBULL_SYMBOL_WHITELIST to restrict tradable symbols.

Disclosure

Webull MCP Server provides information solely for reference purposes and does not constitute investment advice. Trading in securities, options, cryptocurrencies, and other financial instruments involves substantial risk of loss. All trading decisions are made at your own discretion and risk. You are solely responsible for verifying order details before execution. This software is provided "as is" without warranty of any kind.