Native Soil
Soil Desktop

Connect your AI client

Soil Desktop runs a local stdio MCP server on your machine. Paste one config block into your AI client and soil save / soil load work right where you type.

Soil Desktop runs a local MCP server on your machine. Your AI client launches it as a local process and talks to it over stdin/stdout · no network, no cloud, no OAuth dance in the client. Once connected, soil save and soil load work inline in the tools you already use.

Connect

Open the Connect tab in Soil Desktop. It shows a ready-to-paste config block for each client, with the command, paths, and your account already filled in for this install. Paste the matching block into your client's MCP config and restart the client.

It's a local connection

Your AI client starts the server as a subprocess and talks to it over stdin/stdout. Raw prompts, provider payloads, source files, and private paths are excluded from every handover by default.

A typical block (Claude Desktop · Settings → Developer → Edit Config) looks like this · Soil Desktop fills in the real path and account for you:

{
  "mcpServers": {
    "soil": {
      "command": "node",
      "args": [
        "/Applications/Soil.app/Contents/Resources/soil-mcp/soil-mcp-stdio.mjs"
      ],
      "env": {
        "SOIL_DATA_DIR": "…/Application Support/@soil/desktop/soil-data",
        "SOIL_ACCOUNT_ID": "account_…"
      }
    }
  }
}

The Connect tab has copy-ready blocks for Claude Desktop, Cursor, and any other MCP client · always prefer the block shown in the app over this example, since it carries the exact path and account for your machine.

Same commands, same account

The local MCP exposes the same soil commands as Soil Cloud and runs against the same Soil account. A handover saved through the local MCP is stored on this device and shows up in Handovers and Projects in the app.

Where it fits

In the three connectivity tiers, the local MCP is the local path · for clients that run local stdio servers, and for anyone who wants a local process in the loop instead of a remote connector. The copy-paste backstop remains the universal floor.

On this page