diff --git a/content/agents/claude-desktop.mdx b/content/agents/claude-desktop.mdx
index da3a9cb..c1f3b93 100644
--- a/content/agents/claude-desktop.mdx
+++ b/content/agents/claude-desktop.mdx
@@ -1,36 +1,77 @@
---
title: Claude Desktop
-description: Install the Spacefast desktop extension for Claude Desktop, or paste the hosted MCP server into your config
+description: Connect Claude Desktop to Spacefast with the hosted connector, the Spacefast plugin, or the local desktop extension
---
-The Spacefast desktop extension lets Claude Desktop publish files and read your Spaces directly.
+Add Spacefast to Claude Desktop so it can publish and read your Spaces. The connector is the recommended way. The desktop extension runs the server on your computer instead.
-## Install the extension
+## Add the Spacefast connector
-Download `claude-desktop.mcpb` from the latest release of `github.com/spacefast/plugins` and open it. Claude Desktop installs it as a desktop extension.
+The connector is the hosted Spacefast MCP server. You add it once to your Claude account, so it works in the desktop app, on claude.ai, and on your phone.
-
- Grab `claude-desktop.mcpb` from the releases page.
+
+ On claude.ai or in Claude Desktop, open Customize → Connectors, then choose + → Add custom connector.
-
- Claude Desktop reads the manifest and offers to install the extension.
+
+ Name it Spacefast and use `https://mcp.spacefast.com` as its URL.
-
- The extension has one setting, a Spacefast API key. Leave it empty to publish anonymously and claim the Space later.
+
+ Choose Connect, then sign in to Spacefast and approve access.
+
+
+ Turn Spacefast on for the conversation you want to use it in.
-Then ask for something small to prove the extension is live.
+On a Team or Enterprise plan, an owner has to add the connector first.
-
-Publish this folder to Spacefast and give me the live URL.
+Then ask for something small to prove Spacefast is connected.
+
+
+Make a one-page site that says hello and publish it to Spacefast. Give me the link.
List my Spacefast Spaces.
+## Add the Spacefast plugin
+
+The plugin adds the Spacefast skills and the hosted connector to your Claude account, for the Chat and Cowork tabs and for Claude Code signed in with the same account.
+
+
+
+ In Claude, open Customize → Plugins, then choose Add → Add marketplace → Add from a repository.
+
+
+ Paste `spacefast/plugins` and add the marketplace.
+
+
+ Select the Spacefast plugin, then choose Add.
+
+
+
+If Claude says the Spacefast connector isn't connected, add the connector as described above. Plugins need a paid Claude plan, and on a Team or Enterprise plan an owner may limit which marketplaces you can add. See [Use plugins in Claude](https://support.claude.com/en/articles/13837440-use-plugins-in-claude).
+
+## Install the desktop extension
+
+The extension runs the Spacefast MCP server on your computer. It publishes inline files on every system; to publish a local folder, use the [CLI](/cli) (`sf publish `). It starts the server with `npx`, so it needs Node.js 20.3 or newer with `npx` installed where Claude Desktop can find it.
+
+
+
+ Download `claude-desktop.mcpb` from the latest release of `github.com/spacefast/plugins`.
+
+
+ Claude Desktop reads the manifest and offers to install the extension.
+
+
+ The extension has one setting, a Spacefast API key. Leave it empty to publish anonymously and claim the Space later.
+
+
+
+If Claude Desktop shows "Server disconnected" or "Unable to connect to extension server", open `~/Library/Logs/Claude/mcp-server-Spacefast.log` on macOS. `spawn npx ENOENT` means Claude Desktop cannot find `npx`. This happens when Node.js comes from Homebrew or a Node version manager. Use the connector instead.
+
## What the manifest declares
The bundle is a manifest version `0.2` extension with a Node server. Its entry point is `server/index.js`, which is a thin spawner. It launches the Spacefast MCP server over stdio through `npx`, so the extension itself carries no server code.
@@ -45,14 +86,14 @@ The bundle is a manifest version `0.2` extension with a Node server. Its entry p
}
```
-Because the server runs locally, it can read files. `publish` takes a path or the current directory, not only inline files.
+The server runs locally, but it starts through `npx`, so `publish` takes inline files on every system. Use the CLI for a local folder.
| Fact | Value |
|---|---|
| Manifest version | `0.2` |
| Server type | `node` |
| Platforms | macOS, Windows, Linux |
-| Node | 20 or newer |
+| Node | 20 or newer (the CLI it launches needs 20.3 or newer) |
| License | MIT |
| Tools declared | The nine Spacefast MCP tools |
@@ -83,8 +124,8 @@ If you would rather connect to the hosted endpoint and sign in with OAuth, add t
}
```
-The hosted server has no filesystem, so `publish` requires inline files. Connectors you add on claude.ai sync down to Desktop; the bundle is the desktop-only lane.
+The hosted server has no filesystem, so `publish` requires inline files. Plugins and connectors you add to your Claude account sync down to Desktop; the bundle is the desktop-only lane.
:::note
-`sf setup agent --agent claude-desktop` writes nothing. Claude Desktop is not one of the clients the CLI knows how to configure. Use the extension or the config file above.
+`sf setup agent --agent claude-desktop` writes nothing. Claude Desktop is not one of the clients the CLI knows how to configure. Use the plugin, the extension, or the config file above.
:::
diff --git a/content/agents/index.mdx b/content/agents/index.mdx
index cb220d0..dfd1cbc 100644
--- a/content/agents/index.mdx
+++ b/content/agents/index.mdx
@@ -93,7 +93,7 @@ The default connection method is `remote-proxy`, which points your client at `sf
Plugin with an always-available rule, or a one-click deeplink.
- A double-click desktop extension with an optional token field.
+ The hosted connector, the Spacefast plugin, or a local desktop extension.
The stdio command, the hosted URL, and generic JSON config.