Skip to content

MCP tools reference

The 18 tools shipped in @spineos/mcp v0.1.0, grouped by area, with the API key capability each one requires.

4 min read

Overview

@spineos/mcp@0.1.0 ships 18 tools, grouped by area. Every tool requires a specific capability on the API key that spineos-mcp is using.

How tool registration works

When spineos-mcp starts, it calls /v1/me to read the capabilities attached to your key. It then registers only the tools whose required capability is on the key. Tools you cannot use never appear in the assistant's tool list. This keeps the model's prompt surface small and prevents the assistant from picking a tool that would only fail with a 403.

If you change capabilities (by revoking the key and creating a new one with a different scope set), restart your MCP client so it relaunches spineos-mcp and re-reads /v1/me.

Desktops -- read

ToolRequired scopeWhat it does
desktops_listdesktop:readList all desktops owned by the authenticated user.
desktops_getdesktop:readGet full details of a single desktop by id.

Desktops -- lifecycle

ToolRequired scopeWhat it does
desktops_startdesktop:lifecycleStart (or resume) a stopped desktop.
desktops_stopdesktop:lifecycleGracefully stop a running desktop. State and disk preserved.
desktops_restartdesktop:lifecycleRestart a running desktop.

Desktops -- run and capture

ToolRequired scopeWhat it does
desktop_exec_pythondesktop:controlRun Python code on the desktop's agent runtime. Returns stdout, stderr, and exit code.
desktop_screenshotdesktop:controlTake a screenshot of the desktop. Returns a PNG image.

Desktops -- computer control

ToolRequired scopeWhat it does
desktop_clickdesktop:controlClick at coordinates.
desktop_typedesktop:controlType text.
desktop_keydesktop:controlPress a keyboard key (xdotool name, for example Return, ctrl+a).
desktop_scrolldesktop:controlScroll the view.
desktop_dragdesktop:controlMouse drag from a start point to an end point.

Chat

ToolRequired scopeWhat it does
desktop_chatdesktop:chatSend a message to the AI agent running on a desktop. Returns the assistant response.

Scheduled jobs -- read

ToolRequired scopeWhat it does
scheduled_jobs_listscheduled_jobs:readList scheduled jobs, optionally filtered by workspace and/or desktop.

Scheduled jobs -- write

ToolRequired scopeWhat it does
scheduled_jobs_createscheduled_jobs:writeCreate a new scheduled job running a command on a cron schedule.
scheduled_jobs_run_nowscheduled_jobs:writeTrigger an immediate run of a scheduled job, regardless of its cron schedule.

Knowledge base -- read

ToolRequired scopeWhat it does
kb_searchkb:readFull-text search the workspace knowledge base. Returns ranked hits with excerpts.
kb_read_notekb:readRead the full content of a single note (by path) from a workspace knowledge base.

Knowledge base -- write

ToolRequired scopeWhat it does
kb_write_notekb:writeCreate or overwrite a markdown note (by path) in a workspace knowledge base.

Workspaces -- write

ToolRequired scopeWhat it does
workspace_createworkspaces:writeCreate a new workspace owned by the authenticated user. Seeds the default knowledge-base template.

Mission Control -- write

ToolRequired scopeWhat it does
mission_create_taskmission:writeCreate a Mission Control task for the on-desktop AI agent, one-off or scheduled, optionally approval-gated.

What is coming

Destructive desktop operations (creating new desktops, destroying existing ones) and admin-only tools are planned for a future release of @spineos/mcp. They are not currently exposed and no date is committed. Until they ship, use the dashboard for create and destroy actions.

For the catalogue of capabilities you can put on a key, see API capabilities.