Emailmd logo

Emailmd

by anypost

Render, lint, and preview markdown emails through MCP using hosted HTTP or local stdio transport.

Install Emailmd

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "anypost-emailmd": {
      "command": "npx",
      "args": [
        "-y",
        "emailmd"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

We ran the install command but it didn't respond within our test window — this can mean a slow first-time install rather than a real problem.

npx -y emailmd

No response to initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 25d ago.

Overview

The anypost/emailmd MCP server lets AI assistants turn markdown into email-safe HTML, check drafts for deliverability issues, and look up syntax documentation. It exposes render, lint, and read_docs tools over hosted Streamable HTTP or local stdio. The hosted endpoint requires no API key, while local use runs with npx emailmd mcp. Use it when an agent needs to create responsive email content with both HTML and plain-text output.

Use cases

  • Draft responsive email HTML from markdown
  • Check email drafts for deliverability issues
  • Generate plain-text alternatives for messages
  • Look up emailmd syntax while composing templates

Key features

  • Markdown-to-email-safe HTML rendering
  • Plain-text email output
  • Deliverability linting
  • Emailmd syntax documentation lookup
  • Hosted Streamable HTTP transport
  • Local stdio transport

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

29/29 checks healthy over the last 78d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 9d ago via OSV.dev · emailmd (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars1.4kStargazers on the source repository.
npm downloads15kPackage downloads in the last 30 days.
Last commit20d agoMost recent push to the default branch.
Install checkInconclusiveDidn't respond in our test window — often a slow first install.
Directory activity3 viewsConfig copies, upvotes, and views on AllMCPs.

How Emailmd works

What anypost/emailmd does

The anypost/emailmd MCP server gives an AI assistant tools for preparing email content from markdown. Its render tool converts a draft into complete email-safe HTML and a plain-text version suitable for the text/plain part of a message. The output is intended to work across Gmail, Outlook, Apple Mail, Yahoo, and other email clients.

The server also exposes lint, which identifies deliverability problems without rendering the draft, and read_docs, which retrieves emailmd syntax documentation. This makes the server useful for assistants that need both content generation and guidance on supported formatting.

Emailmd markdown can include links marked as buttons and directive-based data displays such as bar charts, progress meters, sparklines, KPI tiles, step trackers, and star ratings. These elements are represented with table cells and text glyphs rather than images or SVG, and the project documents behavior for plain-text output as well.

How it works

The anypost/emailmd MCP server supports two transports. A hosted Streamable HTTP endpoint is available at https://www.emailmd.dev/api/mcp. For local execution, start the server over stdio with:

Terminal
npx emailmd mcp

An MCP-compatible assistant sends markdown to the appropriate tool and receives the rendered result, lint findings, or documentation content. The underlying emailmd package uses MJML, and its current API requires Node 20 or newer when used directly.

Setup and configuration

Choose the hosted endpoint when the assistant can connect to remote Streamable HTTP MCP servers and local installation is unnecessary. Choose the stdio command when the client should launch the server on the same machine. The repository points to the emailmd MCP documentation for client-specific configuration instructions.

No environment variables are documented as required. The package can also be installed with npm install emailmd, although the MCP command itself is run through the package's CLI with npx emailmd mcp.

Tools and capabilities

The anypost/emailmd MCP server provides three documented tools:

  • render: Converts markdown into email-safe HTML and plain text.
  • lint: Checks a draft for deliverability issues without rendering it.
  • read_docs: Looks up emailmd syntax and usage documentation.

The rendering system supports responsive email markup and specialized markdown directives. The broader emailmd package also includes a command-line renderer and React components, but those are separate package features rather than additional MCP tools.

Limitations and notes

The MCP listing documents three tools only, so the server should not be treated as a mail-sending or mailbox-management integration. It prepares and checks email content but does not document delivery, campaign management, recipient storage, or provider authentication.

When using the underlying package directly, render() is asynchronous and requires Node 20 or newer. Client setup details vary by MCP client and should be taken from the project’s MCP documentation.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Emailmd

anypost/emailmd is an MCP server that connects AI assistants to the emailmd markdown-to-email renderer and documentation. Its three main tools are render for HTML and plain-text output, lint for deliverability checks without rendering, and read_docs for syntax help. It runs through hosted Streamable HTTP or local stdio.

Run `npx emailmd mcp` to start the server locally over stdio. You can instead configure an MCP client to use the hosted endpoint at `https://www.emailmd.dev/api/mcp`, which the project describes as requiring no API key. Client-specific setup instructions are available in the emailmd MCP documentation.

It provides `render`, `lint`, and `read_docs`. Render converts markdown to email-safe HTML and plain text, lint flags deliverability problems without rendering, and read_docs retrieves emailmd syntax documentation.

No, the documented tools prepare and inspect email content rather than send messages.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewEmailmd AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/anypost-emailmd?style=directory)](https://allmcps.com/mcp/anypost-emailmd)
HTML Embed
<a href="https://allmcps.com/mcp/anypost-emailmd"><img src="https://allmcps.com/api/badge/anypost-emailmd?style=directory" alt="Emailmd on AllMCPs" /></a>