docs
Get startedTroubleshootingPaymentsWebhooksAgent paymentsSwop MCPOviIdentity (swop.id)SwivyRPC (preview)API reference
Tool reference

Agent control

Read, talk to and manage the user’s own AI trading agent (Ovi).

4 tools. Generated from the Swop MCP server’s own tools/list (server version 0.2.2), so names, inputs and limits match what your client sees.

swop_resolve_strategy_markets

Resolve strategy markets · Sign-in: agent.read · /mcp only · Read-only

Resolve a requested perps universe such as gold, ETH and any stock to supported live Hyperliquid market IDs. Read-only; never places trades. Show the resulting market list when proposing a strategy revision. Stock discovery covers supported equity underlyings, not all builder-DEX assets. Requires agent.read.

InputTypeRequiredDescription
requeststringYesmin length 1; max length 2000

swop_get_my_agent

See my AI trading agent's strategies and settings · Sign-in: agent.read · /mcp only · Read-only

The linked user's own AI trading agent (Goldman): what it is running and how much rope it has. Use it for "how is my agent doing", "what is my strategy", "what is it allowed to trade". Returns autonomy level, venue permissions and caps, vault, strategies (status, mirror settings, performance), playbook files, brain settings, recent activity, pending proposals and pending confirmations. Pass playbookFile to read one playbook in full, or mirrorLeader to preview copying a Hyperliquid trader. Read-only: to change anything use swop_update_my_agent; to chat use swop_message_my_agent.

InputTypeRequiredDescription
playbookFilestringNoA playbook file name from playbookFiles, e.g. "strategy.md", to return its full markdown
mirrorLeaderstringNoA Hyperliquid 0x address to preview: the leader's book and the orders the vault would place (pattern ^0x[a-fA-F0-9]\{40\}$)

swop_message_my_agent

Talk to my AI trading agent · Sign-in: agent.write · /mcp only · Changes or moves things

Send the user's message to their AI trading agent (Goldman) and return its reply, as if they typed it in the agent's chat: questions, market analysis, drafting a plan, editing the playbook, pause, focus. If Goldman answers with a proposal, approve or reject it with swop_update_my_agent. A bare confirmation ("yes", "confirm") is refused; confirm an armed close or deposit with swop_update_my_agent action confirm_pending. With autopilot on Goldman may trade from a chat request, so send only what the user asked.

InputTypeRequiredDescription
messagestringYesThe user's message to Goldman (min length 1; max length 2000)

swop_update_my_agent

Manage my AI trading agent: strategies, autonomy, caps, playbook · Sign-in: agent.write · /mcp only · Preview, then confirm · Changes or moves things

Manage the user's AI trading agent (Goldman): start, stop, revise or refocus a strategy, set how autonomous it is, change its caps and venues, edit its playbook or brain, mirror a trader, approve or reject its proposals. Narrowing changes apply immediately: stop_strategy, set_autonomy to proposal, lowering caps, update_strategy_focus, write_playbook, update_brain, reject_proposal. Use revise_strategy to edit a specific existing plan’s market universe, entry/exit rules and rationale. This always returns a before/after preview, including when the plan is already running. Anything that adds risk or moves money returns a preview instead (revise_strategy, set_autonomy full, raising caps or enabling venues, start_strategy, mirror, approve_proposal, confirm_pending): show the user its summary, every changes line and the riskNote, get an explicit yes, then call again with only previewId and confirm: true. Previews are single-use and expire in 5 minutes. Get ids and current values from swop_get_my_agent first.

InputTypeRequiredDescription
action"set_autonomy" | "update_station" | "start_strategy" | "stop_strategy" | "update_strategy_focus" | "revise_strategy" | "write_playbook" | "update_brain" | "mirror" | "approve_proposal" | "reject_proposal" | "confirm_pending"NoThe change to make. Omit only when confirming a preview
level"full" | "proposal"Noset_autonomy: full = trades without asking; proposal = asks first
accessobject (map)Noupdate_station: per-venue switches to change; omitted venues keep their value
limitsobject (map)Noupdate_station: caps to change, e.g. { "dailyCapUsd": 200, "maxLeverage": 3 }; null = uncapped
strategyIdstringNostart_strategy / stop_strategy / update_strategy_focus / revise_strategy
assetsarray of stringNoupdate_strategy_focus: market symbols, e.g. ["BTC","ETH"] (max items 12)
revisionobject (title, assets, brief, entryCondition, exitCondition, selectionCriteria, executionPlan, riskControls)Norevise_strategy: explicit patch to the existing plan; omitted fields stay unchanged. Read current rules first and update contradictory ETH-only wording when broadening markets. Resolve exact assets with swop_resolve_strategy_markets. Limits, permissions and runtime are not editable here.
predictionFocusarray of stringNoupdate_strategy_focus: sports/leagues to focus on
entryBandobject (minEntryPrice, maxEntryPrice) or nullNoupdate_strategy_focus: prediction odds band in cents or fractions; null clears
fileNamestringNowrite_playbook: file from playbookFiles, e.g. "risk.md"
contentstringNowrite_playbook: the FULL new markdown (replaces the file) (max length 16000)
tier"fast" | "deep"Noupdate_brain: model tier
memoryEnabledbooleanNoupdate_brain
feedSharingEnabledbooleanNoupdate_brain: post trades to the social feed
leaderAddressstringNomirror: Hyperliquid 0x address to copy (omit to keep the current leader)
scaleMode"equity" | "fixed" | "max"Nomirror: equity = your share of their equity; fixed = scaleMultiplier x their size; max = whole vault at their leverage
scaleMultipliernumberNomirror: with scaleMode fixed, e.g. 0.05 = 5% of their size (max 100; > 0)
leverageMode"cap" | "skip"Nomirror: cap their leverage at maxLeverage, or skip positions above it
maxLeverageintegerNomirror: leverage ceiling (> 0)
coinsarray of stringNomirror: only copy these markets (empty = all)
driftPctnumberNomirror: rebalance drift threshold % (min 1; max 50)
copyTriggersbooleanNomirror: copy the leader's take-profit/stop-loss
labelstringNomirror: display label (max length 40)
startbooleanNomirror: start it now
proposalIdstringNoapprove_proposal / reject_proposal: from pendingProposals
reasonstringNoreject_proposal: optional reason (max length 300)
previewIdstringNoFrom a preview response
confirmbooleanNotrue ONLY after the user explicitly approved that preview

On this page