> ## Documentation Index
> Fetch the complete documentation index at: https://docs.podflare.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Claude Desktop

> Podflare as an MCP server for Claude Desktop.

## Config

Edit `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS)
or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):

```json theme={null}
{
  "mcpServers": {
    "podflare": {
      "command": "node",
      "args": ["/absolute/path/to/podflare/mcp/dist/index.js"],
      "env": {
        "PODFLARE_HOSTD_URL": "https://api.podflare.ai",
        "PODFLARE_API_KEY": "pk_your_key_here"
      }
    }
  }
}
```

## Tools

Claude will see these as hammer-icon tools in the composer:

* `run_python` — REPL-persistent Python
* `run_bash` — fresh shell
* `fork` — N-way CoW fork
* `diff`, `merge_into`
* `upload`, `download`

## Usage

Ask Claude to use a tool naturally:

> "Use run\_python to load /data/customers.csv with pandas and tell me
> the top 5 regions by revenue."

Claude invokes the tool, the MCP server routes to Podflare, the sandbox
runs the code, and the result flows back.

## Session model

Each Claude conversation gets one Podflare sandbox, created on first tool
call and destroyed when Claude Desktop quits the MCP server. Reopening a
conversation starts a new sandbox — prior in-memory state is lost.

## Troubleshooting

<AccordionGroup>
  <Accordion title="Tools don't appear">
    Check Claude Desktop's logs at `~/Library/Logs/Claude/mcp-server-podflare.log`.
    Usually means `podflare-hostd` isn't reachable at `PODFLARE_HOSTD_URL`.
  </Accordion>

  <Accordion title="Tool calls time out">
    The MCP server has a 5-minute default. Long-running code inside the
    sandbox can exceed this. Consider using `fork` to parallelize.
  </Accordion>
</AccordionGroup>
