# radmail-mcp

An MCP server that lets an agent triage a mailbox, track commitments and draft replies, while money and banking-change mail never gets a draft.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI
- Author: radmail-ai
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/radmail-ai/radmail-mcp
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/mcp/radmail-mcp

## What it does

RadMail puts an inbox behind MCP tools. One `triage_inbox` call returns the urgent lane, every open commitment and every hard stop. Around it sit `list_right_now`, `list_commitments`, `search`, `read_email` and `why_surfaced`, which spells out in plain words what pushed a message up.

The part that matters is the refusal. Five classes get no draft at all: money, changed banking details, first contact, a decision, and prompt injection. The reasoning is blunt — a ready-made reply on a wire-change thread makes saying yes easier than reading it, so the person writes that one themselves. The refusal lives in code and can only be tightened, never relaxed.

A sandbox engine starts by default: heuristics, in-memory, no credentials. Point it at a real mailbox with `RADMAIL_API_KEY`, and `search`, `list_commitments` and `list_right_now` read that inbox without writing to it. The trade-off is real: a banking-change notice arriving overnight will have nothing waiting for approval. Want a draft on every thread, money included? Then this is the wrong server.

Install over HTTP at `https://radmail.ai/api/mcp/sandbox`, or run it locally with `npx -y radmail-mcp`.

## Requirements
- Needs: Node.js (commands run via npx)
- Remote server: `https://radmail.ai/api/mcp/sandbox`

## Install

### Claude Code (native platform)

1. **Platform CLI: remote server**
```bash
claude mcp add --transport http radmail-mcp https://radmail.ai/api/mcp/sandbox
```

2. **Platform CLI**
```bash
claude mcp add radmail-mcp -- npx -y radmail-mcp
```

### Codex

1. **Platform CLI: remote server**
```bash
codex mcp add radmail-mcp --url https://radmail.ai/api/mcp/sandbox
```

2. **Platform CLI**
```bash
codex mcp add radmail-mcp -- npx -y radmail-mcp
```

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "radmail-mcp": {
            "url": "https://radmail.ai/api/mcp/sandbox"
        }
    }
}
```
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "radmail-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "radmail-mcp"
            ]
        }
    }
}
```

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "radmail-mcp": {
            "type": "http",
            "url": "https://radmail.ai/api/mcp/sandbox"
        }
    }
}
```
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "radmail-mcp": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "radmail-mcp"
            ]
        }
    }
}
```

### Gemini CLI

1. **Platform CLI: remote server**
```bash
gemini mcp add -t http radmail-mcp https://radmail.ai/api/mcp/sandbox
```

2. **Platform CLI**
```bash
gemini mcp add radmail-mcp npx -y radmail-mcp
```

## When to use it
- triage an inbox and surface what cannot wait
- find one message by sender or subject without grepping files
- collect open promises together with their due windows
- explain why a message landed in the urgent lane
- check a domain's SPF, DKIM and DMARC without a key

## Example prompts
- Call `triage_inbox` and show me the urgent lane
- Find the vendor email about updated banking details
- Run `check_send_domain` for the client's domain

## Similar
- [agentmail-check-email](https://affpapa.org/en/nevibecode/skills/agentmail-check-email.md) — skill · 448 installs
- [mantis-calibrate](https://affpapa.org/en/nevibecode/skills/mantis-calibrate.md) — skill · 1500 installs
- [trailmark-finding-triage](https://affpapa.org/en/nevibecode/skills/trailmark-finding-triage.md) — skill · 1300 installs
- [triage](https://affpapa.org/en/nevibecode/skills/anthropics-triage.md) — skill · 1100 installs
- [spark-recipe-inbox-zero](https://affpapa.org/en/nevibecode/skills/spark-recipe-inbox-zero.md) — skill · 344 installs
- [spark-persona-founder](https://affpapa.org/en/nevibecode/skills/spark-persona-founder.md) — skill · 321 installs

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
