Documentation menu

jdx setup

IDE equivalent: Wire jdx into an agent (OpenCode, Claude Code, Cursor, Kilo Code, Cline, Codex CLI, GitHub Copilot CLI, Antigravity)

Wire jdx into an AI agent: write the MCP server entries that launch jdx mcp into the agent config (project checkout or user-global). --agent opencode|claude-code|cursor|kilo|cline|codex|copilot|antigravity --scope project|system. OpenCode writes both the v1 (mcp.jdx) and v2 (mcp.servers.jdx) entries so either OpenCode line picks it up (v1 support is deprecated, slated for removal); Claude Code writes the mcpServers.jdx entry into .mcp.json (project) or ~/.claude.json (system); Cursor writes the mcpServers.jdx entry into .cursor/mcp.json (project) or ~/.cursor/mcp.json (system); Kilo Code gets the single mcp.jdx entry in kilo.jsonc (project prefers .kilo/); Cline writes the mcpServers.jdx transport entry into the single global cline_mcp_settings.json for either scope (Cline keeps no project-level MCP file). Codex CLI gets the [mcp_servers.jdx] table in .codex/config.toml (project) or ~/.codex/config.toml (system, $CODEX_HOME honoured); GitHub Copilot CLI gets the mcpServers.jdx entry in .mcp.json (project) or ~/.copilot/mcp-config.json (system, $COPILOT_HOME honoured); Antigravity gets the mcpServers.jdx entry in .agents/mcp_config.json (project) or ~/.gemini/config/mcp_config.json (system). --check reports without writing; --remove uninstalls cleanly. Merges (never clobbers unrelated entries); re-runs are no-ops. Exits 0 installed/removed/present, 1 checked-absent, 3 bad usage, 5 unreadable config.

Usage#

jdx setup [<options>]

Options#

OptionDescription
--agent=<text>Agent to wire: opencode, claude-code (claude is accepted as an alias), cursor, kilo (Kilo Code, an OpenCode fork), cline (Cline), codex (Codex CLI), copilot (GitHub Copilot CLI), or antigravity (agy is accepted as an alias).
--scope=<text>Where to write: project (default) or system. OpenCode targets opencode.json[c] (~/.config/opencode); Claude Code targets .mcp.json (project) or ~/.claude.json (system); Cursor targets .cursor/mcp.json (project) or ~/.cursor/mcp.json (system); Kilo Code targets kilo.json[c] (~/.config/kilo, project prefers .kilo/); Cline targets ~/.cline/data/settings/cline_mcp_settings.json for both scopes (single global file). Codex CLI targets .codex/config.toml (project) or ~/.codex/config.toml (system, $CODEX_HOME honoured); GitHub Copilot CLI targets .mcp.json (project) or ~/.copilot/mcp-config.json (system, $COPILOT_HOME honoured); Antigravity targets .agents/mcp_config.json (project) or ~/.gemini/config/mcp_config.json (system).
--checkReport whether the entry is present without writing anything.
--removeRemove the jdx MCP entry, leaving every other entry untouched.
--jsonEmit machine-readable JSON instead of human-readable text (same information, D-007).
-h, --helpShow this message and exit

Full help text#

Show jdx setup --help
jdx setup --help
Usage: jdx setup [<options>]

  Wire jdx into an AI agent: write the MCP server entries that launch `jdx mcp` into the agent config (project checkout or user-global). --agent opencode|claude-code|cursor|kilo|cline|codex|copilot|antigravity --scope project|system. OpenCode writes both the v1 (mcp.jdx) and v2 (mcp.servers.jdx) entries so either OpenCode line picks it up (v1 support is deprecated, slated for removal); Claude Code writes the mcpServers.jdx entry into .mcp.json (project) or ~/.claude.json (system); Cursor writes the mcpServers.jdx entry into .cursor/mcp.json (project) or ~/.cursor/mcp.json (system); Kilo Code gets the single mcp.jdx entry in kilo.jsonc (project prefers .kilo/); Cline writes the mcpServers.jdx transport entry into the single global cline_mcp_settings.json for either scope (Cline keeps no project-level MCP file). Codex CLI gets the [mcp_servers.jdx] table in .codex/config.toml (project) or ~/.codex/config.toml (system, $CODEX_HOME honoured); GitHub Copilot CLI gets the mcpServers.jdx entry in .mcp.json (project) or ~/.copilot/mcp-config.json (system, $COPILOT_HOME honoured); Antigravity gets the mcpServers.jdx entry in .agents/mcp_config.json (project) or ~/.gemini/config/mcp_config.json (system). --check reports without writing; --remove uninstalls cleanly. Merges (never clobbers unrelated entries); re-runs are no-ops. Exits 0 installed/removed/present, 1 checked-absent, 3 bad usage, 5 unreadable config.

Options:
  --agent=<text>  Agent to wire: opencode, claude-code (claude is accepted as an alias), cursor, kilo (Kilo Code, an OpenCode fork), cline (Cline), codex (Codex CLI), copilot (GitHub Copilot CLI), or antigravity (agy is accepted as an alias).
  --scope=<text>  Where to write: project (default) or system. OpenCode targets opencode.json[c] (~/.config/opencode); Claude Code targets .mcp.json (project) or ~/.claude.json (system); Cursor targets .cursor/mcp.json (project) or ~/.cursor/mcp.json (system); Kilo Code targets kilo.json[c] (~/.config/kilo, project prefers .kilo/); Cline targets ~/.cline/data/settings/cline_mcp_settings.json for both scopes (single global file). Codex CLI targets .codex/config.toml (project) or ~/.codex/config.toml (system, $CODEX_HOME honoured); GitHub Copilot CLI targets .mcp.json (project) or ~/.copilot/mcp-config.json (system, $COPILOT_HOME honoured); Antigravity targets .agents/mcp_config.json (project) or ~/.gemini/config/mcp_config.json (system).
  --check         Report whether the entry is present without writing anything.
  --remove        Remove the jdx MCP entry, leaving every other entry untouched.
  --json          Emit machine-readable JSON instead of human-readable text (same information, D-007).
  -h, --help      Show this message and exit

Real output — this example ran against the current jdx when the page was built.

Learn more#

Guide: Use with AI agents · All commands

View as Markdown · Updated