Webull MCP Server
Webull MCP Server
An MCP サーバーで、公式の Webull OpenAPI (webull-openapi-python-sdk) を、MCP クライアント(Claude Code、Claude Desktop、その他任意のクライアント)が呼び出せるツールとして公開します。口座残高、保有ポジション、注文、株価、過去のバー、米国オプションの市場データを読み取ることができます。オプションで、実際の株式注文の発注・キャンセルもできます。
⚠️ インストールに失敗する前に必ずお読みください
非公式なものです。 このプロジェクトは Webull とは提携しておらず、Webull から承認・支援を受けているものでもありません。これはサードパーティクライアントとして Webull の OpenAPI を呼び出すものであり、自己責任で利用してください。API は予告なく変更されたり動作しなくなったりする可能性があります。ここで提供される何かが動き続けることを保証するものはありません。
投資アドバイスではありません。 これは単なる配管に他ならず、戦略ではありません。何を買うべきか、何を売るべきかについての判断を行うものではありませんまた。あなたの口座から発注されるすべての注文と、それらがあなたにもたらすコストに対して、あなた以外の誰も責任を負いません。
売買はデフォルトで無効になっており、ペーパーモードもありません。 注文ツールは、WEBULL_ENABLE_TRADING=true を明示的に設定しない限り、MCP クライアントにすら 登録されません。Webull には ペーパートレード用エンドポイントは一切ないため、有効にした場合、このサーバーが発注する全ての注文はライブ・本物・実際の口座で行われます。 ライブ取引を有効にする もご覧ください。
あなたの認証情報はあなたのマシンの上で維持されます。 App Key と Secret は、ローカルの .env ファイル(gitignored)の中だけに存在します。それらは Webull の API にのみ何かを送信し、モデルや他社に対して送信されることは一切ありません。
ツ
読み取り専用(常時有効)
ツール | 何をするか |
| 対象の資格情報でアクセス可能な口座を一覧表示する |
| 現金、純資産、買付力 |
| 現在の保有ポジション |
| 有効な注文 |
| 約定済み、キャンセル済み、過去の注文 |
| ティッカーを銘柄メタデータに解決 |
| リアルタイムの価格スナップショット(最終価格、OHLC、出来高) |
| 過去の OHLCV ローソク足 |
| 米国オプション契約のスナップショット — ビッド/アスク、出来高、建玉、IV、および5つのグリークスすべて |
| オプション契約の過去の OHLCV ローソク足 |
| 単一のオプション契約に対するティック毎の取引 |
| ライブ取引が有効かどうかを報告 |
オプションツールは、OCC フォーマットのシンボル(AAPL260619C00285000 — <ROOT><YYMMDD><C|P><strike × 1000, 8 digits>)を採用しています。Webull にはチェーン一覧のエンドポイントはないので、既知の行使価格と満了日から候補シンボルを組み立て、直接参照してください。1コール最大20件です。
ライブ取引 (ゲート付き、デフォルトでオフ)
WEBULL_ENABLE_TRADING=true のときだけ登録されます。
Tool | What it does |
| 手数料、買付余力への影響、検証エラーを含む注文を送信せずに検証する |
| ライブ株式注文を送信します。さらに、 |
|
|
サポートされる注文タイプ: MARKET, LIMIT, STOP_LOSS, STOP_LOSS_LIMIT; DAYまたはGTC。オプションで時間外のルーティングも可能。
Example Session例
MCP クライアントから実際にあるように使った場合の様子を示します。以下は参考です — お使いの口座に読み替えてください。
> How's my account doing, and what's the SMCI Jan 250 call worth?
● get_account_balance()
⎿ {
"account_id": "XXXXXXXXXXXXXXXXXXXXXXXXXX",
"net_liquidation": "18432.55",
"cash_balance": "6120.18",
"buying_power": "12240.36"
}
● get_positions()
⎿ [
{ "symbol": "INTC", "quantity": "40", "cost_price": "127.54",
"last_price": "131.02", "unrealized_pnl": "139.20" },
{ "symbol": "IWM", "quantity": "15", "cost_price": "241.88",
"last_price": "238.15", "unrealized_pnl": "-55.95" }
]
● get_option_quote(symbols: "SMCI260116C00250000")
⎿ [
{ "symbol": "SMCI260116C00250000",
"bid": "12.40", "ask": "12.85", "volume": "1843",
"open_interest": "9021", "imp_vol": "0.5412",
"delta": "0.4187", "gamma": "0.0092", "theta": "-0.1734",
"vega": "0.2815", "rho": "0.0946" }
]
Net liq is $18,432.55 with $12,240 buying power. INTC is up $139 and IWM
is down $56. The SMCI 250 call is $12.40 × $12.85 — 0.42 delta, 54% IV,
and theta is costing you $17/day per contract.ここにあるのは読み取り専用ツールについてです。
place_orderは取引を有効にしない限り一切利用できません — ライブ取引を有効にする を参照。
Setup
1. Webull API の資格情報を取得する
Webull Developer Portal にアクセスし、サーバーをアクセスさせる Webull アカウントでサインインします。
OpenAPI アクセスを申請し、アプリを作成してください。承認は即座ではありません — Webull によるレビューがあります。
発行されたアプリキーと秘密のように App Key と App Secret をコピーします。
あなたのアカウントは、あなたの地域で OpenAPI が有効にしてください。リアルタイムのマーケットデータは、アカウントにマーケットデータの資格が必要な場合があります。ない場合は、引用が遅延するかもしれません。
2. インストール
git clone https://github.com/<your-username>/webull-mcp.git
cd webull-mcp
python3 -m venv .venv
.venv/bin/pip install -r requirements.txtPython 3.10 以上が必要です。
3. 設定する
cp .env.example .env.env を編集し、資格情報を記入します:
WEBULL_APP_KEY=your_app_key_here
WEBULL_APP_SECRET=your_app_secret_here
# One of: us, hk, jp, sg, th, au, my, uk
WEBULL_REGION=us
# Optional. If set, account tools use this account when you omit account_id.
# Leave blank to auto-resolve the first account from list_accounts.
WEBULL_DEFAULT_ACCOUNT_ID=
# Leave this false unless you have read the trading section below.
WEBULL_ENABLE_TRADING=false.env は gitignored です。コミットしたり、その内容をどこかへ[ペースト]しない。
4. MCP クライアントに登録する
.mcp.json を編集して、プレースホルダーのパスを自分のクローンの絶対的なものに置き換えます:
{
"mcpServers": {
"webull": {
"command": "/absolute/path/to/webull-mcp/.venv/bin/python",
"args": ["/absolute/path/to/webull-mcp/src/server.py"]
}
}
}For Claude Code, also drop .mcp.json into a project directory where it will be detected automatically, or register it explicitly:
claude mcp add webull -- /absolute/path/to/webull-mcp/.venv/bin/python /absolute/path/to/webull-mcp/src/server.pyクライアントを再起動します。サーバーが正常に起動したことを確認する:
.venv/bin/python src/server.pyIt should start and wait on stdio — output nothing is expected. Ctrl-C で終了します。
最初の呼び出しでアカウントに触れると、SDK は2FAハンドシェイクを行い、conf/ 下にトークンをキャッシュします。そのディレクトリは gitignore されています。
ライブ取引を有効にする(オプション)
これは、すべての注文が実際に実行されることを受け入れた場合のみ行ってください。 サンドボックスもペーパー口座も、誤りを戻しても一切ありません。
.envでWEBULL_ENABLE_TRADING=trueを設定します — 文字列は厳密にtrueであることが必要。MCP クライアントを再起動します。インポート方法に応じてツールが登録されるため、再起動が必要です。
trading_statusツールで確認します。
2 つの独立したセーフティーレイヤがまだ残ります:
登録ゲート — このクロックが未設定または
falseの場合、place_order、preview_order、cancel_orderはモデルには一切公開されません。見えないツールを呼び出すことはできません。確認ゲート — 有効条件でも、
confirm=True付きで呼び出さないとplace_orderはエラー行けます。まずpreview_orderを実行します。
無効に再設定するには、フラグを false に戻して再起動します。
注意点と制約
リージョンはデフォルトで
usです。他の会社のためにWEBULL_REGIONを設定する。注文ツールは株式にのみ対応しています — オプション売買は実装されていません。ここでのオプションサポートは市場データのみです。
Webull にはオプション・チェーンをリストするエンドポイントがありません。OCC シンボルは自分で組み立ててください。期限切れのcontractは
INVALID_SYMBOLを返します。金曜日がマーケットの休日には、金曜日満了 date は木曜日に移行します。統合された、シンボルベースの
webull-openapi-python-sdkがベースです。旧式の分離型のwebull-python-sdk-*パッケージは、別シリアルメント ID ベースの API を使用します — 両方はインストールしないでください。SDK は
logs/以下にログを書込みます。このログには App Key、2FA トークン、口座 ID が含まれます。 それらには gitignored です。バグレポートに添付する際には、最初に必ず難読化してください。
Contributeings
CONTRIBUTING.md を参照ください。バグ報告と PR を歓迎します。
ライセンス
MIT。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Hosted MCP for stocks, options, Greeks, brokers, order previews, alerts, and workflows.
Tradier MCP — stock & options market data via the Tradier Brokerage API
Multi-tenant FastMCP server for Charles Schwab brokerage data, monetized via DPYC Tollbooth
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/trevordick1924-droid/WeBull-MCP-For-Claude'
If you have feedback or need assistance with the MCP directory API, please join our Discord server