NestDaddy

Stalwart Mail Mcp

io.github.cybersmurf/stalwart-mail-mcp · v2.3.0

Mail and contacts on a self-hosted Stalwart server via JMAP: search, read, OCR, send, drafts.

Connect Runs on your machine

Terminal
claude mcp add stalwart-mail-mcp -e STALWART_URL=<STALWART_URL> -e STALWART_USER=<STALWART_USER> -e STALWART_PASSWORD=<STALWART_PASSWORD> -e MAIL_LANG=<MAIL_LANG> -e MAIL_OCR_PROVIDER=<MAIL_OCR_PROVIDER> -e MAIL_OCR_API_KEY=<MAIL_OCR_API_KEY> -e MAIL_OCR_MODEL=<MAIL_OCR_MODEL> -e MAIL_OCR_BASE_URL=<MAIL_OCR_BASE_URL> -- npx -y [email protected]
claude_desktop_config.json
{
  "mcpServers": {
    "stalwart-mail-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "STALWART_URL": "<STALWART_URL>",
        "STALWART_USER": "<STALWART_USER>",
        "STALWART_PASSWORD": "<STALWART_PASSWORD>",
        "MAIL_LANG": "<MAIL_LANG>",
        "MAIL_OCR_PROVIDER": "<MAIL_OCR_PROVIDER>",
        "MAIL_OCR_API_KEY": "<MAIL_OCR_API_KEY>",
        "MAIL_OCR_MODEL": "<MAIL_OCR_MODEL>",
        "MAIL_OCR_BASE_URL": "<MAIL_OCR_BASE_URL>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "stalwart-mail-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "STALWART_URL": "<STALWART_URL>",
        "STALWART_USER": "<STALWART_USER>",
        "STALWART_PASSWORD": "<STALWART_PASSWORD>",
        "MAIL_LANG": "<MAIL_LANG>",
        "MAIL_OCR_PROVIDER": "<MAIL_OCR_PROVIDER>",
        "MAIL_OCR_API_KEY": "<MAIL_OCR_API_KEY>",
        "MAIL_OCR_MODEL": "<MAIL_OCR_MODEL>",
        "MAIL_OCR_BASE_URL": "<MAIL_OCR_BASE_URL>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "stalwart-mail-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "STALWART_URL": "<STALWART_URL>",
        "STALWART_USER": "<STALWART_USER>",
        "STALWART_PASSWORD": "<STALWART_PASSWORD>",
        "MAIL_LANG": "<MAIL_LANG>",
        "MAIL_OCR_PROVIDER": "<MAIL_OCR_PROVIDER>",
        "MAIL_OCR_API_KEY": "<MAIL_OCR_API_KEY>",
        "MAIL_OCR_MODEL": "<MAIL_OCR_MODEL>",
        "MAIL_OCR_BASE_URL": "<MAIL_OCR_BASE_URL>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
STALWART_URL
Required
Public address of the Stalwart server, e.g. https://mail.example.com
STALWART_USER
Required
Mailbox e-mail address to sign in with
STALWART_PASSWORD
Required, secret
Mailbox or app password
MAIL_LANG
Optional
Language: auto, en, cs, de, es, fr, it, nl, pl, pt, sk
MAIL_OCR_PROVIDER
Optional
OCR of scans: auto, off, mistral, anthropic, openai, openrouter, gemini, ollama, lmstudio, custom
MAIL_OCR_API_KEY
Optional, secret
API key of the OCR provider (not needed for local servers)
MAIL_OCR_MODEL
Optional
OCR model name
MAIL_OCR_BASE_URL
Optional
Address of a custom OpenAI-compatible OCR server

Details

Package[email protected] (NPM, stdio)
First published2 Oct 2026
Last updated2 Oct 2026
Registry nameio.github.cybersmurf/stalwart-mail-mcp

More search and web servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.