---
ref: tool:front/create-draft
name: Draft a new message
company: company:front
workflows: []
access: [mcp, api]
tags: [capability:send-email, category:support, has:api, has:mcp]
docs: https://dev.frontapp.com/reference/create-draft
updated: 2026-09-27
---

# Draft a new message

Creates an unsent draft that starts a new conversation from a channel, for a teammate to review and send.

Pass `body` and the recipients in `to`, `cc` or `bcc`. On the MCP server, give
`create_draft` a `channelId` and no `conversationId` (with a `conversationId`
it drafts a reply instead); list channel IDs with `list_channels`. Set `mode`
to `shared` on the API, or `shared` to true on MCP, so teammates can see the
draft.

Over MCP, connect with the client ID and secret of a Front developer app that
has MCP Server access: Front has no Dynamic Client Registration.

## Set up

Use the first option your agent supports.

### MCP (official, remote)

Add this server to your agent's MCP settings, then sign in when asked.

```json
{ "mcpServers": { "front": { "url": "https://mcp.frontapp.com/mcp" } } }
```

Call the MCP tool `create_draft`.

Server URL: https://mcp.frontapp.com/mcp

### API (official)

- Base URL: https://api2.frontapp.com
- Endpoint: `POST /channels/{channel_id}/drafts`
- Auth: send the header `Authorization: Bearer $FRONT_API_KEY`
- Get a key: https://dev.frontapp.com/docs/create-and-revoke-api-tokens
- Docs: https://dev.frontapp.com/reference/introduction

Before doing anything else, make one read-only call to confirm access.

## Rules

- Ask the user before anything that sends messages, costs money, or changes data.
- Never print API keys.
