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

# Draft and production

> How Metabind separates editable drafts from stable production endpoints

Every Metabind project has two MCP server endpoints: a **draft** that updates instantly as you edit and a **production** endpoint that only changes when you publish. This separation is the same shape web teams use for staging and prod, mapped to MCP.

## The two endpoints

<Frame>
  <img src="https://mintcdn.com/yapstudios/gPNjte0tpBLzGV46/images/diagrams/draft-and-production.svg?fit=max&auto=format&n=gPNjte0tpBLzGV46&q=85&s=73110f53a90e8c98e8b9f24e618d3d83" alt="Metabind Studio edits flow into a draft endpoint that always reflects the latest save; promotion to the production endpoint only happens on publish." noZoom width="960" height="760" data-path="images/diagrams/draft-and-production.svg" />
</Frame>

Both endpoints are project-scoped — connecting requires a project ID and an auth token (production needs no token when the project's **Access** setting is **Public**), and tools are isolated per project.

## When to use draft

* Metabind Studio's test panel runs against draft.
* Live device previews (iOS App Clip, Android Metabind app) connect to draft.
* Connecting Claude Desktop or another MCP host to the draft endpoint lets you test the full chain — AI picks the tool, draft runs it, host renders the result — before you publish.

The draft endpoint reflects every save within seconds. There is no build step and no staging deploy; the draft endpoint caches for 15 seconds. Save in Metabind Studio, refresh the host, the change is live.

## When to use production

* Connect end users' Claude Desktop, ChatGPT, or other MCP hosts to your project's production URL.
* Embed your tools in your own iOS or Android app via the Assistant SDK.
* Anything user-facing.

Production only updates when someone with publish permission publishes in Metabind Studio (**Publish Components**, then **Publish Server**). Edits in Metabind Studio do not affect production until that step.

## Connecting to the draft endpoint

The draft endpoint lives at the same host as production, with `/draft` appended to the project path:

```
https://mcp.metabind.ai/<organizationId>/projects/<projectId>/draft
```

For example, in Claude Desktop, add the draft URL as a custom connector.

There is no separate draft token. A project API key works on both endpoints, and an OAuth token needs the `execute:mcp-draft` scope for draft. Anyone with a project API key can connect a host to your draft — share carefully.

## Connecting to the production endpoint

```
https://mcp.metabind.ai/<organizationId>/projects/<projectId>
```

Same host, no `/draft` suffix.

See [Connect to Claude Desktop](/guides/connecting-to-mcp-hosts/claude-desktop) for the full host setup.

## Why separate endpoints

The separation answers a problem that isn't obvious until you've shipped tools to real users: a small bad change can break a connected AI experience as fundamentally as a bad deploy breaks a website.

* A renamed property breaks every host that has the old schema cached.
* A new component reference that fails the allowlist returns errors mid-conversation.
* A typo in a Data Tool's `handler` throws on every call.

Draft is where you make those changes without consequence. Production is the audited, versioned snapshot users actually see.

## What lives at each layer

| Surface | Reads from |
| - | - |
| Metabind Studio test panel | Draft |
| Live device previews | Draft |
| MCP host pointed at draft URL | Draft |
| MCP host pointed at production URL | Production (latest published package) |
| Assistant SDK embedded in your app | Production |
| End users via any of the above | Production |

## Switching hosts between draft and production

A connected host doesn't auto-switch — it points at whichever URL you configured. Most teams maintain two host configurations (one named `<project>-draft`, one named `<project>-prod`) and switch by selecting the connection.

Some hosts let you list both side by side. In that case, label them clearly so end users don't accidentally hit draft.

## Related

<CardGroup cols={2}>
  <Card title="Publish the MCP server" icon="rocket" href="/guides/publishing/publishing-the-server">
    The promote-to-production flow.
  </Card>

  <Card title="Package versioning" icon="code-branch" href="/guides/publishing/package-versioning">
    How published packages are pinned and rolled forward.
  </Card>

  <Card title="Connect to Claude Desktop" icon="desktop" href="/guides/connecting-to-mcp-hosts/claude-desktop">
    Configure draft and production connections.
  </Card>

  <Card title="Live device previews" icon="mobile" href="/guides/building/live-previews">
    Preview against the draft endpoint on real hardware.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.