Guides

MCP setup

The Dessert MCP server exposes every API endpoint as a tool that Claude Desktop (and any other MCP-compatible agent) can call directly. Drop in a config, set your key once, and ask Claude to "make me three new ads for the serum launch."

What is MCP?

Model Context Protocol is an open standard for connecting LLMs to tools and data sources. An MCP server advertises a list of tools; an MCP host (Claude Desktop, Cursor, your own agent loop) discovers those tools and calls them on the model's behalf. We host the Dessert MCP server so you don't have to run anything locally — but if you'd rather, the npm package works too.


Hosted server (recommended)

Point your MCP host at our remote SSE endpoint and supply your API key as a bearer token.

https://mcp.dessert.dev/sse

Claude Desktop config

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

{
  "mcpServers": {
    "dessert": {
      "url": "https://mcp.dessert.dev/sse",
      "headers": {
        "Authorization": "Bearer dsrt_live_…"
      }
    }
  }
}

Restart Claude Desktop. You should see the Dessert tools appear in the tool picker.


Self-hosted

If you'd rather run the bridge locally — handy for piping the key in from a password manager — use the npm package:

npx @dessert/mcp --key $DESSERT_API_KEY

Claude Desktop config (self-hosted)

{
  "mcpServers": {
    "dessert": {
      "command": "npx",
      "args": ["@dessert/mcp"],
      "env": {
        "DESSERT_API_KEY": "dsrt_live_…"
      }
    }
  }
}

Available tools

Each tool maps one-to-one to a REST endpoint.

ToolDescription
dessert.generate_adsCreate a new delivery. Same arguments as POST /v1/ads/generate.
dessert.get_deliveryLook up the status of a delivery by ID.
dessert.list_brandsList the brands attached to your account.
dessert.create_brandTrigger brand onboarding from a website URL.
dessert.search_stylesNatural-language style search.
dessert.get_balanceRead your current credit balance and pricing.
dessert.get_usageRecent credit transactions.

Example agent flow

What you might say to Claude Desktop:

Prompt "Generate three new ads for the launch. Focus on the sensory angle and pin the animation styles to serum droplets and lotion texture. Email me the viewer link when it's done."

Claude will call dessert.generate_ads, poll dessert.get_delivery until completed, and surface the viewer_url in chat.