View as markdown

MCP reference

This is the complete catalog behind the workflows in Orchestration and Common workflows. You normally ask for an outcome in natural language and let the agent choose the tools.

JCode can inject these tools into every new agent it launches. Open Settings → your host → Agents and turn on Enable JCode tools, or set daemon.mcp.injectIntoAgents to true.

Depending on the provider, JCode delivers the catalog through its native tool interface or MCP. The capabilities are the same either way.

The MCP server itself is controlled by daemon.mcp.enabled. Existing agents may need a reload.

Mental model

Workspaces decide where work happens; agent parentage decides who owns the work.

  • An agent that calls create_agent without a workspaceId gets a subagent in its own workspace.
  • Passing a workspaceId places that subagent in another workspace without detaching it from its parent.
  • A top-level MCP caller without a workspace gets a new local workspace.
  • Create a workspace first when you need worktree isolation, a specific branch, or a pull request checkout.

MCP does not expose an agent-detach tool. Detaching is a manual user action in the app or CLI.

Tools

Agents

ToolFunction
create_agentCreate an agent, optionally placing it in an existing workspace with workspaceId.
send_agent_promptSend a task to a running agent.
get_agent_statusReturn the latest snapshot for an agent.
list_agentsList recent agents as compact metadata.
cancel_agentAbort an agent's current run but keep the agent alive.
archive_agentSoft-delete an agent and remove it from the active list.
kill_agentTerminate an agent session permanently.
update_agentUpdate an agent name, labels, or runtime settings such as mode/model/thinking/features.
get_agent_activityReturn recent agent timeline entries as a curated summary.
set_agent_modeSwitch an agent's session mode.

Workspaces

ToolFunction
create_workspaceCreate a local or worktree-isolated workspace. Worktrees can branch off, check out a branch, or a PR.
list_workspacesList active workspaces and their directories and isolation.
rename_workspaceChange the user-visible name of the current or specified workspace.
archive_workspaceArchive a workspace and the sessions it owns.

For worktree isolation, create_workspace accepts the same useful choices as the app: branch off from a base, check out an existing branch, or check out a pull request. The worktree remains an implementation detail of the workspace lifecycle.

Terminals

ToolFunction
list_terminalsList terminal sessions for one working directory or all working directories.
create_terminalCreate a terminal session for a working directory.
kill_terminalKill a terminal session.
capture_terminalCapture plain-text output from a terminal session.
send_terminal_keysSend text or special key tokens to a terminal session.

Schedules and heartbeats

Both use the same cron engine, but they have deliberately different interfaces.

ToolFunction
create_scheduleCreate a cron schedule that starts a new agent for each run.
list_schedulesList new-agent schedules managed by the daemon.
inspect_scheduleInspect a schedule and its run history.
pause_schedulePause an active schedule.
resume_scheduleResume a paused schedule.
update_scheduleChange a schedule's cron, prompt, agent settings, limits, or other settings.
schedule_logsReturn recent runs and output for a schedule.
run_schedule_onceStart one new-agent schedule run without changing its cron.
delete_scheduleDelete a new-agent schedule permanently.
create_heartbeatSend a recurring cron-backed prompt into the current agent.
delete_heartbeatDelete one of the current agent's heartbeats.

MCP heartbeats are ephemeral: create or delete them. To change one, delete it and create a replacement. Pause, resume, update, inspect, logs, and run-once apply to new-agent schedules only.

Providers

ToolFunction
list_providersList configured agent providers, availability, and modes.
list_modelsList models for an agent provider.
inspect_providerInspect compact provider capabilities and draft feature settings.

Permissions

ToolFunction
list_pending_permissionsReturn pending permission requests across agents.
respond_to_permissionApprove or deny a pending permission request.

Browser

Browser automation is opt-in and adds tools for opening tabs, reading pages, clicking, typing, and taking screenshots. See the Browser tools reference.

Voice

ToolFunction
speakSpeak text through daemon-managed voice output. Available only in voice-enabled sessions.