Keel Docs
SDK & CLI

MCP Tool Reference

Generated reference for Keel MCP outcome tools and their CLI equivalents.

MCP Tool Reference

Generated from keel.tools.outcomes.OUTCOMES and the live Click command tree. Do not edit this file by hand; run python packages/keel-trade/keel-sdk/scripts/generate_agent_reference_docs.py.

Keel currently exposes 32 outcome tools. The default local stdio MCP surface exposes 30 tools, including read-only keel_live_monitor; the 2 live-write tools are opt-in with KEEL_TOOLSETS=always,read-only,backtest,share,live-read,live-write.

KEEL_TOOLSETS=live remains a deprecated compatibility alias for live-read,live-write; new configs should use the explicit split.

MCP is the agent surface. The CLI is the reproducible terminal surface. Outcome tools share names, schemas, handlers, structured errors, and safety annotations across both surfaces.

Outcome Tools

MCP toolCLI commandToolsetScopeAnnotationsRequired argsOptional args
keel_accounts_listkeel accounts listread-onlyaccount.readread-only, idempotent-account_id (string), limit (integer), cursor (string)
keel_audit_list_lastkeel audit list-lastread-onlyaudit.readread-only, idempotent-n (integer)
keel_auth_loginkeel auth login (CLI-only implementation)alwaysreadwrite, idempotent, open-world-scope (base, live), api_url (string)
keel_backtest_runkeel backtest runbacktestbacktest.createwritestrategy_id* (string), start_date* (string)end_date (string), commit_id (string), config (object), wait (boolean), auto_push (boolean), push_message (string)
keel_backtest_summarizekeel backtest summarizebacktestbacktest.readread-only, idempotentbacktest_id* (string)-
keel_backtest_watchkeel backtest watchbacktestbacktest.readread-only, idempotentbacktest_id* (string)interval_s (number), timeout_s (integer)
keel_components_compose_helpkeel components compose-helpread-onlycomponent.readread-only, idempotentname* (string)-
keel_components_detail_batchkeel components describe-batchread-onlycomponent.readread-only, idempotentnames* (array)-
keel_components_searchkeel components searchread-onlycomponent.listread-only, idempotent-keyword (string), query (string), category (data_loader, data_transform, forecast_composer, forecast_mapper, indicator, position_manager, position_sizer, regime_detector, risk_manager, signal_composer, signal_transform, slot_op, universe_filter), input_type (string), output_type (string), after (string), before (string), limit (integer)
keel_doctorkeel doctoralwaysaudit.readread-only, idempotent--
keel_helpkeel helpalwaysaudit.readread-only, idempotenttopic* (string)-
keel_live_controlkeel live controllive-writerunner.pausewrite, destructive, open-worlddeployment_id* (string), action* (pause, resume, stop, trigger)-
keel_live_deploykeel live deploylive-writerunner.createwrite, destructive, open-worldstrategy_id* (string), account_id* (string)preview (boolean), confirmation_token (string), schedule (string)
keel_live_monitorkeel live monitorlive-readrunner.readread-only, idempotent, open-worlddeployment_id* (string)view (equity, executions, funding, orders, overview, pnl, portfolio, positions, stats, trades, weights, weights-history), limit (integer), symbol (string), side (string), start_time (string), sort_by (string), sort_dir (string), cursor (string)
keel_share_createkeel share createsharesharing.createwrite, destructive, open-worldtarget_id* (string)target_type (strategy, backtest), include_source (boolean), permission (view, fork), expires_at (string)
keel_statuskeel statusalwaysaudit.readread-only, idempotent--
keel_strategy_checkoutkeel strategy checkoutbackteststrategy.readwrite, open-worldstrategy_id* (string)dir (string)
keel_strategy_composekeel strategy composebackteststrategy.createwrite, idempotent, open-world-source (string), source_file (string), strategy_id (string), name (string), dry_run (boolean), parent_version (string)
keel_strategy_deletekeel strategy deletebackteststrategy.deletewrite, destructive, open-worldstrategy_id* (string)-
keel_strategy_diffkeel strategy diffread-onlystrategy.readread-only, idempotent, open-worldref_a* (string), ref_b* (string)strategy_id (string)
keel_strategy_discardkeel strategy discardbackteststrategy.readwrite, destructive, idempotent-strategy_id (string)
keel_strategy_forkkeel strategy forkbackteststrategy.createwrite, idempotent, open-worldsource* (string)name (string), target_workspace_id (string)
keel_strategy_getkeel strategy getread-onlystrategy.readread-only, idempotent, open-worldstrategy_id* (string)version (string), include_source (boolean), include_versions (boolean)
keel_strategy_logkeel strategy logread-onlystrategy.readread-only, idempotentstrategy_id* (string)limit (integer)
keel_strategy_memory_readkeel strategy memory-readread-onlystrategy.readread-only, idempotent, open-worldstrategy_id* (string)limit (integer)
keel_strategy_memory_writekeel strategy memory-writebackteststrategy.updatewrite, open-worldstrategy_id* (string), note* (string)role (agent, user)
keel_strategy_pullkeel strategy pullbackteststrategy.readwrite, idempotent, open-world-strategy_id (string), force (boolean)
keel_strategy_pushkeel strategy pushbackteststrategy.updatewrite, open-world-strategy_id (string), message (string), force (boolean)
keel_strategy_restorekeel strategy restorebackteststrategy.updatewrite, open-worldstrategy_id* (string), ref* (string)message (string)
keel_strategy_searchkeel strategy searchread-onlystrategy.readread-only, idempotent, open-world-query (string), tag (string), owner (string), share_id (string), limit (integer), cursor (string)
keel_strategy_statuskeel strategy statusbackteststrategy.readread-only, idempotent, open-world-strategy_id (string), include_recent (boolean), recent_commits (integer)
keel_strategy_workspaceskeel strategy workspacesread-onlystrategy.readread-only, idempotent--

Tool Descriptions

always

  • keel_auth_login: Run the OAuth 2.1 + PKCE browser-loopback login flow against Keel and persist tokens to ~/.keel/config.yaml so subsequent tool calls are authenticated.
  • keel_doctor: Diagnose the Keel CLI/MCP installation: auth, API reachability, and active toolsets.
  • keel_help: Fetch a Keel knowledge document by topic name.
  • keel_status: Report Keel CLI/MCP status: auth state, API URL, active toolsets, and the list of MCP tools visible under the current KEEL_TOOLSETS.

read-only

  • keel_accounts_list: List your Hyperliquid accounts (id, label, wallet_address, status, account_mode, agent_address, expires_at, attached strategy/deployment).
  • keel_audit_list_last: Read the most recent N audit events for the current org.
  • keel_components_compose_help: Fetch the component schema/detail contract for ONE known pipeline component: parameter list, type signature, slot reads/writes, examples, and common pitfalls.
  • keel_components_detail_batch: Fetch the full spec (schema, parameter list, examples, slot reads/writes, type signature) for SEVERAL components in one call.
  • keel_components_search: Search the Keel pipeline component catalog by keyword, semantic query, category, input/output type, or position in the pipeline (after/before).
  • keel_strategy_diff: Compute the structural diff between two strategy sources or two remote strategy versions.
  • keel_strategy_get: Fetch one strategy by id.
  • keel_strategy_log: Show commit history for a strategy — sequence number, commit id, parent, source hash, message, timestamp, and tags.
  • keel_strategy_memory_read: Read agent/user notes attached to a strategy.
  • keel_strategy_search: Search and list strategies in the current org.
  • keel_strategy_workspaces: List all locally checked-out strategy workspaces.

backtest

  • keel_backtest_run: Submit a backtest for a strategy over a date range.
  • keel_backtest_summarize: Summarize a completed backtest: Sharpe / max drawdown / total return / turnover / funding-attribution, plus period info and a presigned results.json URL when the run is complete.
  • keel_backtest_watch: Poll an existing backtest until it reaches a terminal status or the timeout elapses.
  • keel_strategy_checkout: Pull a platform strategy into a local workspace so you can edit, validate, and version-control it.
  • keel_strategy_compose: Create or update a strategy from DSL source.
  • keel_strategy_delete: Hard-delete a strategy on the platform.
  • keel_strategy_discard: Remove a local workspace (the checked-out strategy.py + .keel-meta.json).
  • keel_strategy_fork: Fork a strategy into your org.
  • keel_strategy_memory_write: Append an agent/user note to a strategy's memory.
  • keel_strategy_pull: Re-fetch the server HEAD into the local working copy.
  • keel_strategy_push: Commit local strategy.py changes back to the platform as a new version.
  • keel_strategy_restore: Restore a historical commit as the new HEAD.
  • keel_strategy_status: Compare a local workspace's strategy.py against the server's current HEAD.

share

  • keel_share_create: Publish a strategy or a backtest result at a public usekeel.io/share/<id> URL.

live-read

  • keel_live_monitor: Read live deployment state: overview, positions, equity, P&L, stats, weights, weights-history, executions, orders, trades, funding events, or portfolio summary.

live-write

  • keel_live_control: Pause, resume, stop, or trigger a manual rebalance on a live deployment.
  • keel_live_deploy: Deploy a strategy to a live Hyperliquid account.

CLI Equivalents

Outcome commands generated from the registry:

CLI commandMCP toolPositional argsOptions
keel accounts listkeel_accounts_listaccount_id--format, --limit, -n, --cursor
keel audit list-lastkeel_audit_list_last---format, --n
keel auth loginkeel_auth_login---key, --scope, --api-url
keel backtest runkeel_backtest_runstrategy_id--format, --wait, --no-wait, --start-date, --push-message, --end-date, --config, --commit-id, --auto-push, --no-auto-push
keel backtest summarizekeel_backtest_summarizebacktest_id--format
keel backtest watchkeel_backtest_watchbacktest_id--format, --timeout-s, --interval-s
keel components compose-helpkeel_components_compose_helpname--format
keel components describe-batchkeel_components_detail_batchnames...--format
keel components searchkeel_components_searchkeyword--format, --query, --output-type, --limit, -n, --input-type, --category, --before, --after
keel doctorkeel_doctor---format
keel helpkeel_helptopic--format
keel live controlkeel_live_controldeployment_id--format, --yes, --action
keel live deploykeel_live_deploystrategy_id--format, --yes, --schedule, --preview, --no-preview, --confirmation-token, --account-id
keel live monitorkeel_live_monitordeployment_id--format, --view, --symbol, --start-time, --sort-dir, --sort-by, --side, --limit, -n, --cursor
keel share createkeel_share_createtarget_id--format, --yes, --target-type, --permission, --include-source, --no-include-source, --expires-at
keel statuskeel_status---format
keel strategy checkoutkeel_strategy_checkoutstrategy_id--format, --dir
keel strategy composekeel_strategy_compose---format, --strategy-id, --source-file, --source, --parent-version, --name, --dry-run, --no-dry-run
keel strategy deletekeel_strategy_deletestrategy_id--format, --yes
keel strategy diffkeel_strategy_diff---format, --strategy-id, --ref-b, --ref-a
keel strategy discardkeel_strategy_discardstrategy_id--format, --yes
keel strategy forkkeel_strategy_forksource--format, --target-workspace-id, --name
keel strategy getkeel_strategy_getstrategy_id--format, --version, --include-versions, --no-include-versions, --include-source, --no-include-source
keel strategy logkeel_strategy_logstrategy_id--format, --limit, -n
keel strategy memory-readkeel_strategy_memory_readstrategy_id--format, --limit, -n
keel strategy memory-writekeel_strategy_memory_writestrategy_id--format, --role, --note
keel strategy pullkeel_strategy_pullstrategy_id--format, --force, --no-force
keel strategy pushkeel_strategy_pushstrategy_id--format, --message, -m, --force, --no-force
keel strategy restorekeel_strategy_restorestrategy_id--format, --ref, -r, --message, -m
keel strategy searchkeel_strategy_search---format, --tag, --share-id, --query, --owner, --limit, -n, --cursor
keel strategy statuskeel_strategy_statusstrategy_id--format, --recent-commits, --include-recent, --no-include-recent
keel strategy workspaceskeel_strategy_workspaces---format

CLI-Only Commands

These commands are intentionally not MCP tools. They handle local setup, credentials, project scaffolding, local context, local arming, and local universe files.

CLI commandPositional argsOptions
keel arm disarm---emergency
keel arm live set---account, --ttl, --once, --renew
keel arm status--
keel auth logout--
keel auth status--
keel auth whoami--
keel components describename--format
keel components detailname--format
keel context addnote-
keel context edit--
keel context importsource-
keel context init---force, --user
keel context show---layer
keel mcp serve--
keel project hooks--
keel project init---force
keel skills list---format
keel skills showname--format
keel universe add-groupfile, name--symbols
keel universe categories--
keel universe getfile-
keel universe instruments---market
keel universe modify-groupfile, name--add, --remove
keel universe remove-groupfile, name-
keel universe resolve---mode, --market, --symbols, --categories, --top-n, --exclusions, --inclusions
keel universe setfile--mode, --market, --symbols, --categories, --top-n, --exclusions, --inclusions