Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI โ†’ MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE โ†— (opens in a new tab)
  • llms.txt โ†— (opens in a new tab)
  • Catalog JSON โ†— (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub โ†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
ยฉ 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. ๐Ÿ’ฌ Communication
  3. Dead Letter
Dead Letter logo
Health: ActiveRecent health check succeeded.Last checked 9/9/2026, 2:01:31 PM

Dead Letter

User RatingsBe the first to rate and review this MCP server!
View Repository7 GitHub StarsTotal stargazers on GitHub for the source repository (7 stars).Visit Website
emailmarkdownfile-processingragmcp

Convert .eml exports into structured Markdown with metadata, separated threads, extracted attachments, and parsed calendar events.

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent โ€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
We couldnโ€™t automatically confirm this listing starts correctly

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

npx -y --yes

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 4d ago.

Manual Client & Custom JSON ConfigExpand JSON โ–พ

Client Config & Setup

Choose your client or environment
Target File:~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "bigcactuslabs-dead-letter": {
      "command": "npx",
      "args": [
        "-y",
        "--yes"
      ]
    }
  }
}

๐Ÿ’ก Paste the JSON block into your client's configuration file under mcpServers, then restart the application.

Install Tool Schemas (4) Directory Badge Claim listing Alternatives๐Ÿ’ฌ More in Communication

Overview

This server converts individual email files or directories of .eml exports into clean Markdown with YAML front matter. It can split Gmail and Outlook threads, remove signatures, sanitize HTML, handle inline images, extract attachments, and summarize calendar events. Use it to prepare archived email for indexing, retrieval, or other LLM pipelines.

Use cases

โ€ขConvert archived .eml files into Markdown
โ€ขPrepare email content for RAG indexing
โ€ขSplit multi-message email threads
โ€ขExtract attachment files and metadata
โ€ขParse calendar events from email exports

Key features

โ€ขConverts .eml files to Markdown with YAML front matter
โ€ขSegments Gmail and Outlook email threads
โ€ขStrips signatures and sanitizes HTML
โ€ขHandles inline images and retained attachments
โ€ขParses calendar event summaries
โ€ขProvides an MCP server for supported MCP clients

Capabilities & Tool Schemas (4) ~87 tokensApproximate context cost of this serverโ€™s tool schemas (~4 chars/token), before any tool is called. Actual usage depends on your client and model.Self-reported Self-reportedParsed from the repository README, not verified against a live server โ€” may be incomplete or out of date.

Inspect callable tools, capabilities, and parameters exposed to AI agents by Dead Letter.

convert_eml

Markdown text. Also writes a file when `output_path` is given.

convert_eml_to_bundle

JSON with `bundle_path`, `markdown_path`, `attachment_paths`. Copy-only: the original `.eml` is never moved or deleted.

convert_directory

JSON summary. Capped at 50 `.eml` files per call.

get_diagnostics

Quality and structure JSON. Writes nothing permanent.

Documentation Overview

dead-letter

dead-letter

PyPI package Python versions License: PolyForm Noncommercial

Your .eml files deserve a second life.

dead-letter converts email exports into clean Markdown with YAML front matter โ€” threads split, signatures stripped, attachments extracted, calendars parsed. One file or ten thousand.

โœจ Features

  • Full-fidelity conversion โ€” HTML sanitization, Gmail/Outlook thread segmentation, inline image handling, and calendar event summaries
  • CLI โ€” point it at a file or a directory and go
  • Local web UI โ€” dark command-center interface with drag-and-drop import, watch mode, conversion grade badges, processing history, and per-job diagnostics
  • Inbox/Cabinet workflow โ€” drop .eml files into an Inbox, let dead-letter organize the Markdown bundles into a Cabinet
  • Install validation โ€” dead-letter doctor checks your runtime environment
  • Conversion report โ€” opt-in JSON report with per-file diagnostics, including attachment referenced/retained counts for automation and audit
  • MCP server โ€” integrate with Claude Desktop, Claude Code, Codex, and other MCP clients
  • Claude plugin โ€” one-command install in Claude Code or Cowork with four slash commands (/dead-letter:convert, /dead-letter:summarize, /dead-letter:triage, /dead-letter:cabinet)
  • Python API โ€” from dead_letter import convert and you're off

๐Ÿง  Built for LLM Pipelines

Raw .eml files are noisy input for downstream LLM and retrieval pipelines โ€” MIME headers, multipart boundaries, duplicated HTML/plain bodies, and encoded attachments all get mixed into the text path.

dead-letter normalizes that into Markdown with YAML front matter, so message text and metadata are ready for chunking or indexing without MIME parsing or base64 cleanup. Default convert() and convert_dir() runs write a single .md per message and keep attachment names in front matter.

If you want the filesystem artifacts separated too, bundle and Cabinet workflows write message.md plus retained decoded files under attachments/. The Markdown is ready for text ingestion, while PDFs, spreadsheets, calendar files, and other retained binary attachments stay cleanly split out for whatever downstream parser you already use.

For direct LLM integration, the MCP server lets Claude Desktop, Claude Code, Codex, and other MCP clients call dead-letter's conversion tools without shelling out.

๐Ÿ“Š Token-cost benchmarks

dead-letter's value isn't fewer tokens than every alternative โ€” it's fidelity per token: the cheapest representation that keeps the email intact. Measured across a synthetic corpus of HTML threads, attachments, and newsletters (tokenizer o200k_base, medians):

  • ~88% fewer tokens than the raw .eml โ€” a single email with a PDF attachment is ~126k tokens raw vs ~180 converted.
  • The only representation that keeps the email whole โ€” thread structure, per-message sender attribution, links, and attachment metadata all survive. Naive text extraction is cheaper precisely because it drops them (0/2 attachments retained vs dead-letter's 2/2).

The benchmark is honest about where it loses: naive extraction is fewer tokens when you don't mind throwing away attachments, links, and thread structure. Full method, the complete table (including those rows), tokenizer disclosure, and a one-command reproduce are in benchmarks/.

๐Ÿ“ฆ Install

With Homebrew on Apple silicon macOS:

bash
brew tap BigCactusLabs/tap
brew install dead-letter

The Homebrew formula installs the core CLI only: dead-letter convert and dead-letter doctor. It intentionally does not bundle the optional web UI or MCP server dependency stacks.

With pip:

Terminal
pip install dead-letter            # core + CLI
pip install dead-letter[cli]       # + watchfiles (used by backend/UI watch mode)
pip install dead-letter[ui]        # + web UI, API server, and watch mode
pip install dead-letter[mcp]       # + MCP server

Use pipx for isolated UI or MCP installs:

bash
pipx install 'dead-letter[ui]'    # installs dead-letter and dead-letter-ui
pipx install 'dead-letter[mcp]'   # installs dead-letter and dead-letter-mcp

From source:

bash
git clone https://github.com/BigCactusLabs/dead-letter.git
cd dead-letter
uv sync --extra dev     # all extras
uv sync --extra ui      # UI only
uv sync --extra mcp     # MCP only

๐Ÿš€ Quick Start

CLI โ€” convert a single file:

bash
dead-letter convert message.eml

Convert a whole directory:

bash
dead-letter convert inbox/ --output out/

Generate a JSON conversion report alongside the output:

bash
dead-letter convert inbox/ --output out/ --report

With --output, the report is written to that output directory as .dead-letter-report.json. Without --output, file conversions write the report next to the source message and directory conversions write it to the input directory root.

Check your runtime environment:

bash
dead-letter doctor

Directory conversion scans recursively for .eml files, matches the suffix case-insensitively, skips symlinked files whose resolved targets escape the requested input tree, and deduplicates in-tree symlink aliases that resolve to the same message file.

Web UI โ€” start the local server:

bash
dead-letter-ui --host 127.0.0.1 --port 8765

Open http://127.0.0.1:8765 โ€” on first launch, a setup prompt suggests default Inbox and Cabinet folders. Configure or skip to start converting. Import .eml files with drag and drop or the file picker. Single-file imports use file mode, while multi-file drops create one directory-mode batch job. Mixed drops ask for confirmation before skipping non-.eml files. The backend enforces a 100 MB per-file import limit for both single and batch uploads.

From a source checkout, prefix with uv run:

bash
uv run dead-letter convert message.eml
uv run --extra ui dead-letter-ui --host 127.0.0.1 --port 8765

๐Ÿ Python API

server.ts
from dead_letter import convert

result = convert("message.eml")
print(result.subject, result.sender)
print(result.output)  # path to the generated .md

With options:

server.ts
from dead_letter import convert, ConvertOptions

result = convert("message.eml", options=ConvertOptions(
    strip_signatures=True,
    strip_quoted_headers=True,
))

Strip signature images (logos, social icons) and tracking pixels:

python
result = convert("message.eml", options=ConvertOptions(
    strip_signature_images=True,
    strip_tracking_pixels=True,
))

When enabled, these filters remove matched images from rendered Markdown and omit stripped inline signature/tracking assets from bundle attachment output.

Bundle conversion (Markdown + attachments + source in one directory):

server.ts
from dead_letter import convert_to_bundle

bundle = convert_to_bundle("message.eml", bundle_root="cabinet/", source_handling="copy")
print(bundle.markdown)     # cabinet/message/message.md
print(bundle.attachments)  # retained extracted files under cabinet/message/attachments/

source_handling="copy" preserves the original .eml in place. If omitted, convert_to_bundle() defaults to source_handling="move" and moves the source message into the bundle.

Retained extracted attachment filenames are normalized to safe basenames before they are written under attachments/.

Quality diagnostics include referenced/retained attachment counts when a message has attachments eligible for retention, so dropped artifacts are machine-detectable. See Quality Diagnostics.

Batch:

server.ts
from dead_letter import convert_dir

for r in convert_dir("inbox/", output="out/"):
    print(f"{'โœ“' if r.success else 'โœ—'} {r.source.name}")

๐Ÿ”Œ MCP Server

dead-letter ships an MCP server so LLM clients can convert .eml files directly without shelling out.

Install and launch:

Terminal
pip install dead-letter[mcp]
dead-letter-mcp

From a source checkout:

bash
uv run --extra mcp dead-letter-mcp

Claude Desktop โ€” add to claude_desktop_config.json:

config.json
{
  "mcpServers": {
    "dead-letter": {
      "command": "uv",
      "args": ["--directory", "/path/to/dead-letter", "run", "--extra", "mcp", "dead-letter-mcp"]
    }
  }
}

Claude Code or Cowork (recommended โ€” Claude plugin):

Code
/plugin marketplace add BigCactusLabs/bigcactuslabs-plugins
/plugin install dead-letter

The plugin bundles the MCP server (via uvx, no pip install needed โ€” just uv on PATH) and adds four slash commands: /dead-letter:convert, /dead-letter:summarize, /dead-letter:triage, /dead-letter:cabinet. Email content handled through the plugin is treated as untrusted data, not instructions, so tool-use, credential, and exfiltration requests embedded in messages are not followed. Source under plugin/.

The marketplace pins each published plugin tag and commit. Release automation updates that pointer only after the bundled MCP server's exact PyPI version is live, so Claude Code and Cowork resolve the same reproducible release.

Claude Code (manual MCP add โ€” alternative):

Terminal
claude mcp add dead-letter -- uv run --extra mcp dead-letter-mcp

Codex:

bash
codex mcp add dead-letter -- uv run --extra mcp dead-letter-mcp
codex mcp list

Read the full README โ†’View source on GitHub โ†’

Related MCP Servers

View all in Communication View all alternatives
  • Emailmd logoEmailmd

    Write and preview emails from your assistant. Renders markdown into email-safe HTML that holds up in Outlook and Gmail, lints drafts for deliverability problems, and returns a live preview link. Hosted with no API key, or run it locally with npx emailmd mcp.

    ๐Ÿ’ฌ Communication2 views
    Compare vs Emailmd โ†’
  • Slack MCP Server logoSlack MCP Server

    The most powerful MCP server for Slack Workspaces.

    ๐Ÿ’ฌ Communication1 views
    Compare vs Slack MCP Server โ†’
  • Mailwarden logoMailwarden

    Native Gmail MCP server with full mailbox control โ€” search, read, label, archive, trash, download attachments, and the feature no other Gmail server ships: snooze threads until a date. Every call hits the live Gmail API (no synced index that silently misses mail). Install with npx -y mailwarden.

    ๐Ÿ’ฌ Communication3 views
    Compare vs Mailwarden โ†’
  • Line Bot MCP Server logoLine Bot MCP Server
    Verified

    MCP Server for Integrating LINE Official Account

    ๐Ÿ’ฌ Communication3 views
    Compare vs Line Bot MCP Server โ†’

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks โ€” not a rating.

GitHub stars
7
Stargazers on the source repository.
Last commit
4d ago
Most recent push to the default branch.
Install check
Inconclusive
Didn't respond in our test window โ€” often a slow first install.
Tools exposed
4
Callable tools this server registers over MCP.
Directory activity
2 views
Config copies, upvotes, and views on AllMCPs.

Reviews

No reviews yet โ€” be the first to share how this listing worked for you.

Frequently Asked Questions about Dead Letter

It processes .eml email exports, either as individual files or recursively from directories.

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 PreviewDead Letter AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/bigcactuslabs-dead-letter?style=directory)](https://allmcps.com/mcp/bigcactuslabs-dead-letter)
HTML Embed
<a href="https://allmcps.com/mcp/bigcactuslabs-dead-letter"><img src="https://allmcps.com/api/badge/bigcactuslabs-dead-letter?style=directory" alt="Dead Letter on AllMCPs" /></a>

Technical Specs & Signals

Category๐Ÿ’ฌCommunication
PricingFree
More technical detailsExpand โ–พ
TransportSTDIO
RuntimeNode.js
AuthNo auth required
ClientsClaude Desktop
Last updatedSep 7, 2026
10/10 checks healthy over the last 32d
Views2
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
GitHub stars7
GitHub Star CountTotal stargazers on GitHub representing community popularity (7 stars).
Last commit4d ago
Last Repository CommitThe most recent commit or push recorded for this server's GitHub repository.Last commit on Sep 7, 2026
59Quality signal: Good ยท 59/100How this signal is calculated โ–พ
Server availabilityNot measured

Not scored for repo-hosted servers โ€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership10/20
Documentation & tools28/30
Adoption & activity6/15
Community engagement0/10

A guidance signal from public completeness & health data โ€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 24d ago via OSV.dev ยท --yes (npm)

โ˜… FeaturedMoxie Docs MCP logo

Moxie Docs MCP

MCP & Agent Skills for Automated Documentation, and codebase conventions + context

Explore Server โ†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to unlock edit access and the Official badge โ€” proof is checked automatically, then reviewed by our team.

Free dofollow backlink: add your website and place the AllMCPs badge on it โ€” no claim needed. We detect it automatically and keep it verified as long as the badge stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in ๐Ÿ’ฌ Communication โ†’Best MCP servers for Slack & Communication โ†’Alternatives to Dead Letter โ†’Install in Claude DesktopInstall in CursorInstall in VS Code