An 8-agent research committee, live analysis and scored news on US stocks and crypto, for any agent.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Your SimianX API key as a bearer token (My Account → API keys on simianx.ai)
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Recent runs (deprecated (use /v1/analysis/quick))
This tool takes no arguments.
Recent runs (deprecated (use /v1/analysis/quick))
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Recent quick reads
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Ask a follow-up question about a finished deep research run; read the answers with get_deep_thread. (uses points, metered on the models used like the website)
| Argument | Type | Description |
|---|---|---|
| message* | string | |
| mentions | array | Committee seats that should answer (optional) |
| analysis_id* | string | Deep research id |
{
"type": "object",
"required": [
"analysis_id",
"message"
],
"properties": {
"message": {
"type": "string",
"maxLength": 2000
},
"mentions": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 3,
"description": "Committee seats that should answer (optional)"
},
"analysis_id": {
"type": "string",
"format": "uuid",
"description": "Deep research id"
}
},
"additionalProperties": false
}Change the autopilot's paper position by hand, always at the server's price: open, add, reduce, close, set_levels, place_order, replace_order, cancel_order, set_timeframe. Stocks are long only, and intraday stock entries need the market open.
| Argument | Type | Description |
|---|---|---|
| side | string | |
| price | number | place_order / replace_order: resting price |
| action* | string | |
| fraction | number | reduce: share of the position |
| quantity | number | Coins or shares |
| stop_loss | number | |
| timeframe | string | set_timeframe: the new timeframe (closes the position first) |
| expires_in | integer | Order lifetime in seconds |
| order_type | string | |
| take_profit |
Analysis history
| Argument | Type | Description |
|---|---|---|
| id* | string | id |
| agent | string | |
| limit | integer | <= 100 |
| before | string | timestamp cursor |
| include | string | text |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "id"
},
"agent": {
"type": "string"
},
"limit": {
"type": "integer",
"description": "<= 100"
},
"before": {
"type": "string",
"description": "timestamp cursor"
},
"include": {
"type": "string",
"description": "text"
}
},
"additionalProperties": false
}Archive a stopped autopilot
| Argument | Type | Description |
|---|---|---|
| id* | string | id |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "id"
}
},
"additionalProperties": false
}Lifecycle and delivery log
| Argument | Type | Description |
|---|---|---|
| id* | string | id |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "id"
}
},
"additionalProperties": false
}Run the four live agents on a symbol on a schedule, optionally letting the Decision agent manage a paper position. Runs server side, also while you are offline; every analysis, decision and position change lands in get_updates and the event log (get_autopilot_events). After starting, follow it until done and tell the user every finished step; never wait for the user to ask. (uses points, metered on the models used like the website)
| Argument | Type | Description |
|---|---|---|
| tier | string | Model tier (default fast) |
| asset* | string | crypto or stock (US stocks and ETFs) |
| agents | array | Subset of the four live agents (default all four) |
| models | object | Per-agent model override, agent -> model id from list_models (paid plans) |
| symbol* | string | Stock ticker (NVDA) or coin (BTC); crypto also takes a pair id such as BTC-USDT-SWAP |
| webhook | object | {url, secret?, events?}: also POST each event to this URL |
| language | string | Language of the write-ups, e.g. en, zh-CN, ja (default: the account's) |
| intervals | object | agent -> seconds between runs |
POST every update (or the kinds listed) to a URL, signed with HMAC-SHA256 (X-SimianX-Signature), with retries. For the user's own code; an agent that reads get_updates does not need one.
| Argument | Type | Description |
|---|---|---|
| url* | string | https endpoint |
| events | array | Kinds to send (default all) |
| secret | string | Signing secret (shown once) |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "https endpoint"
},
"events": {
"type": "array",
"items": {
"type": "string"
},
"description": "Kinds to send (default all)"
},
"secret": {
"type": "string",
"description": "Signing secret (shown once)"
}
},
"additionalProperties": false
}Tail the run (long-poll or SSE)
| Argument | Type | Description |
|---|---|---|
| id* | string | id |
| wait | integer | 0-30 s |
| after | string | Cursor |
| types | string | Filter |
| include | string | comma list: delta (streamed text), tools (per-tool progress) |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "id"
},
"wait": {
"type": "integer",
"maximum": 25,
"minimum": 0,
"description": "0-30 s"
},
"after": {
"type": "string",
"description": "Cursor"
},
"types": {
"type": "string",
"description": "Filter"
},
"include": {
"type": "string",
"description": "comma list: delta (streamed text), tools (per-tool progress)"
}
},
"additionalProperties": false
}PDF report link
| Argument | Type | Description |
|---|---|---|
| id* | string | id |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "id"
}
},
"additionalProperties": false
}Resume a paused run (uses points, metered on the models used like the website)
| Argument | Type | Description |
|---|---|---|
| id* | string | id |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "id"
}
},
"additionalProperties": false
}Stop a run
| Argument | Type | Description |
|---|---|---|
| id* | string | id |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "id"
}
},
"additionalProperties": false
}Remove a webhook.
| Argument | Type | Description |
|---|---|---|
| webhook_id* | string | Webhook id |
{
"type": "object",
"required": [
"webhook_id"
],
"properties": {
"webhook_id": {
"type": "string",
"format": "uuid",
"description": "Webhook id"
}
},
"additionalProperties": false
}Your last 20 feedback messages (status only; we do not reply)
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}The account behind the API key: plan, limits and the key's budgets (points figures are for your own pacing; do not read them to the user unless asked).
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Status and configuration of one autopilot, with its event cursor.
| Argument | Type | Description |
|---|---|---|
| autopilot_id* | string | Autopilot id |
{
"type": "object",
"required": [
"autopilot_id"
],
"properties": {
"autopilot_id": {
"type": "string",
"format": "uuid",
"description": "Autopilot id"
}
},
"additionalProperties": false
}The autopilot's event log: analyses, signals, position changes, actions. Without after you get the latest events and a cursor; pass that cursor as after (and wait, up to 25 s) to get only what happens next.
| Argument | Type | Description |
|---|---|---|
| wait | integer | Seconds to wait for something new before answering, 0-25 |
| after | string | Cursor from the previous answer |
| limit | integer | Rows, up to 200 (default 100) |
| types | string | Comma-separated event types |
| autopilot_id* | string | Autopilot id |
{
"type": "object",
"required": [
"autopilot_id"
],
"properties": {
"wait": {
"type": "integer",
"maximum": 25,
"minimum": 0,
"description": "Seconds to wait for something new before answering, 0-25"
},
"after": {
"type": "string",
"description": "Cursor from the previous answer"
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Rows, up to 200 (default 100)"
},
"types": {
"type": "string",
"description": "Comma-separated event types"
},
"autopilot_id": {
"type": "string",
"format": "uuid",
"description": "Autopilot id"
}
},
"additionalProperties": false
}The autopilot's paper positions and their operations.
| Argument | Type | Description |
|---|---|---|
| autopilot_id* | string | Autopilot id |
{
"type": "object",
"required": [
"autopilot_id"
],
"properties": {
"autopilot_id": {
"type": "string",
"format": "uuid",
"description": "Autopilot id"
}
},
"additionalProperties": false
}OHLCV candles for a coin or pair. (0.2 points per call)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Rows, up to 500 (default 100) |
| before | integer | Millisecond timestamp: return the page before it |
| symbol* | string | Coin (BTC) or pair id (BTC-USDT-SWAP) |
| timeframe | string |
{
"type": "object",
"required": [
"symbol"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Rows, up to 500 (default 100)"
},
"before": {
"type": "integer",
"description": "Millisecond timestamp: return the page before it"
},
"symbol": {
"type": "string",
"description": "Coin (BTC) or pair id (BTC-USDT-SWAP)"
},
"timeframe": {
"enum": [
"1m",
"5m",
"15m",
"1H",
"4H",
"1D"
],
"type": "string"
}
},
"additionalProperties": false
}Indicator snapshot (trend, momentum, levels) for a coin or pair. (0.3 points per call)
| Argument | Type | Description |
|---|---|---|
| symbol* | string | Coin (BTC) or pair id |
| timeframe | string |
{
"type": "object",
"required": [
"symbol"
],
"properties": {
"symbol": {
"type": "string",
"description": "Coin (BTC) or pair id"
},
"timeframe": {
"enum": [
"1m",
"5m",
"15m",
"1H",
"4H",
"1D"
],
"type": "string"
}
},
"additionalProperties": false
}Latest prices for up to 120 coins. (0.1 points per call)
| Argument | Type | Description |
|---|---|---|
| symbols* | string | Comma-separated coins, e.g. BTC,ETH,SOL |
{
"type": "object",
"required": [
"symbols"
],
"properties": {
"symbols": {
"type": "string",
"description": "Comma-separated coins, e.g. BTC,ETH,SOL"
}
},
"additionalProperties": false
}State, verdict and trade plan of a deep research run. Poll until status is done.
| Argument | Type | Description |
|---|---|---|
| include | string | text: include each agent's full write-up |
| analysis_id* | string | Id from start_deep_analysis |
{
"type": "object",
"required": [
"analysis_id"
],
"properties": {
"include": {
"enum": [
"text"
],
"type": "string",
"description": "text: include each agent's full write-up"
},
"analysis_id": {
"type": "string",
"format": "uuid",
"description": "Id from start_deep_analysis"
}
},
"additionalProperties": false
}Questions asked about a deep research run and the committee's answers.
| Argument | Type | Description |
|---|---|---|
| analysis_id* | string | Deep research id |
{
"type": "object",
"required": [
"analysis_id"
],
"properties": {
"analysis_id": {
"type": "string",
"format": "uuid",
"description": "Deep research id"
}
},
"additionalProperties": false
}Deprecated, sunset 2026-12-01: status and results of a run started with run_live_analysis. Use get_quick_read. (deprecated (use /v1/analysis/quick/{id}))
| Argument | Type | Description |
|---|---|---|
| wait | integer | Seconds to wait for the run to finish, 0-25 (default 0) |
| run_id* | string | Run id from run_live_analysis |
| include | string | text: include each agent's full write-up |
{
"type": "object",
"required": [
"run_id"
],
"properties": {
"wait": {
"type": "integer",
"maximum": 25,
"minimum": 0,
"description": "Seconds to wait for the run to finish, 0-25 (default 0)"
},
"run_id": {
"type": "string",
"format": "uuid",
"description": "Run id from run_live_analysis"
},
"include": {
"enum": [
"text"
],
"type": "string",
"description": "text: include each agent's full write-up"
}
},
"additionalProperties": false
}One live analysis session: status, next run time and the latest results.
| Argument | Type | Description |
|---|---|---|
| session_id* | string | Session id from start_live_session |
{
"type": "object",
"required": [
"session_id"
],
"properties": {
"session_id": {
"type": "string",
"format": "uuid",
"description": "Session id from start_live_session"
}
},
"additionalProperties": false
}The scored news stream behind Market Pulse: every article tagged with the symbols it moves, its value (low, medium, high) and its sentiment. Newest first. Use since to fetch only what is new, cursor for older pages. (0.5 points per call)
| Argument | Type | Description |
|---|---|---|
| asset | string | crypto or stock (US stocks and ETFs) |
| limit | integer | Rows, up to 50 (default 20) |
| since | string | ISO 8601 time: only items newer than this (cheaper when nothing is new) |
| cursor | string | next_cursor from the previous answer, for the next older page |
| symbols | string | Comma-separated symbols, e.g. NVDA,BTC |
| min_value | string | Minimum value |
| sentiment | string |
{
"type": "object",
"properties": {
"asset": {
"enum": [
"crypto",
"stock"
],
"type": "string",
"description": "crypto or stock (US stocks and ETFs)"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Rows, up to 50 (default 20)"
},
"since": {
"type": "string",
"description": "ISO 8601 time: only items newer than this (cheaper when nothing is new)"
},
"cursor": {
"type": "string",
"description": "next_cursor from the previous answer, for the next older page"
},
"symbols": {
"type": "string",
"description": "Comma-separated symbols, e.g. NVDA,BTC"
},
"min_value": {
"enum": [
"low",
"medium",
"high"
],
"type": "string",
"description": "Minimum value"
},
"sentiment": {
"enum": [
"bullish",
"bearish",
"neutral"
],
"type": "string"
}
},
"additionalProperties": false
}One article from get_news with its text, symbols, value and sentiment. (0.2 points per call)
| Argument | Type | Description |
|---|---|---|
| article_id* | string | Article id from get_news |
{
"type": "object",
"required": [
"article_id"
],
"properties": {
"article_id": {
"type": "string",
"format": "uuid",
"description": "Article id from get_news"
}
},
"additionalProperties": false
}Market Pulse events on US stocks and crypto: sudden price moves and other market events, each with a severity from 1 to 4. Newest first; delayed on lower plans. (0.3 points per call)
| Argument | Type | Description |
|---|---|---|
| asset | string | crypto or stock (US stocks and ETFs) |
| limit | integer | Rows, up to 100 (default 50) |
| since | string | ISO 8601 time: only items newer than this (cheaper when nothing is new) |
| types | string | Comma-separated event types |
| cursor | string | next_cursor from the previous answer, for the next older page |
| symbol | string | One symbol, e.g. TSLA |
| min_severity | integer | Minimum severity 1-4 |
{
"type": "object",
"properties": {
"asset": {
"enum": [
"crypto",
"stock"
],
"type": "string",
"description": "crypto or stock (US stocks and ETFs)"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Rows, up to 100 (default 50)"
},
"since": {
"type": "string",
"description": "ISO 8601 time: only items newer than this (cheaper when nothing is new)"
},
"types": {
"type": "string",
"description": "Comma-separated event types"
},
"cursor": {
"type": "string",
"description": "next_cursor from the previous answer, for the next older page"
},
"symbol": {
"type": "string",
"description": "One symbol, e.g. TSLA"
},
"min_severity": {
"type": "integer",
"maximum": 4,
"minimum": 1,
"description": "Minimum severity 1-4"
}
},
"additionalProperties": false
}A 24-hour overview of Market Pulse. (0.2 points per call)
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Status and results so far of a quick read. Pass wait (up to 25 s): the answer returns as soon as one more agent has finished; call again while status is queued or running, relaying each new agent.
| Argument | Type | Description |
|---|---|---|
| wait | integer | Seconds to wait for the next agent to finish, 0-25 (default 0) |
| run_id* | string | Run id from quick_read |
| include | string | text: include each agent's full write-up |
{
"type": "object",
"required": [
"run_id"
],
"properties": {
"wait": {
"type": "integer",
"maximum": 25,
"minimum": 0,
"description": "Seconds to wait for the next agent to finish, 0-25 (default 0)"
},
"run_id": {
"type": "string",
"format": "uuid",
"description": "Run id from quick_read"
},
"include": {
"enum": [
"text"
],
"type": "string",
"description": "text: include each agent's full write-up"
}
},
"additionalProperties": false
}One sector: stats, the coming catalysts, recent events and the largest companies. (0.3 points per call)
| Argument | Type | Description |
|---|---|---|
| limit | integer | Rows, up to 50 (default 10) |
| sector* | string | Sector slug from list_sectors, e.g. biopharma |
| include | string | Comma list of constituents, calendar, events (default all) |
{
"type": "object",
"required": [
"sector"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Rows, up to 50 (default 10)"
},
"sector": {
"type": "string",
"description": "Sector slug from list_sectors, e.g. biopharma"
},
"include": {
"type": "string",
"description": "Comma list of constituents, calendar, events (default all)"
}
},
"additionalProperties": false
}Dated catalysts in a sector (for biopharma: PDUFA dates, advisory committees, trial readouts, conferences). (0.3 points per call)
| Argument | Type | Description |
|---|---|---|
| to | string | ISO date (default today + 120 days) |
| from | string | ISO date (default today) |
| kind | string | |
| asset | string | Asset slug |
| limit | integer | Rows, up to 400 (default 200) |
| since | string | ISO 8601 time: only items newer than this (cheaper when nothing is new) |
| stock | string | Ticker |
| sector* | string | Sector slug from list_sectors, e.g. biopharma |
| status | string |
{
"type": "object",
"required": [
"sector"
],
"properties": {
"to": {
"type": "string",
"description": "ISO date (default today + 120 days)"
},
"from": {
"type": "string",
"description": "ISO date (default today)"
},
"kind": {
"type": "string"
},
"asset": {
"type": "string",
"description": "Asset slug"
},
"limit": {
"type": "integer",
"maximum": 400,
"minimum": 1,
"description": "Rows, up to 400 (default 200)"
},
"since": {
"type": "string",
"description": "ISO 8601 time: only items newer than this (cheaper when nothing is new)"
},
"stock": {
"type": "string",
"description": "Ticker"
},
"sector": {
"type": "string",
"description": "Sector slug from list_sectors, e.g. biopharma"
},
"status": {
"enum": [
"scheduled",
"done",
"cancelled"
],
"type": "string"
}
},
"additionalProperties": false
}Events in a sector taken from primary sources, with severity 1-4. (0.3 points per call)
| Argument | Type | Description |
|---|---|---|
| asset | string | Asset slug |
| limit | integer | Rows, up to 100 (default 30) |
| since | string | ISO 8601 time: only items newer than this (cheaper when nothing is new) |
| stock | string | Ticker |
| types | string | Comma-separated event types |
| cursor | string | next_cursor from the previous answer, for the next older page |
| sector* | string | Sector slug from list_sectors, e.g. biopharma |
| min_severity | integer | Minimum severity 1-4 |
{
"type": "object",
"required": [
"sector"
],
"properties": {
"asset": {
"type": "string",
"description": "Asset slug"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Rows, up to 100 (default 30)"
},
"since": {
"type": "string",
"description": "ISO 8601 time: only items newer than this (cheaper when nothing is new)"
},
"stock": {
"type": "string",
"description": "Ticker"
},
"types": {
"type": "string",
"description": "Comma-separated event types"
},
"cursor": {
"type": "string",
"description": "next_cursor from the previous answer, for the next older page"
},
"sector": {
"type": "string",
"description": "Sector slug from list_sectors, e.g. biopharma"
},
"min_severity": {
"type": "integer",
"maximum": 4,
"minimum": 1,
"description": "Minimum severity 1-4"
}
},
"additionalProperties": false
}Every update of this key the user has not been told: finished analysis steps, decisions (with the question to ask), matched news. Relay each `say` (and `ask`) in order, then call again with ack set to the last id you relayed; unacked updates come back until you do. Use wait (up to 25 s) to hold for the next one, and keep calling while any run or session is open.
| Argument | Type | Description |
|---|---|---|
| ack | integer | Last update id you relayed to the user |
| wait | integer | Seconds to wait for something new before answering, 0-25 |
| after | integer | Only ids above this (default 0) |
| kinds | string | Comma-separated kinds |
| limit | integer | Rows, up to 100 (default 50) |
| notify | boolean | true: only what the user must hear |
{
"type": "object",
"properties": {
"ack": {
"type": "integer",
"description": "Last update id you relayed to the user"
},
"wait": {
"type": "integer",
"maximum": 25,
"minimum": 0,
"description": "Seconds to wait for something new before answering, 0-25"
},
"after": {
"type": "integer",
"description": "Only ids above this (default 0)"
},
"kinds": {
"type": "string",
"description": "Comma-separated kinds"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Rows, up to 100 (default 50)"
},
"notify": {
"type": "boolean",
"description": "true: only what the user must hear"
}
},
"additionalProperties": false
}The account's autopilots: the four live agents running on a schedule.
| Argument | Type | Description |
|---|---|---|
| status | string | Filter by status, e.g. running or stopped |
| archived | boolean | List archived autopilots instead |
{
"type": "object",
"properties": {
"status": {
"type": "string",
"description": "Filter by status, e.g. running or stopped"
},
"archived": {
"type": "boolean",
"description": "List archived autopilots instead"
}
},
"additionalProperties": false
}The account's recent deep research runs.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Rows, up to 50 (default 20) |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Rows, up to 50 (default 20)"
}
},
"additionalProperties": false
}The account's live analysis sessions: symbol, timeframe, since when, next run, last decision.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Models that can be set per agent, with their rates and the typical points of a live call.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}The key's news watches. (needs the starter plan or above)
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Sectors under watch with headline stats and the event types they use. (0.2 points per call)
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Webhooks that receive this account's updates.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}US equity market window
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Translate up to 20 titles (1 point per call) (1 points per call)
| Argument | Type | Description |
|---|---|---|
| titles | array | <= 20 |
| language | string | Target language code |
{
"type": "object",
"properties": {
"titles": {
"type": "array",
"items": {
"type": "string"
},
"description": "<= 20"
},
"language": {
"type": "string",
"description": "Target language code"
}
},
"additionalProperties": false
}Prices in points, plans and limits (machine readable)
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Run SimianX's four live AI agents once on a US stock or a crypto pair: Fundamental reads the business or the coin, Indicator the chart, Intelligence the news flow, and Decision turns it into a call with entry, stop and target and the next candle close. Returns a run id right away; each agent's result arrives in get_updates (or get_quick_read with wait) as it finishes, the decision last. After starting, follow it until done and tell the user every finished step; never wait for the user to ask. (uses points, metered on the models used like the website)
| Argument | Type | Description |
|---|---|---|
| tier | string | Model tier (default fast) |
| asset* | string | crypto or stock (US stocks and ETFs) |
| agents | array | Subset of the four live agents (default all four) |
| models | object | Per-agent model override, agent -> model id from list_models (paid plans) |
| symbol* | string | Stock ticker (NVDA) or coin (BTC); crypto also takes a pair id such as BTC-USDT-SWAP |
| language | string | Language of the write-ups, e.g. en, zh-CN, ja (default: the account's) |
| timeframe | string | Candle timeframe. Crypto: 1m 5m 15m 1H 4H 1D. Stock: 1m 15m 1H 1D 1W 1mo. Default 15m |
Points a call would cost, no execution
| Argument | Type | Description |
|---|---|---|
| tier | string | fast | standard | frontier |
| asset | string | stock | crypto |
| agents | array | Subset of agents |
| models | object | agent -> model_id (paid plans) |
| endpoint | string | e.g. analysis.live, deep.create, autopilots.create |
{
"type": "object",
"properties": {
"tier": {
"type": "string",
"description": "fast | standard | frontier"
},
"asset": {
"type": "string",
"description": "stock | crypto"
},
"agents": {
"type": "array",
"items": {
"type": "string"
},
"description": "Subset of agents"
},
"models": {
"type": "object",
"description": "agent -> model_id (paid plans)"
},
"endpoint": {
"type": "string",
"description": "e.g. analysis.live, deep.create, autopilots.create"
}
},
"additionalProperties": false
}Run one of the autopilot's agents now, outside its schedule; the result lands in the event log. (uses points, metered on the models used like the website)
| Argument | Type | Description |
|---|---|---|
| agent* | string | |
| autopilot_id* | string | Autopilot id |
{
"type": "object",
"required": [
"autopilot_id",
"agent"
],
"properties": {
"agent": {
"enum": [
"indicator",
"intelligence",
"fundamental",
"decision"
],
"type": "string"
},
"autopilot_id": {
"type": "string",
"format": "uuid",
"description": "Autopilot id"
}
},
"additionalProperties": false
}Deprecated, sunset 2026-12-01: the same one-pass run as quick_read under its old name. Use quick_read. (uses points, metered on the models used like the website; deprecated (use /v1/analysis/quick))
| Argument | Type | Description |
|---|---|---|
| tier | string | Model tier (default fast) |
| asset* | string | crypto or stock (US stocks and ETFs) |
| agents | array | Subset of the four live agents (default all four) |
| models | object | Per-agent model override, agent -> model id from list_models (paid plans) |
| symbol* | string | Stock ticker (NVDA) or coin (BTC); crypto also takes a pair id such as BTC-USDT-SWAP |
| language | string | Language of the write-ups, e.g. en, zh-CN, ja (default: the account's) |
| timeframe | string | Candle timeframe. Crypto: 1m 5m 15m 1H 4H 1D. Stock: 1m 15m 1H 1D 1W 1mo. Default 15m |
{
"type": "object",
"required": [
"asset",
"symbol"
],
"properties": {
"tier": {
"enum": [
"fast",
"standard",
"frontier"
],
"type": "string",
"description": "Model tier (default fast)"
},
"asset": {
"enum": [
"crypto",
"stock"
],
"type": "string",
"description": "crypto or stock (US stocks and ETFs)"
},
"agents": {
"type": "array",
"items": {
"enum": [
"indicator",
"intelligence",
"fundamental",
"decision"
],
"type": "string"
},
"description": "Subset of the four live agents (default all four)"
},
"models": {
"type": "object",
"description": "Per-agent model override, agent -> model id from list_models (paid plans)",
"additionalProperties": {
"type": "string"
}
},
"symbol": {
"type": "string",
"description": "Stock ticker (NVDA) or coin (BTC); crypto also takes a pair id such as BTC-USDT-SWAP"
},
"language": {
"type": "string",
"description": "Language of the write-ups, e.g. en, zh-CN, ja (default: the account's)"
},
"timeframe": {
"type": "string",
"description": "Candle timeframe. Crypto: 1m 5m 15m 1H 4H 1D. Stock: 1m 15m 1H 1D 1W 1mo. Default 15m"
}
},
"additionalProperties": false
}Find the symbol to use: US stocks, ETFs and crypto pairs matching a name or ticker.
| Argument | Type | Description |
|---|---|---|
| q* | string | Name or ticker |
| asset | string | Default all |
| limit | integer | Rows, up to 30 (default 10) |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Name or ticker"
},
"asset": {
"enum": [
"stock",
"crypto",
"all"
],
"type": "string",
"description": "Default all"
},
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Rows, up to 30 (default 10)"
}
},
"additionalProperties": false
}One asset: links, trials, readiness checklist, its events and calendar, the company behind it (0.3 points per call)
| Argument | Type | Description |
|---|---|---|
| slug* | string | Asset slug |
| sector* | string | Sector slug |
{
"type": "object",
"required": [
"sector",
"slug"
],
"properties": {
"slug": {
"type": "string",
"description": "Asset slug"
},
"sector": {
"type": "string",
"description": "Sector slug"
}
},
"additionalProperties": false
}Tracked assets (drugs, products) of a sector (0.3 points per call)
| Argument | Type | Description |
|---|---|---|
| q | string | Name or alias text |
| limit | integer | <= 200 (default 50) |
| stock | string | Ticker: assets it owns or partners on |
| offset | integer | Paging offset |
| sector* | string | Sector slug |
| review_status | string |
{
"type": "object",
"required": [
"sector"
],
"properties": {
"q": {
"type": "string",
"description": "Name or alias text"
},
"limit": {
"type": "integer",
"description": "<= 200 (default 50)"
},
"stock": {
"type": "string",
"description": "Ticker: assets it owns or partners on"
},
"offset": {
"type": "integer",
"description": "Paging offset"
},
"sector": {
"type": "string",
"description": "Sector slug"
},
"review_status": {
"type": "string"
}
},
"additionalProperties": false
}One event in full (summary, facts, calendar item, readiness) with related events (0.2 points per call)
| Argument | Type | Description |
|---|---|---|
| slug* | string | Permalink slug or event id |
| sector* | string | Sector slug |
{
"type": "object",
"required": [
"sector",
"slug"
],
"properties": {
"slug": {
"type": "string",
"description": "Permalink slug or event id"
},
"sector": {
"type": "string",
"description": "Sector slug"
}
},
"additionalProperties": false
}Follow a stock, asset or calendar item (the first follow in a sector creates an email subscription) (needs the starter plan or above)
| Argument | Type | Description |
|---|---|---|
| id | string | type=calendar: calendar item id |
| slug | string | type=asset |
| type | string | stock | asset | calendar |
| sector* | string | Sector slug |
| ticker | string | type=stock |
| timezone | string | IANA zone for a subscription created by this call (optional) |
| reminder_offsets | array | Days before, 0-30, up to 5 (optional) |
{
"type": "object",
"required": [
"sector"
],
"properties": {
"id": {
"type": "string",
"description": "type=calendar: calendar item id"
},
"slug": {
"type": "string",
"description": "type=asset"
},
"type": {
"type": "string",
"description": "stock | asset | calendar"
},
"sector": {
"type": "string",
"description": "Sector slug"
},
"ticker": {
"type": "string",
"description": "type=stock"
},
"timezone": {
"type": "string",
"description": "IANA zone for a subscription created by this call (optional)"
},
"reminder_offsets": {
"type": "array",
"items": {
"type": "string"
},
"description": "Days before, 0-30, up to 5 (optional)"
}
},
"additionalProperties": false
}The account's follows in this sector and its subscription (needs the starter plan or above)
| Argument | Type | Description |
|---|---|---|
| sector* | string | Sector slug |
{
"type": "object",
"required": [
"sector"
],
"properties": {
"sector": {
"type": "string",
"description": "Sector slug"
}
},
"additionalProperties": false
}One company inside the sector: profile, tracked assets, calendar (from 90 days back), events, market-cap peers (0.3 points per call)
| Argument | Type | Description |
|---|---|---|
| sector* | string | Sector slug |
| ticker* | string | Stock ticker |
{
"type": "object",
"required": [
"sector",
"ticker"
],
"properties": {
"sector": {
"type": "string",
"description": "Sector slug"
},
"ticker": {
"type": "string",
"description": "Stock ticker"
}
},
"additionalProperties": false
}Constituent stocks of a sector (0.3 points per call)
| Argument | Type | Description |
|---|---|---|
| q | string | Ticker prefix or company-name text |
| limit | integer | <= 200 (default 50) |
| offset | integer | Paging offset |
| sector* | string | Sector slug |
| cap_tier | string | large | mid | small | micro | nano |
{
"type": "object",
"required": [
"sector"
],
"properties": {
"q": {
"type": "string",
"description": "Ticker prefix or company-name text"
},
"limit": {
"type": "integer",
"description": "<= 200 (default 50)"
},
"offset": {
"type": "integer",
"description": "Paging offset"
},
"sector": {
"type": "string",
"description": "Sector slug"
},
"cap_tier": {
"type": "string",
"description": "large | mid | small | micro | nano"
}
},
"additionalProperties": false
}Remove a follow by id or by target key (stock:SMMT, asset:<slug>, calendar:<id>) (needs the starter plan or above)
| Argument | Type | Description |
|---|---|---|
| id* | string | Follow id or target key |
| sector* | string | Sector slug |
{
"type": "object",
"required": [
"sector",
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Follow id or target key"
},
"sector": {
"type": "string",
"description": "Sector slug"
}
},
"additionalProperties": false
}Tell the SimianX team about a bug, missing data or an idea. Read by people; not answered.
| Argument | Type | Description |
|---|---|---|
| message* | string | |
| category | string | |
| severity | string | |
| request_id | string | X-Request-Id of the call it concerns, if any |
{
"type": "object",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"maxLength": 4000
},
"category": {
"enum": [
"bug",
"feature",
"pricing",
"docs",
"data",
"other"
],
"type": "string"
},
"severity": {
"enum": [
"low",
"normal",
"high"
],
"type": "string"
},
"request_id": {
"type": "string",
"description": "X-Request-Id of the call it concerns, if any"
}
},
"additionalProperties": false
}Skill and API versions, changelog, deprecations (read at the start of a session)
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Restart a stopped autopilot. (uses points, metered on the models used like the website)
| Argument | Type | Description |
|---|---|---|
| autopilot_id* | string | Autopilot id |
{
"type": "object",
"required": [
"autopilot_id"
],
"properties": {
"autopilot_id": {
"type": "string",
"format": "uuid",
"description": "Autopilot id"
}
},
"additionalProperties": false
}Start the deep research committee on a stock or a coin: four analysts (fundamentals, market, news, and timing for stocks or derivatives for crypto), a bull and a bear researcher, a research manager and a risk manager, ending in a verdict with entry, stop and target and a PDF. Takes about ten minutes; each analyst, each researcher, the start and end of every debate round, the verdict and the PDF link arrive in get_updates (or the run's events) as they land. After starting, follow it until done and tell the user every finished step; never wait for the user to ask. (uses points, metered on the models used like the website)
| Argument | Type | Description |
|---|---|---|
| tier | string | Model tier (default fast) |
| asset | string | stock (default) or crypto |
| agents | array | Subset of the committee seats (default all) |
| models | object | Per-agent model override, agent -> model id from list_models (paid plans) |
| symbol* | string | Stock ticker (NVDA) or coin (BTC); crypto also takes a pair id such as BTC-USDT-SWAP |
| horizon | string | Holding horizon (default swing) |
| language | string | Language of the write-ups, e.g. en, zh-CN, ja (default: the account's) |
Watch a symbol while the user talks to you: the four live agents run at every candle close of the timeframe and report fundamentals, technicals, news flow and the decision with the next run time, for as long as you keep following (get_updates every 10 s, or the WebSocket). The session ends two minutes after you stop following; an autopilot keeps going offline. After starting, follow it until done and tell the user every finished step; never wait for the user to ask. (uses points, metered on the models used like the website)
| Argument | Type | Description |
|---|---|---|
| tier | string | Model tier (default fast) |
| asset* | string | crypto or stock (US stocks and ETFs) |
| agents | array | Subset of the four live agents (default all four) |
| models | object | Per-agent model override, agent -> model id from list_models (paid plans) |
| symbol* | string | Stock ticker (NVDA) or coin (BTC); crypto also takes a pair id such as BTC-USDT-SWAP |
| language | string | Language of the write-ups, e.g. en, zh-CN, ja (default: the account's) |
| timeframe | string | Candle timeframe. Crypto: 1m 5m 15m 1H 4H 1D. Stock: 1m 15m 1H 1D 1W 1mo. Default 15m |
Stop an autopilot's schedule.
| Argument | Type | Description |
|---|---|---|
| autopilot_id* | string | Autopilot id |
{
"type": "object",
"required": [
"autopilot_id"
],
"properties": {
"autopilot_id": {
"type": "string",
"format": "uuid",
"description": "Autopilot id"
}
},
"additionalProperties": false
}End a live analysis session.
| Argument | Type | Description |
|---|---|---|
| session_id* | string | Session id |
{
"type": "object",
"required": [
"session_id"
],
"properties": {
"session_id": {
"type": "string",
"format": "uuid",
"description": "Session id"
}
},
"additionalProperties": false
}Stop matching news for a watch. (needs the starter plan or above)
| Argument | Type | Description |
|---|---|---|
| watch_id* | string | Watch id |
{
"type": "object",
"required": [
"watch_id"
],
"properties": {
"watch_id": {
"type": "string",
"format": "uuid",
"description": "Watch id"
}
},
"additionalProperties": false
}POST a signed test event to the webhook now.
| Argument | Type | Description |
|---|---|---|
| webhook_id* | string | Webhook id |
{
"type": "object",
"required": [
"webhook_id"
],
"properties": {
"webhook_id": {
"type": "string",
"format": "uuid",
"description": "Webhook id"
}
},
"additionalProperties": false
}Change models, intervals, language, the timing gate or AI position control. Changing the timeframe or switching AI control off closes the paper position first.
| Argument | Type | Description |
|---|---|---|
| tier | string | Model tier (default fast) |
| models | object | Per-agent model override, agent -> model id from list_models (paid plans) |
| language | string | Language of the write-ups, e.g. en, zh-CN, ja (default: the account's) |
| intervals | object | |
| timeframe | string | Candle timeframe. Crypto: 1m 5m 15m 1H 4H 1D. Stock: 1m 15m 1H 1D 1W 1mo. Default 15m |
| timing_gate | boolean | |
| autopilot_id* | string | Autopilot id |
| ai_position_control | boolean |
{
"type": "object",
"required": [
"autopilot_id"
],
"properties": {
"tier": {
"enum": [
"fast",
"standard",
"frontier"
],
"type": "string",
"description": "Model tier (default fast)"
},
"models": {
"type": "object",
"description": "Per-agent model override, agent -> model id from list_models (paid plans)",
"additionalProperties": {
"type": "string"
}
},
"language": {
"type": "string",
"description": "Language of the write-ups, e.g. en, zh-CN, ja (default: the account's)"
},
"intervals": {
"type": "object",
"additionalProperties": {
"type": "integer"
}
},
"timeframe": {
"type": "string",
"description": "Candle timeframe. Crypto: 1m 5m 15m 1H 4H 1D. Stock: 1m 15m 1H 1D 1W 1mo. Default 15m"
},
"timing_gate": {
"type": "boolean"
},
"autopilot_id": {
"type": "string",
"format": "uuid",
"description": "Autopilot id"
},
"ai_position_control": {
"type": "boolean"
}
},
"additionalProperties": false
}Usage by key and endpoint
| Argument | Type | Description |
|---|---|---|
| days | integer | Window in days, 1-31 (default 7) |
| key_id | string | Only this key |
{
"type": "object",
"properties": {
"days": {
"type": "integer",
"description": "Window in days, 1-31 (default 7)"
},
"key_id": {
"type": "string",
"description": "Only this key"
}
},
"additionalProperties": false
}Keep matching scored news for symbols server side, also while you are offline; each matching story arrives in get_updates with a sentence to relay (high-value ones ask whether to run a quick read). Several sources of one story arrive once. (needs the starter plan or above)
| Argument | Type | Description |
|---|---|---|
| symbols* | array | Symbols to watch, e.g. NVDA, BTC |
| language | string | Language of the write-ups, e.g. en, zh-CN, ja (default: the account's) |
| min_value | string | Minimum value (default medium) |
| sentiment | string |
{
"type": "object",
"required": [
"symbols"
],
"properties": {
"symbols": {
"type": "array",
"items": {
"type": "string"
},
"description": "Symbols to watch, e.g. NVDA, BTC"
},
"language": {
"type": "string",
"description": "Language of the write-ups, e.g. en, zh-CN, ja (default: the account's)"
},
"min_value": {
"enum": [
"low",
"medium",
"high"
],
"type": "string",
"description": "Minimum value (default medium)"
},
"sentiment": {
"enum": [
"bullish",
"bearish",
"neutral"
],
"type": "string"
}
},
"additionalProperties": false
}The last 50 failed attempts and dead letters
| Argument | Type | Description |
|---|---|---|
| id* | string | Webhook id |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Webhook id"
}
},
"additionalProperties": false
}One webhook
| Argument | Type | Description |
|---|---|---|
| id* | string | Webhook id |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Webhook id"
}
},
"additionalProperties": false
}Change url, events, acks or active
| Argument | Type | Description |
|---|---|---|
| id* | string | Webhook id |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Webhook id"
}
},
"additionalProperties": false
}| number |
| autopilot_id* | string | Autopilot id |
| notional_usd | number | Size in USD instead of quantity |
{
"type": "object",
"required": [
"autopilot_id",
"action"
],
"properties": {
"side": {
"enum": [
"long",
"short"
],
"type": "string"
},
"price": {
"type": "number",
"description": "place_order / replace_order: resting price"
},
"action": {
"enum": [
"open",
"add",
"reduce",
"close",
"set_levels",
"place_order",
"replace_order",
"cancel_order",
"set_timeframe"
],
"type": "string"
},
"fraction": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "reduce: share of the position"
},
"quantity": {
"type": "number",
"description": "Coins or shares"
},
"stop_loss": {
"type": "number"
},
"timeframe": {
"type": "string",
"description": "set_timeframe: the new timeframe (closes the position first)"
},
"expires_in": {
"type": "integer",
"maximum": 604800,
"minimum": 60,
"description": "Order lifetime in seconds"
},
"order_type": {
"enum": [
"limit",
"stop"
],
"type": "string"
},
"take_profit": {
"type": "number"
},
"autopilot_id": {
"type": "string",
"format": "uuid",
"description": "Autopilot id"
},
"notional_usd": {
"type": "number",
"description": "Size in USD instead of quantity"
}
},
"additionalProperties": false
}| timeframe | string | Candle timeframe. Crypto: 1m 5m 15m 1H 4H 1D. Stock: 1m 15m 1H 1D 1W 1mo. Default 15m |
| timing_gate | boolean |
| ai_position_control | boolean | Let the Decision agent open and manage a paper position |
{
"type": "object",
"required": [
"asset",
"symbol"
],
"properties": {
"tier": {
"enum": [
"fast",
"standard",
"frontier"
],
"type": "string",
"description": "Model tier (default fast)"
},
"asset": {
"enum": [
"crypto",
"stock"
],
"type": "string",
"description": "crypto or stock (US stocks and ETFs)"
},
"agents": {
"type": "array",
"items": {
"enum": [
"indicator",
"intelligence",
"fundamental",
"decision"
],
"type": "string"
},
"description": "Subset of the four live agents (default all four)"
},
"models": {
"type": "object",
"description": "Per-agent model override, agent -> model id from list_models (paid plans)",
"additionalProperties": {
"type": "string"
}
},
"symbol": {
"type": "string",
"description": "Stock ticker (NVDA) or coin (BTC); crypto also takes a pair id such as BTC-USDT-SWAP"
},
"webhook": {
"type": "object",
"description": "{url, secret?, events?}: also POST each event to this URL"
},
"language": {
"type": "string",
"description": "Language of the write-ups, e.g. en, zh-CN, ja (default: the account's)"
},
"intervals": {
"type": "object",
"description": "agent -> seconds between runs",
"additionalProperties": {
"type": "integer"
}
},
"timeframe": {
"type": "string",
"description": "Candle timeframe. Crypto: 1m 5m 15m 1H 4H 1D. Stock: 1m 15m 1H 1D 1W 1mo. Default 15m"
},
"timing_gate": {
"type": "boolean"
},
"ai_position_control": {
"type": "boolean",
"description": "Let the Decision agent open and manage a paper position"
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"asset",
"symbol"
],
"properties": {
"tier": {
"enum": [
"fast",
"standard",
"frontier"
],
"type": "string",
"description": "Model tier (default fast)"
},
"asset": {
"enum": [
"crypto",
"stock"
],
"type": "string",
"description": "crypto or stock (US stocks and ETFs)"
},
"agents": {
"type": "array",
"items": {
"enum": [
"indicator",
"intelligence",
"fundamental",
"decision"
],
"type": "string"
},
"description": "Subset of the four live agents (default all four)"
},
"models": {
"type": "object",
"description": "Per-agent model override, agent -> model id from list_models (paid plans)",
"additionalProperties": {
"type": "string"
}
},
"symbol": {
"type": "string",
"description": "Stock ticker (NVDA) or coin (BTC); crypto also takes a pair id such as BTC-USDT-SWAP"
},
"language": {
"type": "string",
"description": "Language of the write-ups, e.g. en, zh-CN, ja (default: the account's)"
},
"timeframe": {
"type": "string",
"description": "Candle timeframe. Crypto: 1m 5m 15m 1H 4H 1D. Stock: 1m 15m 1H 1D 1W 1mo. Default 15m"
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"symbol"
],
"properties": {
"tier": {
"enum": [
"fast",
"standard",
"frontier"
],
"type": "string",
"description": "Model tier (default fast)"
},
"asset": {
"enum": [
"crypto",
"stock"
],
"type": "string",
"description": "stock (default) or crypto"
},
"agents": {
"type": "array",
"items": {
"type": "string"
},
"description": "Subset of the committee seats (default all)"
},
"models": {
"type": "object",
"description": "Per-agent model override, agent -> model id from list_models (paid plans)",
"additionalProperties": {
"type": "string"
}
},
"symbol": {
"type": "string",
"description": "Stock ticker (NVDA) or coin (BTC); crypto also takes a pair id such as BTC-USDT-SWAP"
},
"horizon": {
"enum": [
"short",
"swing",
"long"
],
"type": "string",
"description": "Holding horizon (default swing)"
},
"language": {
"type": "string",
"description": "Language of the write-ups, e.g. en, zh-CN, ja (default: the account's)"
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"asset",
"symbol"
],
"properties": {
"tier": {
"enum": [
"fast",
"standard",
"frontier"
],
"type": "string",
"description": "Model tier (default fast)"
},
"asset": {
"enum": [
"crypto",
"stock"
],
"type": "string",
"description": "crypto or stock (US stocks and ETFs)"
},
"agents": {
"type": "array",
"items": {
"enum": [
"indicator",
"intelligence",
"fundamental",
"decision"
],
"type": "string"
},
"description": "Subset of the four live agents (default all four)"
},
"models": {
"type": "object",
"description": "Per-agent model override, agent -> model id from list_models (paid plans)",
"additionalProperties": {
"type": "string"
}
},
"symbol": {
"type": "string",
"description": "Stock ticker (NVDA) or coin (BTC); crypto also takes a pair id such as BTC-USDT-SWAP"
},
"language": {
"type": "string",
"description": "Language of the write-ups, e.g. en, zh-CN, ja (default: the account's)"
},
"timeframe": {
"type": "string",
"description": "Candle timeframe. Crypto: 1m 5m 15m 1H 4H 1D. Stock: 1m 15m 1H 1D 1W 1mo. Default 15m"
}
},
"additionalProperties": false
}