Connect Cady

For the agent: follow this guide in the current conversation. Do not ask the user to paste another setup prompt.

Cady MCP endpoint: https://app.cadyworks.com/mcp

Use the endpoint in the user's setup request when it supplies one; otherwise use the endpoint above.

Steps

1. Check existing connections first and reuse Cady. If configured but disconnected, authenticate or reload it. Do not add a duplicate, install another route, or replace unrelated settings. On Claude Code, the recommended plugin below includes skills. On Codex, skills are optional: a sandboxed agent can call get_cady_context with its task and follow the method core inline in the plan, without installing or fetching a skill from the web. In Claude Code the cady@cady plugin is the one route, and the claude.ai Cady connector must be switched off inside Claude Code so Cady is not connected twice. Where the app allows it, add Cady yourself with the matching instructions below; otherwise give the user only the matching settings instructions in one short message.

2. The user signs in and approves the intended company and access in the browser. Tell them to return to this conversation. Resume the same request when tools become available and do not ask for another setup prompt. If the app requires a reload or new chat, explain that requirement without claiming automatic resume across it.

3. First read, by intent. For first company setup in Cady, whether the business is a new idea or already operating, call get_cady_context({area:"ops/onboarding"}) once. Do not make a plain context read first. Follow company_setup.setup, or load the method at company_setup.method when its text is absent. Follow any recorded completed-review instruction instead of repeating setup. For reconnection, joining an existing Cady company, or a current task, call get_cady_context({task:"<the user request in one sentence>"}) and follow its plan. With no task yet, call get_cady_context({}) and follow its general plan.

4. Before any writes, confirm that the returned company matches the requested name, domain or legal entity. Ask once if ambiguous. If it is wrong, stop company work and reconnect to the intended company. Claim connection success only after a successful context read, and saved work only after verifying its result.

Browser apps

Claude web/desktop and ChatGPT web need Cady added through their settings. A prompt cannot install a connection in these apps. Use the matching instructions in the app dropdown or this help section, including OAuth automatic or dynamic registration.

Skills (once per AI app; recommended on Claude Code and Codex)

Cady methods are skills in a library the agent loads. Claude Code: run claude plugin marketplace add malcolmai/cady-skills, then claude plugin install cady@cady, then claude plugin install cady-core@cady, and install the group plugins your agents use (cady-company, cady-gtm, cady-finance, cady-product, cady-engineering). Codex: no installation is needed to begin. Without confirmed installed skills, get_cady_context serves the selected method core inline; plan.method.more offers read_cady for the full text inside Cady. Sandboxed agents can follow that plan even without shell network or write access to the skills folder. For an optional local install when those are available, skills live under $CODEX_HOME/skills (default ~/.codex/skills). Run git clone --depth 1 https://github.com/malcolmai/cady-skills "${CODEX_HOME:-$HOME/.codex}/cady-skills", then mkdir -p "${CODEX_HOME:-$HOME/.codex}/skills/cady" && cp -R "${CODEX_HOME:-$HOME/.codex}/cady-skills/plugins/cady/skills/cady/." "${CODEX_HOME:-$HOME/.codex}/cady-skills/library" "${CODEX_HOME:-$HOME/.codex}/cady-skills/references" "${CODEX_HOME:-$HOME/.codex}/skills/cady/", check that "${CODEX_HOME:-$HOME/.codex}/skills/cady/SKILL.md" exists, then start a new Codex session. claude.ai: upload cady.zip from the latest release at github.com/malcolmai/cady-skills/releases/latest as a skill. Other apps: Cady has no verified skill install for them; get_cady_context returns the selected method core inline in its plan, with a full in-Cady read on request.

Several companies, one connection

One connection covers all your companies. Sign-in preselects your last choice, else the first by name. Keep it if this app mainly works there; a project header overrides that default, and orgId on a call overrides both. Choose "No default" only if every call names its company. Company ids are in the Cady app under Settings.

Claude Code: the cady@cady plugin carries the server without headers. Choose the company with orgId on each call, or use the connection default chosen at sign-in. Do not add a company header: Claude Code keys its OAuth token store by the server configuration, including headers, so each header value splits the saved sign-in.

Codex: in [mcp_servers.cady] of $CODEX_HOME/config.toml (default ~/.codex/config.toml) add env_http_headers = { "X-Cady-Company" = "CADY_COMPANY" } then export CADY_COMPANY=<company id> in the shell that starts Codex. Edit only that table and keep its other settings. Start a new session and confirm the company in the first read before any write. A static alternative is http_headers = { "X-Cady-Company" = "<company id>" }.

claude.ai and ChatGPT: they send no header. Cady uses the default company you chose at sign-in; to change it, reconnect and choose another.

Changing a project's company takes a session restart in the host, not a reconnect, because tools and instructions are per company.

A connection needs a fresh sign-in every 90 days, and after 30 days unused. Scheduled agents hit the same limit.

If connecting does not work

One address serves every company, whichever region holds its data. If a saved connection uses an older regional address, replace it with the main address and authenticate again. Do not add a second connection. If approval expires or fails, restart authentication on the existing connection. Do not create another company to repair a connection. If the returned company is wrong, stop dependent work and reconnect with the intended company.

Claude web or desktop

Open Claude web → Customize → Connectors → + Add → Add custom connector. Desktop: Settings → Connectors. Name it Cady, enter the URL, choose OAuth, sign in now and Register automatically. A chat prompt cannot install it.

Name: Cady
URL: https://app.cadyworks.com/mcp

Approve your company in the browser, then return here with Cady enabled.

Claude custom connectors

ChatGPT web or desktop

Open ChatGPT on the web → Plugins → + → Add custom MCP server. Name it Cady, enter the URL, choose OAuth with dynamic registration, review the warning and create the plugin. Workspace controls may apply.

Name: Cady
URL: https://app.cadyworks.com/mcp

Install it, approve your company in the browser, then return here with Cady enabled.

ChatGPT custom MCP setup

Claude Code

Install the cady plugin; it adds the Cady server and the skills. Run once in a terminal:

claude plugin marketplace add malcolmai/cady-skills
claude plugin install cady@cady
claude plugin install cady-core@cady

Restart Claude Code, sign in in the browser when prompted, then check /mcp. If the claude.ai Cady connector is on in Claude Code, switch it off there; both together show Cady twice.

Claude Code MCP

Codex CLI or desktop

In a terminal, run these commands, or add Cady under Settings → MCP servers:

codex mcp add cady --url 'https://app.cadyworks.com/mcp'
codex mcp login cady

Sign in and approve the company in your browser. If Cady tools are missing, reconnect Cady and start a new session. Set default_tools_approval_mode to "approve" for Cady only to reduce repeated write prompts; do not change global approval settings.

Codex MCP setup

Gemini CLI

Merge this entry into the existing mcpServers object in Gemini CLI settings, preserving other servers:

{
  "mcpServers": {
    "cady": {
      "httpUrl": "https://app.cadyworks.com/mcp"
    }
  }
}

Then run /mcp auth cady and complete sign-in in the browser.

Gemini CLI MCP

Antigravity

Merge this entry into ~/.gemini/config/mcp_config.json, preserving other servers:

{
  "mcpServers": {
    "cady": {
      "serverUrl": "https://app.cadyworks.com/mcp"
    }
  }
}

Sign in in the browser when asked.

Antigravity MCP

Grok

On grok.com open Connectors → New Connector → Custom and enter https://app.cadyworks.com/mcp. Or in a terminal, run:

grok mcp add --transport http cady 'https://app.cadyworks.com/mcp'

Sign in in the browser when asked.

Grok connectors

Grok CLI MCP

Hermes Agent

Add this to ~/.hermes/config.yaml, preserving other servers:

mcp_servers:
  cady:
    url: "https://app.cadyworks.com/mcp"
    auth: oauth

Then run hermes mcp login cady and approve the company in the browser.

Hermes Agent

Cursor

Settings → Tools & MCP → add Cady, or configure .cursor/mcp.json using the current documented format. Check the format against your installed version.

Cursor MCP

VS Code / GitHub Copilot

In VS Code, run MCP: Add Server, or merge this server into .vscode/mcp.json. Copilot portable config uses a different format; follow its documentation.

{
  "servers": {
    "cady": {
      "type": "http",
      "url": "https://app.cadyworks.com/mcp"
    }
  }
}

Sign in in the browser when asked.

VS Code MCP servers

MCP configuration reference

Cline

Use the MCP Servers panel → Remote Servers, or its CLI to add Cady. Follow the current Cline steps to sign in.

cline mcp add cady 'https://app.cadyworks.com/mcp' --transport http --yes

Cline MCP

Roo Code

Roo Code supports remote MCP servers. Cady has not been verified with Roo Code; check that your version supports remote connections and browser sign-in.

{
  "mcpServers": {
    "cady": {
      "type": "streamable-http",
      "url": "https://app.cadyworks.com/mcp"
    }
  }
}

Roo Code MCP

Goose

Not yet verified with Cady. Check that your version supports remote HTTP and browser sign-in.

Goose documentation

Zed

Settings → AI → MCP Servers → Add Server → Add Remote Server. Zed supports browser sign-in when the server does not require a separate authorization header.

{
  "context_servers": {
    "cady": {
      "url": "https://app.cadyworks.com/mcp"
    }
  }
}

Zed MCP

OpenCode

Run this command, then authenticate in the browser:

opencode mcp add cady --url 'https://app.cadyworks.com/mcp'
opencode mcp auth cady

OpenCode MCP servers

Windsurf / legacy Cascade

The available Cascade instructions apply to legacy Cascade; do not treat them as current Windsurf defaults. Follow the current product’s MCP documentation.

Cascade MCP (legacy)

Other agent apps

Add https://app.cadyworks.com/mcp as a remote HTTP MCP server named cady. Follow the app’s steps to connect and sign in. Use fixed-client settings only when Cady provides them for this connection; never copy identifiers from another deployment.