OKX MCP Server
PYPI · MCP-OKX · 2 COMPONENTS · SCANNED SEP 20
MCP Server for okx.com
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security99
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- Runs hatchling.build at install time, a recognised native-build step with no shell scripting around it. View diagnostics → Pass
- 4 of 33 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency44
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 313 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability72
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 4462 tokens (~371/item across 12 items; 11 tools + 1 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management80
- Stability observed for 24 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 11 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
How do I install the OKX MCP Server server?
OKX MCP Server runs locally as a PyPI package, launched with uvx mcp-okx. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
pypi · mcp-okx
claude mcp add aahl-mcp-okx -- uvx mcp-okx
{
"mcpServers": {
"aahl-mcp-okx": {
"command": "uvx",
"args": [
"mcp-okx"
]
}
}
} {
"servers": {
"aahl-mcp-okx": {
"command": "uvx",
"args": [
"mcp-okx"
]
}
}
} codex mcp add aahl-mcp-okx -- uvx mcp-okx
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"aahl-mcp-okx": {
"type": "local",
"command": [
"uvx",
"mcp-okx"
],
"enabled": true
}
}
} openclaw mcp add aahl-mcp-okx --command uvx --arg mcp-okx
mcp_servers:
aahl-mcp-okx:
command: "uvx"
args: ["mcp-okx"] {
"McpServers": {
"aahl-mcp-okx": {
"Transport": "stdio",
"Command": "uvx",
"Arguments": [
"mcp-okx"
]
}
}
} assistant mcp add aahl-mcp-okx -t stdio -c uvx -a mcp-okx
{
"mcpServers": {
"aahl-mcp-okx": {
"command": "uvx",
"args": [
"mcp-okx"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 20 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 77 to 80. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 24 at this one. The score rises as the window fills, whether or not the server changes.
- 19 Sept 26 −3
- Stability: pass → 0.77 functional
- 18 Sept 26 0
- Stability: 0.97 → pass security
- 17 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 15 Sept 26 +15
- Malware scan: unverified → pass ▲ security
- 14 Sept 26 −14
- Malware scan: pass → unverified ▼ security
- 12 Sept 26 −2
- Stability: pass → 0.80 functional
- 11 Sept 26 0
- Stability: 0.97 → pass security
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Analysed pypi/mcp-okx@0.1.0
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | pypi |
Background: How many MCP packages publish verified provenance →
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | hatchling.build |
Background: Why install scripts are a supply-chain risk →
Dependencies 33 packages
| Packages resolved | 33 |
|---|---|
| Stale | 4 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
account_balance Get account balance ~72
Retrieve a list of assets (with non-zero balance), remaining balance, and available amount in the OKX trading account
| Name | Type | Req | Description |
|---|---|---|---|
| ccy | string | – | Single currency or multiple currencies (no more than 20) separated with comma, e.g. BTC or BTC,ETH.Optional, all by default if not passed |
No output schema declared.
No examples provided.
account_config Get account configuration ~33
Retrieve current OKX account configuration. It is recommended to use this tool to obtain account configuration information before using all other tools
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
account_position_risk Get account position risk ~77
Obtain the overall holding risk of the OKX account
| Name | Type | Req | Description |
|---|---|---|---|
| instType | string | – | Instrument type: `MARGIN`: 币币杠杆/`SWAP`: 永续合约/`FUTURES`: 交割合约/`OPTION`: 期权. Optional, all by default if not passed |
No output schema declared.
No examples provided.
account_positions Get account positions ~252
Retrieve information on your OKX positions. When the account is in net mode, net positions will be displayed, and when the account is in long/short mode, long or short positions will be displayed. Return in reverse chronological order using ctime.
| Name | Type | Req | Description |
|---|---|---|---|
| instId | string | – | Instrument ID, e.g. `BTC-USDT-SWAP`. Single instrument ID or multiple instrument IDs (no more than 10) separated with comma. Optional, all by default if not passed |
| instType | string | – | Instrument type: `SPOT`: 币币现货/`MARGIN`: 币币杠杆/`SWAP`: 永续合约/`FUTURES`: 交割合约/`OPTION`: 期权.`instId` will be checked against `instType` when both parameters are passed. Optional, all by default if not pas… |
| posId | string | – | Single position ID or multiple position IDs (no more than 20) separated with comma. There is attribute expiration, the posId and position information will be cleared if it is more than 30 days after… |
No output schema declared.
No examples provided.
cancel_order Cancel an incomplete order ~81
Cancel an incomplete order on OKX
| Name | Type | Req | Description |
|---|---|---|---|
| clOrdId | string | – | Client Order ID as assigned by the client |
| instId | string | yes | Instrument ID, e.g. BTC-USDT |
| ordId | string | – | Order ID. Either ordId or clOrdId is required. If both are passed, ordId will be used |
No output schema declared.
No examples provided.
close_positions Close positions ~265
Liquidate all positions in the designated trading product at market price on OKX
| Name | Type | Req | Description |
|---|---|---|---|
| autoCxl | – | – | Whether any pending orders for closing out needs to be automatically canceled when close position via a market order.`false` or `true`, the default is `false` |
| ccy | string | – | Margin currency, required in the case of closing `cross` `MARGIN` position for `Futures mode` |
| clOrdId | string | – | Client-supplied ID. A combination of case-sensitive alphanumerics, all numbers, or all letters of up to 32 characters. |
| instId | string | yes | Instrument ID, e.g. BTC-USDT |
| mgnMode | string | yes | Margin mode: `cross`/`isolated` |
| posSide | string | – | Position side. This parameter can be omitted in `net` mode, and the default value is `net`. You can only fill with `net`. This parameter must be filled in under the `long/short` mode. Fill in `long`… |
| tag | string | – | Order tag. A combination of case-sensitive alphanumerics, all numbers, or all letters of up to 16 characters |
No output schema declared.
No examples provided.
get_order_list Get incomplete order list ~242
Retrieve all incomplete orders under the current OKX account. For a detailed schema of the output object, please read the resource at: `schema://trade/order`
| Name | Type | Req | Description |
|---|---|---|---|
| instFamily | string | – | Instrument family. Applicable to `FUTURES/SWAP/OPTION` |
| instId | string | – | Instrument ID, e.g. BTC-USD-200927 |
| instType | string | – | Instrument type: `SPOT/MARGIN/SWAP/FUTURES/OPTION` |
| ordType | string | – | Order type. `market`: Market order `limit`: Limit order `post_only`: Post-only order `fok`: Fill-or-kill order `ioc`: Immediate-or-cancel order `optimal_limit_ioc`: Market order with immediate-or-ca… |
| state | string | – | State: `live`/`partially_filled` |
No output schema declared.
No examples provided.
get_orders_history Get Order History ~342
Get completed orders on OKX which are placed in the last 7 days, including those placed 7 days ago but completed in the last 7 days.The incomplete orders that have been canceled are only reserved for 2 hours. For a detailed schema of the output object, please read the resource at: `schema://trade/order`
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Category: `twap/adl/full_liquidation/partial_liquidation/delivery`/`ddh`: Delta dynamic hedge |
| instFamily | string | – | Instrument family. Applicable to `FUTURES/SWAP/OPTION` |
| instId | string | – | Instrument ID, e.g. BTC-USDT |
| instType | string | yes | Instrument type: `SPOT/MARGIN/SWAP/FUTURES/OPTION` |
| limit | – | – | Number of results per request. [1-100]. Default: 20 |
| ordType | string | – | Order type. `market`: Market order `limit`: Limit order `post_only`: Post-only order `fok`: Fill-or-kill order `ioc`: Immediate-or-cancel order `optimal_limit_ioc`: Market order with immediate-or-ca… |
| state | string | – | State: `canceled`/`filled`/`mmp_canceled`: Order canceled automatically due to Market Maker Protection |
No output schema declared.
No examples provided.
get_trade_order Get order details ~102
Retrieve order details on OKX. For a detailed schema of the output object, please read the resource at: `schema://trade/order`
| Name | Type | Req | Description |
|---|---|---|---|
| clOrdId | string | – | Client Order ID as assigned by the client |
| instId | string | yes | Instrument ID, e.g. BTC-USDT |
| ordId | string | – | Order ID. Either ordId or clOrdId is required. If both are passed, ordId will be used |
No output schema declared.
No examples provided.
market_tickers Get market tickers ~124
Retrieve the latest price snapshot, best bid/ask price, and trading volume in the last 24 hours.Get the ranking of coins with the highest increase or the largest trading volume.
| Name | Type | Req | Description |
|---|---|---|---|
| instFamily | string | – | Instrument family。 Applicable to FUTURES/SWAP/OPTION |
| instType | string | – | Instrument type: [SPOT/SWAP/FUTURES/OPTION] |
| limit | – | – | Number of results. Default: 30 |
| sortBy | string | – | Sorting method: [change24h/changeMax/last/vol24h/...] |
No output schema declared.
No examples provided.
place_order Place a new order ~2,850
Place a new order on OKX for trading
| Name | Type | Req | Description |
|---|---|---|---|
| attachAlgoOrds | – | – | TP/SL information attached when placing order.1. TP/SL algo order will be generated only when this order is filled fully, or there is no TP/SL algo order generated.2. Attaching TP/SL is neither suppo… |
| banAmend | – | – | Whether to disallow the system from amending the size of the SPOT Market Order. Valid options: `true` or `false`. The default value is `false`. If `true`, system will not amend and reject the market… |
| ccy | string | – | Margin currency. Applicable to all `isolated` `MARGIN` orders and `cross` `MARGIN` orders in `Futures mode` |
| clOrdId | string | – | Client Order ID as assigned by the client.A combination of case-sensitive alphanumerics, all numbers, or all letters of up to 32 characters.Only applicable to general order. It will not be posted to… |
| instId | string | yes | Instrument ID, e.g. BTC-USDT |
| ordType | string | yes | Order type. When creating a new order, you must specify the order type. The order type you specify will affect: 1) what order parameters are required, and 2) how the matching system executes your ord… |
| posSide | string | – | Position side. The default is `net` in the net mode. It is required in the `long/short` mode, and can only be `long` or `short`. Only applicable to `FUTURES`/`SWAP`. Position side, this parameter is… |
| px | string | – | Order price. Only applicable to `limit`,`post_only`,`fok`,`ioc`,`mmp`,`mmp_and_post_only` order. When placing an option order, one of px/pxUsd/pxVol must be filled in, and only one can be filled in.… |
| pxUsd | string | – | Place options orders in `USD`. Only applicable to options. When placing an option order, one of px/pxUsd/pxVol must be filled in, and only one can be filled in |
| pxVol | string | – | Place options orders based on implied volatility, where 1 represents 100%. Only applicable to options. When placing an option order, one of px/pxUsd/pxVol must be filled in, and only one can be fille… |
| reduceOnly | – | – | Whether orders can only reduce in position size. Valid options: `true` or `false`. The default value is `false`. Only applicable to `MARGIN` orders, and `FUTURES`/`SWAP` orders in net mode. Only appl… |
| side | string | yes | Order side, `buy`/`sell` |
| stpMode | string | – | Self trade prevention mode: `cancel_maker`,`cancel_taker`,`cancel_both`. Cancel both does not support FOK. The account-level acctStpMode will be used to place orders by default. The default value of… |
| sz | string | yes | Quantity to buy or sell. For SPOT/MARGIN Buy and Sell Limit Orders, it refers to the quantity in base currency. For MARGIN Buy Market Orders, it refers to the quantity in quote currency. For MARGIN S… |
| tag | string | – | Order tag. A combination of case-sensitive alphanumerics, all numbers, or all letters of up to 16 characters |
| tdMode | string | yes | Trade Mode, when placing an order, you need to specify the trade mode. Spot mode: `cash`(SPOT and OPTION buyer; 币币和期权买方) Futures mode: - `cash`(SPOT; 币币) - `cross`(Cross MARGIN/FUTURES/SWAP/OPTION; 全… |
| tgtCcy | string | – | Whether the target currency uses the quote or base currency. This parameter is used to specify the order quantity in the order request is denominated in the quantity of base or quote currency. This… |
No output schema declared.
No examples provided.
What is the OKX MCP Server server?
OKX MCP Server is listed in the public MCP registry as io.github.aahl/mcp-okx. MCP Server for okx.com. This page covers its PyPI package (mcp-okx).
Is the OKX MCP Server server safe to use?
OKX MCP Server scores 81 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the OKX MCP Server server expose?
OKX MCP Server exposes 11 tools: account_config, account_balance, account_positions, account_position_risk, place_order, and 6 more. Their descriptions and schemas cost roughly 4,440 tokens of context every time the server is loaded.
Is the OKX MCP Server server still maintained?
OKX MCP Server is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the OKX MCP Server server under?
OKX MCP Server declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.