Mailbridge for Apple Mail

Mailbridge for Apple Mail

Enables using Apple Mail accounts to search, read, manage, draft, and send messages from Codex or Claude Code locally.

Category
Visit Server

README

Mailbridge for Apple Mail

CI CodeQL Latest release License: MIT

Use every account already configured in Apple Mail from Codex or Claude Code—locally, without giving another service your email password.

Mailbridge can search and read mail, manage message state, create drafts, and send attachment-free messages and replies. Direct MCP registrations are read-only by default. The bundled Codex and Claude Code plugins use prompted mode, which requires exact-content client confirmation and fails closed when the client cannot render it.

Install

Mailbridge requires macOS, a working account in Mail.app, and Node.js 22 or 24. The marketplace payload is prebuilt, so npm and a source checkout are not required.

Codex

codex plugin marketplace add pooyanmajd/pmtechdev-mcp-plugins --ref v0.4.2
codex plugin add mailbridge-mcp@pmtechdev

Claude Code

claude plugin marketplace add pooyanmajd/pmtechdev-mcp-plugins@v0.4.2
claude plugin install mailbridge-mcp@pmtechdev

Start a new Codex task after installation. In Claude Code, run /reload-plugins, then use /mcp to confirm the bundled mailbridge server is connected.

Try:

Read my latest three Inbox messages across configured accounts.

Reply to the latest message from Alex and say thanks.

Why Mailbridge

Capability Mailbridge for Apple Mail Direct IMAP integration
Uses accounts already configured in Mail.app Yes Usually requires separate account setup
Gives the connector provider passwords or OAuth tokens No Usually
Works across Mail.app providers through one local connection Yes Depends on configuration
Read-only default for direct MCP registration Yes Varies
Exact outbound content confirmed before successful sends in bundled plugins Yes; unsupported prompts fail closed Varies
Platform support macOS Varies

Mailbridge uses local STDIO and Apple Events. It does not read Mail's private database, request Full Disk Access, run a hosted relay, or include telemetry. Selected mail and tool results may still be sent to the model provider configured in the host you choose, so only connect it to a trusted Codex, Claude Code, or MCP host. Read the security model before connecting sensitive accounts.

PMTechDev MCP & Plugins

This repository is also an expandable monorepo, reusable development kit, and Codex and Claude Code marketplace for local-first Model Context Protocol servers and plugins maintained by PMTechDev.

Each integration remains independently buildable under plugins/, while shared safety primitives live under packages/. New integrations start from a tested scaffold instead of rebuilding packaging, policy, CI, and MCP boilerplate from scratch.

Available plugins

Plugin Purpose Platforms Status
Mailbridge for Apple Mail Search, read, manage state, create drafts, and explicitly send through accounts configured in macOS Mail. macOS 0.4.2

Mailbridge remains read-only for direct registrations by default. The bundled Codex and Claude Code plugins use client-prompted sending for attachment-free new messages and replies; existing full configurations do not gain send authority.

Repository layout

pmtechdev-mcp-plugins/
├── .agents/plugins/marketplace.json  # Codex marketplace catalog
├── .claude-plugin/marketplace.json   # Claude Code marketplace catalog
├── packages/
│   └── mcp-kit/                      # Reusable safety and queue primitives
├── plugins/
│   └── mailbridge-mcp/               # Independent MCP + Codex/Claude plugin payload
├── templates/
│   └── mcp-plugin/                   # Starter copied by the scaffolder
└── scripts/
    ├── create-plugin.mjs             # Generates and registers a plugin
    └── validate-workspace.mjs        # Validates catalog/package invariants

Install from a moving marketplace snapshot

The pinned release commands above are recommended. To track the current marketplace snapshot instead, use the following commands.

Codex

Install the current marketplace snapshot:

codex plugin marketplace add pooyanmajd/pmtechdev-mcp-plugins --ref main
codex plugin add mailbridge-mcp@pmtechdev

For the reviewed, immutable release, pin the marketplace to Mailbridge 0.4.2 instead:

codex plugin marketplace add pooyanmajd/pmtechdev-mcp-plugins --ref v0.4.2
codex plugin add mailbridge-mcp@pmtechdev

These commands target Codex CLI. Plugins can also be installed for Codex in the ChatGPT desktop app; they are not currently available in the Codex IDE extension. See the official Codex plugin documentation for supported surfaces. Start a new Codex task or CLI session after installing or updating a plugin so its skills and MCP tools are loaded.

Claude Code

Install the immutable release through the native Claude Code marketplace and plugin manifests:

claude plugin marketplace add pooyanmajd/pmtechdev-mcp-plugins@v0.4.2
claude plugin install mailbridge-mcp@pmtechdev

Run /reload-plugins, then use /mcp to confirm the bundled mailbridge server is connected. The Claude registration resolves dist/cli.js through CLAUDE_PLUGIN_ROOT and starts in prompted mode, which fails closed unless Claude Code can display and the user accepts the exact-content send form.

The immutable 0.4.2 release includes the plugin tarball, SHA-256 checksums, a CycloneDX SBOM, and signed GitHub provenance attestations.

Only install Mailbridge in a trusted Codex, Claude Code, or MCP host: the launching host receives macOS Automation authority for Mail. The marketplace configuration uses prompted mode and direct registrations remain read-only by default; selected mail and tool results may still be sent to the model provider configured in that host. Review the Mailbridge security model before connecting sensitive accounts.

Develop the workspace

Requirements are Node.js 22 or 24 and npm. These are the supported LTS lines tested on macOS.

git clone https://github.com/pooyanmajd/pmtechdev-mcp-plugins.git
cd pmtechdev-mcp-plugins
npm ci
npm run check

The root check enforces coverage thresholds, builds every workspace, validates all plugin and skill metadata, installs the real Mailbridge tarball in a temporary directory, performs MCP initialization plus tools/list without invoking Mail, validates committed plugin bundles, and checks marketplace consistency.

Create the next plugin

npm run create:plugin -- example-mcp
npm install
npm run check -w example-mcp
npm run validate:workspace

The scaffolder normalizes the name, copies the starter, creates valid Codex, Claude Code, and MCP manifests, adds a safe status tool and skill, and appends complete entries to both marketplace catalogs. Replace the generated placeholder scope with the real integration design before publication.

Reusable primitives are exported by @pmtechdev/mcp-kit:

  • minimal subprocess environments that avoid inheriting unrelated secrets;
  • UTF-8 JSON request byte bounds;
  • bounded FIFO serialization for non-idempotent operations.

Add only broadly reusable, well-tested infrastructure to the kit. Integration-specific policy stays inside its plugin.

Design rules

  • Local STDIO is the default transport. Remote services must be explicit and documented.
  • Read-only or least-privilege behavior is the default.
  • Connected content is untrusted data, not agent instructions.
  • Secrets never belong in process arguments, logs, committed fixtures, or generated artifacts.
  • Every search, body, attachment, subprocess, queue, and response is bounded.
  • Mutations require explicit tools, clear annotations, deterministic tests, and safe retry semantics.
  • Each plugin remains independently packageable and owns its runtime-specific documentation.

See Contributing, Releasing, Support, Security, Privacy, and Terms. The workspace and bundled plugins are available under the MIT License.

Copyright © 2026 PMTechDev / Pooyan Majd.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured