Our principles

Code it your way

We know email code is a fickle beast, and sometimes you have to do things that would make web designers weep. That is why Taxi makes no assumptions about your code | you can add as many obscure fixes as you like, and we will take care of the content.

Craft the editor experience

Taxi Syntax gives you complete control over what is editable and what is not. It means you can build the perfect experience for Editors - enabling them to change everything they need to and nothing that they do not.

The perfect crime

Once the final code is exported from Taxi, we remove all evidence of Taxi Syntax. That means there is nothing unexpected to cause problems in your email platform, or in users' email clients.

Our minimum viable language

You can get started with making your email HTML editable by using just two Taxi Syntax tags. When you are ready, you can get more granular control over templates with just a few more tags.

See how Email Design Systems and Taxi Syntax work.

dev-code
litmus-builder

Use Litmus Builder

We are big fans of Litmus Builder, the first code editor tailored specifically for email designers. Litmus Builder fully supports Taxi Syntax, so it is even easier to make the HTML in your Email Design System editable.

Find out more about Litmus Builder.

Automate with the Taxi API

The Taxi REST API gives you programmatic access to your email content and resources, enabling you to integrate Taxi into your existing workflows and systems.

  • Push and pull content — Read and update field values on any version to sync content bidirectionally with your CMS or other systems.
  • Render emails — Generate final HTML with Liquid variable substitution, or compile for continuous export via a connector.
  • Manage modules — Add, remove and reorder modules in modulezones to assemble emails programmatically.
  • Mailing lifecycle — Create and manage mailings, versions and translations across your projects.
  • Clone resources — Asynchronously clone projects, mailings or versions via REST, with optional name and description overrides and dedicated clone_status endpoints for polling progress.
  • Trigger connector exports — Asynchronously export a version through any configured GCS or SparkPost connector via REST, with per-connector schema validation and an export status endpoint for polling progress.
  • Email Design Systems — Upload, update and validate your EDS via the API, with optional review-free uploads for CI/CD pipelines.
  • Read & List Resources — List and read your Email Design Systems, list a project's mailings or a mailing's versions, and render any mailing's final HTML and subject line on demand.

API keys can be generated from the Integrations page in your Taxi account.

Explore the full API documentation →

# Get field values from a version GET /api/v1/versions/{id}/fields # Update field values (push content) PUT /api/v1/versions/{id}/fields # Render final HTML GET /api/v1/versions/{id}/render # Add a module to a modulezone POST /api/v1/versions/{id}/modules # Upload a new Email Design System POST /api/v1/eds/create # Clone a project, mailing or version (async, returns 202) POST /api/v1/projects/{id}/clone POST /api/v1/mailings/{id}/clone POST /api/v1/versions/{id}/clone # Poll clone progress until completed GET /api/v1/projects/{id}/clone_status GET /api/v1/mailings/{id}/clone_status GET /api/v1/versions/{id}/clone_status # Trigger an export through a configured connector (async, returns 202) POST /api/v1/mailings/{id}/export/connector/{connector_id} # Poll export status / list a mailing's export history GET /api/v1/exports/{id} GET /api/v1/mailings/{id}/exports # List and read Email Design Systems GET /api/v1/eds GET /api/v1/eds/{id} # Render a mailing's default (or a specified) version GET /api/v1/mailings/{id}/render # List a project's mailings, or a mailing's versions GET /api/v1/projects/{id}/mailings GET /api/v1/mailings/{id}/versions

Connect AI Assistants via MCP

Taxi MCP Server (Beta) connects AI assistants and agentic tools to your organisation's email content over the Model Context Protocol. Tools like Claude can work the way your team already does — finding a mailing in the library, reading the copy in a particular version, previewing how it renders, and adapting a finished campaign into the next one. The Email Design Systems your emails are built from are reachable too, for the changes that belong in the design rather than in a single email.

  • Find content across the library — List and filter your organisation's projects, mailings and versions: by name, by project, by the design system they are built on, or by when they were last changed.
  • Read a mailing and its versions — Fetch the field values behind a version — subject line, copy, links, module content — and see a mailing's variants for A/B tests, locales and segments, so an assistant can explain or compare what is really in the library.
  • Preview how it renders — Render a mailing's preview HTML and subject line on demand. Personalisation resolves to your organisation's sample values, never recipient data.
  • Adapt campaigns — Clone a project, a mailing or a single version to start the next campaign from a finished one, with progress reported while the copy is built.
  • Work with design systems — Browse and search your Email Design Systems, read their source, and validate markup against Taxi Syntax rules. With Content Management enabled, an assistant can propose changes as review-ready drafts, including targeted part-by-part edits — changing just a footer or a legal line rather than the whole document.
  • Scoped to the person — An assistant connects through someone's normal Taxi login and sees only what they can already see. Read and write permissions are granted separately.

Design-system changes never go live from an assistant: they land as a pending draft that a person reviews and publishes in Taxi. Nothing reaches your email platform without a human running the export.

Coming next — editing a version's content directly from an assistant, and automating the export to your email platform, are the directions we are actively shaping with our design partners.

Taxi MCP Server is in beta. Contact your account manager or support to enable it for your organisation, and to grant content-management (draft write) permissions separately.

# Connect Claude Code to your Taxi MCP server claude mcp add --transport http taxi \ https://your-subdomain.emailcms.net/mcp # First use opens your browser to sign in and grant access /mcp # Check connection and authorization status anytime claude mcp list

Other MCP-compatible tools can connect the same way — they'll discover the sign-in flow automatically from your Taxi MCP server URL.

Connect to your email platform

We are building connectors to make it even easier to export your finalised campaign directly to your favourite email platform. Or build custom integrations using the Taxi API.

More about connectors

Unlock your email team

We built Taxi so that everyone on your team can do what they need to do.

44,916 email campaigns and counting.

Join the smart marketers using Taxi to make better email.