Agent Setup
Connect an AI agent to Keel. The hosted MCP endpoint is the default — paste one URL and sign in; the keel-trade package is the other way in.
Keel runs one hosted MCP endpoint:
https://mcp.usekeel.io/mcpPaste it into Claude, ChatGPT, Cursor, Windsurf or any client that takes a remote MCP server, sign in with your Keel account when the consent page opens, and the agent has Keel: a 26-tool research/backtest/read surface, nothing to install, no API key to create. Authentication is your MCP client's OAuth flow, never a tool call.
The agent builds, tests and reads. When you want to run a strategy on your account, it hands it to the Keel app and you take it from there.
Connect your client
Claude
- Customize → Connectors → Add custom connector
- Paste https://mcp.usekeel.io/mcp and choose Connect
- Sign in with your Keel account when the consent page opens
First prompt: Find carry and momentum components on Keel (usekeel.io), compose a strategy, and backtest it.
Vendor docs: claude.com/docs (checked 2026-09-16)
ChatGPT
- Settings → Security and login → turn on Developer mode (a paid ChatGPT plan; on Business/Enterprise an admin must allow it)
- Open chatgpt.com/plugins, choose +, give the connector a name and a description, and enter https://mcp.usekeel.io/mcp as the MCP server URL (the /mcp path included)
- Sign in with your Keel account when the consent page opens
First prompt: Find carry and momentum components on Keel (usekeel.io), compose a strategy, and backtest it.
Vendor docs: developers.openai.com/api (checked 2026-09-16)
Claude Code
claude mcp add --transport http keel https://mcp.usekeel.io/mcp- Run the command in your terminal
- Inside Claude Code run /mcp and choose Authenticate
- Sign in with your Keel account when the consent page opens
First prompt: Connect to Keel (usekeel.io), then compose a carry strategy and backtest it.
Vendor docs: code.claude.com/docs (checked 2026-09-16)
Cursor
{
"mcpServers": {
"keel": {
"url": "https://mcp.usekeel.io/mcp"
}
}
}- Add the server to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global)
- Cursor asks you to sign in on first use
- Sign in with your Keel account when the consent page opens
Install link (opens the client and registers Keel):
cursor://anysphere.cursor-deeplink/mcp/install?name=keel&config=eyJ1cmwiOiJodHRwczovL21jcC51c2VrZWVsLmlvL21jcCJ9First prompt: Connect to Keel (usekeel.io), then compose a carry strategy and backtest it.
Vendor docs: cursor.com/docs (checked 2026-09-16)
Codex
codex mcp add keel --url https://mcp.usekeel.io/mcp
codex mcp login keel- Run the two commands in your terminal
- Codex opens your browser for the sign-in
- Sign in with your Keel account when the consent page opens
First prompt: Connect to Keel (usekeel.io), then compose a carry strategy and backtest it.
Vendor docs: learn.chatgpt.com/docs (checked 2026-09-16)
Windsurf
{
"mcpServers": {
"keel": {
"serverUrl": "https://mcp.usekeel.io/mcp"
}
}
}- Add the server to Windsurf's mcp_config.json
- Windsurf asks you to sign in on first use
- Sign in with your Keel account when the consent page opens
First prompt: Connect to Keel (usekeel.io), then compose a carry strategy and backtest it.
Vendor docs: docs.devin.ai/desktop (checked 2026-09-16)
VS Code
{
"servers": {
"keel": {
"type": "http",
"url": "https://mcp.usekeel.io/mcp"
}
}
}- Add the server to .vscode/mcp.json, or open the install link
- VS Code asks you to sign in on first use
- Sign in with your Keel account when the consent page opens
Install link (opens the client and registers Keel):
vscode:mcp/install?%7B%22name%22%3A%22keel%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.usekeel.io%2Fmcp%22%7DOr in the browser:
https://vscode.dev/redirect/mcp/install?%7B%22name%22%3A%22keel%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.usekeel.io%2Fmcp%22%7DFirst prompt: Connect to Keel (usekeel.io), then compose a carry strategy and backtest it.
Vendor docs: code.visualstudio.com/docs (checked 2026-09-16)
Other
- Use your client's own add remote / HTTP MCP server flow with https://mcp.usekeel.io/mcp
- The first request answers 401 with OAuth 2.1 metadata, so a compliant client discovers the sign-in step by itself
- Sign in with your Keel account when the consent page opens
First prompt: Connect to Keel (usekeel.io), then compose a carry strategy and backtest it.
What the agent gets
Hosted tools (26):
keel_doctor— Diagnose the Keel MCP connection in one read-only pass: auth, API reachability, and the active tool surface.keel_feedback— Send product feedback about Keel to the team: friction, praise, or a bug report from this session.keel_help— Fetch a Keel knowledge or DSL-reference document by topic name — the way to pull depth on demand instead of reasoning about DSL syntax, phases, or composition rules from memory.keel_status— Report Keel CLI/MCP status in one call: auth state and identity, API URL, the toolsets and MCP tools visible under the currentKEEL_TOOLSETS, remaining plan quota (backtest runs, compute seconds, live slots), and cross-surface hints.keel_components_compose_help— Fetch the full 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 pipeline position (after/before) — the REQUIRED first step of the two-step discovery every build turn starts with.keel_library_get— Read one Keel Library entry's verified facts: headline metrics, backtest window, data freshness, and the published variants (parameter presets with their own metrics).keel_library_list— List the Keel Library — the verified, backtested strategy entries published in the product.keel_open_in_app— Returns a link to view and manage this strategy in the Keel web app.keel_ownership_status— Fetch the read-only first-session ownership projection for one strategy — where it sits in its maturation arc and what to do next.keel_plan_status— Report the org's current Keel plan as enforced numbers: plan name, per-plan limits, remaining quota this period (backtest runs, compute seconds, live strategy slots), the builder fee in bps, andupgrade_options— the other available plans with USD prices and exact limit differences, returned as data, not a recommendation.keel_strategy_diff— Compute the structural diff between two strategy versions or two sources: added, removed, and modified steps, per-parameter changes (such asROC.period 20→42), reordering, and component version changes, plus a one-line summary.keel_strategy_get— Fetch one strategy by id — metadata by default; passinclude_source=trueto also read the DSL source at a givenversion(default HEAD), andinclude_versions=trueto list every commit.keel_strategy_log— Show a strategy's commit history — the 'git log' of the sync model.keel_strategy_memory_read— Read the agent/user notes attached to a strategy — the durable context that outlives a single session.keel_strategy_search— Search and list strategies in the current org byquery(name substring),tag,owner, orshare_id— the entry point when the user wants to work on an EXISTING strategy rather than build a new one.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 / carry attribution, plus period info and a presignedresults.jsonURL when the run is complete.keel_backtest_watch— Poll an already-running backtest until it reaches a terminal status (succeeded/failed/cancelled) or the timeout elapses — the bounded way to wait on a run started bykeel_backtest_run.keel_library_fork— Fork a verified Keel Library entry into the caller's org as a normal, editable strategy — the supported way to start from something proven instead of composing from scratch.keel_strategy_compose— Create or update a strategy from DSL source.keel_strategy_fork— Fork a strategy into your org to iterate on a COPY — the safe way to improve or adapt an existing strategy (yours, or one from a share link) without touching the original.keel_strategy_memory_write— Append a durable note to a strategy's memory — the place to capture WHY, not what.keel_share_create— Publish a strategy or a backtest result at a public usekeel.io/share/<id> URL.keel_live_monitor— Read-only monitoring for strategies currently running on your account.
tools/list is authoritative; use the live schemas for exact argument names. The file-based workspace tools and keel_auth_login / keel_auth_logout are not registered on the hosted endpoint — they belong to the package below.
Other ways to connect
The keel CLI
pipx install keel-trade
keel auth loginuv tool install keel-trade also works. The keel CLI starts with no sign-up; keel auth login later attaches the workspace to your account.
Local MCP over stdio
The same package serves MCP over stdio for file-based workspaces; the host launches it as a child process.
claude mcp add keel -- keel mcp serve
codex mcp add keel -- keel mcp serveAny client that launches MCP servers from a config file:
{
"mcpServers": {
"keel": {
"command": "keel",
"args": ["mcp", "serve"]
}
}
}Claude Desktop bundle
Claude Desktop: download the bundle and drag it onto the app. One bundle for macOS, Windows and Linux; needs system Python 3.11+. Download: keel-trade-latest.mcpb
API key
The REST API with an API key, for your own agents and scripts. Create a key at app.usekeel.io/settings; reference: API reference
More
- Per-client runbook with expected outputs: https://usekeel.io/agents
- Machine-readable instructions for agents: https://usekeel.io/AGENTS.md
- CLI reference · MCP tool reference