# Outbox MCP server: publish HTML from Claude, Cursor and Claude Code

> Connect Outbox to any MCP client: the remote connector at mcp.out-box.dev with OAuth, or npx -y @out-box/mcp with an API key. Publish, version, share and track pages.

The Outbox MCP server turns your Outbox library into native tools for Claude, Claude Code, Cursor and any other MCP client. Your agent publishes the page it just built, republishes it with changes, shares it and tells you who opened it, without curl or copy-paste.

## What your agent can do with it

- Publish a page from HTML or Markdown, private by default, and get its URL back.
- Read a page, add context and republish it to the same slug: every publish is a new version, with rollback.
- List and search your library, and append blocks to a daily page.
- Read the comments and suggestions people leave, and apply the ones you accept.
- Create [per-recipient share links](https://out-box.dev/en/per-recipient-links) with an expiry, and see who opened a page.

It is published on npm as `@out-box/mcp` and declared to the official MCP Registry as `dev.out-box/mcp`. Source: [github.com/jonathanleiva15/out-box-mcp](https://github.com/jonathanleiva15/out-box-mcp).

## Option 1: the remote connector (no install)

Outbox hosts the server at the URL below. It uses OAuth: the first time your client connects, a browser window asks you to sign in to Outbox and choose the permissions (`outbox:read`, `outbox:write`, `outbox:delete`). There is no API key to copy. Each connection creates an agent key named "Claude connector" that you can revoke anytime in Settings → Keys.

Server URL:

```
https://mcp.out-box.dev/mcp
```

In claude.ai or Claude Desktop: Settings → Connectors → Add custom connector, name it Outbox and paste the URL. In Claude Code, add it from the terminal and run `/mcp` to sign in:

```
claude mcp add --transport http outbox https://mcp.out-box.dev/mcp
```

## Option 2: the local server with npx

For clients that only run local (stdio) servers, for CI, or when you want a key limited to one folder. It needs Node.js 20 or later and an Outbox API key from Settings → Keys; npx downloads and runs the package, nothing is installed globally.

Claude Desktop, Cursor and other JSON-configured clients:

```
{
  "mcpServers": {
    "outbox": {
      "command": "npx",
      "args": ["-y", "@out-box/mcp"],
      "env": {
        "OUTBOX_API_KEY": "outbox_xxxxxxxx",
        "OUTBOX_TOOLSETS": "core,comments,sharing"
      }
    }
  }
}
```

Claude Code:

```
claude mcp add outbox --env OUTBOX_API_KEY=outbox_xxxxxxxx --env OUTBOX_TOOLSETS=core,comments,sharing -- npx -y @out-box/mcp
```

Scope the key so a leak can only touch one folder: `outbox keys gen-agent --folder clients/acme --verbs publish,list --days 30` (from the [Outbox CLI](https://www.npmjs.com/package/@out-box/cli)). The `list` verb lets the agent re-read its own private pages.

## Toolsets and settings

Tools are grouped so your client only loads what you need. `OUTBOX_TOOLSETS` picks them (`core` is always on; `all` enables everything):

| Toolset | What it covers |
| --- | --- |
| core | Publish, read, list, search, versions, rollback, visibility, daily append, delete, who opened a page |
| comments | Read comments and suggestions, reply, accept or discard |
| sharing | Share links (recipient, expiry), grants to other users, page passwords, revoke |
| library | Folders, diffs, templates, library export, render checks |
| keys | API keys, folder-scoped agent keys, audit log |
| teams | Team members, invites, groups, company keys |
| automation | Event webhooks and schedules |
| apps | Interactive page viewer for clients that support MCP Apps |

Other variables: `OUTBOX_LANG` (`en` or `es` tool descriptions), `OUTBOX_FILES_DIR` (the only folder the server reads and writes local files in, `~/Outbox` by default) and `OUTBOX_USER`.

## Safety built in

- Destructive tools (delete, rollback, revoke, accepting a suggestion) are marked `destructiveHint`, so clients that gate on it ask you first.
- Comments and suggestions from other people come back as untrusted text: the server tells the model to treat them as data, never as instructions.
- If a page you publish looks like it contains credentials, the result carries a warning with the type and line (never the value).
- The server refuses to rotate or revoke the key it is running with.

## Prefer a skill or the CLI?

Agents that support skills (Claude Code, Cursor, Codex and others) can use the `outbox-publish` skill instead; the first time it publishes, it gives you a link to connect your account:

```
npx skills add jonathanleiva15/out-box-skills
```

Shell scripts and CI can use the CLI (`npm install -g @out-box/cli`, then `outbox setup`) or the REST API. All of them write to the same library. Per-agent setup: [Claude Code](https://out-box.dev/en/agents/claude-code), [Claude](https://out-box.dev/en/agents/claude), [Cursor](https://out-box.dev/en/agents/cursor), [Codex](https://out-box.dev/en/agents/codex), [ChatGPT](https://out-box.dev/en/agents/chatgpt).

## Frequently asked questions

### Remote connector or npx: which one should I use?

Use the remote connector when your client supports remote MCP servers: there is no key to manage and you revoke access from Outbox. Use npx for stdio-only clients, CI and scripts, or when you want a key scoped to one folder.

### Does the MCP server cost anything?

No. The server is free and open source; what you publish counts against your Outbox plan's limits, and there is a free plan.

### Can the agent read my private pages?

Only with a key that allows it: reading private pages needs the `list` verb (or the matching folder). Without it the agent can publish but not read back.

### Is my content used to train models?

No. Outbox does not send your pages to AI providers and they are not used for training.

## Related

- [Connect Claude to Outbox (step by step)](https://out-box.dev/en/guides/connect-claude-to-outbox)
- [Per-recipient links](https://out-box.dev/en/per-recipient-links)
- [Publish from your AI agent](https://out-box.dev/en/agents)
- [@out-box/mcp on npm](https://www.npmjs.com/package/@out-box/mcp)

---

Updated 2026-10-11. HTML version: https://out-box.dev/en/mcp
