Skip to main content
Glama
fredogemilang

stalwart-jmap-mcp

stalwart-jmap-mcp

Unofficial MCP server for Stalwart Mail Server — talks to the JMAP management API (/jmap, Stalwart v1.0+).

⚠️ Stalwart 0.16+ removed the legacy REST management API in favor of JMAP. Most existing "stalwart MCP" projects target the old REST API and won't work on modern Stalwart. This server uses the x:-prefixed JMAP management methods directly.

Features (v0.4 — 39 tools, verified live on Stalwart v1.0.0)

Mail surface (v0.4 — standard JMAP mail)

Tool

Description

stalwart_list_mailboxes

Folders + email counts (inbox/trash/junk/sent/...)

stalwart_search_emails

Search by mailbox role + free text (from/to/subject/body)

stalwart_get_email

Full email: headers, body, raw blob

stalwart_list_identities

Sending identities (From addresses)

stalwart_get_vacation_response

Auto-reply settings

stalwart_list_sieve_scripts

Sieve filter scripts

⚠️ Admin token punya permission impersonate — parameter account_id bisa dipakai untuk membaca mailbox user lain. Gunakan dengan hati-hati.

Read (v0.1)

Tool

Description

stalwart_server_info

Edition, username, capabilities

stalwart_list_accounts

Mail accounts (users) with email/domain/created

stalwart_get_account

Full account detail by id or email (secrets masked)

stalwart_list_domains

Configured mail domains

stalwart_list_principals

Users/groups/lists/domains/roles/tenants

stalwart_list_dkim_signatures

DKIM keys: selector, stage, algorithm

stalwart_list_queue

Outgoing mail queue

stalwart_list_api_keys

API keys (masked)

stalwart_list_objects

Generic listing: tasks, alerts, roles, mailing lists, tenants, certificates, cluster nodes, applications, webhooks, tracers, ACME providers, DNS servers, spam rules, blocked/allowed IPs

Write (v0.2)

Tool

Description

stalwart_create_account

Create mail account (user)

stalwart_delete_account

Delete account (requires confirm)

stalwart_set_account_password

Reset account password

stalwart_create_domain

Add mail domain

stalwart_delete_domain

Delete domain (requires confirm)

stalwart_generate_dkim

Generate DKIM key (RSA 2048 / Ed25519)

stalwart_create_api_key

Create API key (token shown once)

stalwart_delete_api_key

Delete API key (requires confirm)

stalwart_reschedule_queue_message

Set next retry time of a queued message

stalwart_delete_queue_message

Delete message from queue (requires confirm)

stalwart_block_ip / stalwart_unblock_ip

Block / unblock IP (reason enum: rcptToFailure, authFailure, loitering, portScanning, manual, other)

stalwart_allow_ip / stalwart_unallow_ip

Allowlist / remove IP from allowlist

stalwart_create_mailing_list

Create mailing list (name + domain)

stalwart_delete_mailing_list

Delete mailing list (requires confirm)

Admin (v0.3)

Tool

Description

stalwart_reload_settings

Hot-reload server settings

stalwart_reload_tls_certificates

Reload TLS certificates

stalwart_queue_pause / stalwart_queue_resume

Pause/resume MTA queue

stalwart_invalidate_caches

Invalidate (all

stalwart_troubleshoot_dmarc

Live SPF/DKIM/ARC/DMARC troubleshoot

stalwart_classify_spam

Spam score + tags for a message

Related MCP server: pyfastmail-mcp

Install

# local development
git clone https://github.com/fredogemilang/stalwart-jmap-mcp
cd stalwart-jmap-mcp && uv sync

# or via uvx (PEP 503 index hosted on GitHub Pages)
uvx --extra-index-url https://<user>.github.io/stalwart-jmap-mcp/simple stalwart-jmap-mcp

Configure

export STALWART_URL=https://mail.example.com
export STALWART_TOKEN=API_xxxx

Get an API token from the Stalwart web admin (mail.example.com/login) → API keys.

Claude Code

Option A — uvx (install langsung dari GitHub Pages index)

Tambah ke .mcp.json di project root (atau claude mcp add):

{
  "mcpServers": {
    "stalwart": {
      "command": "uvx",
      "args": ["--refresh", "--extra-index-url", "https://fredogemilang.github.io/stalwart-jmap-mcp/simple", "stalwart-jmap-mcp"],
      "env": {
        "STALWART_URL": "https://mail.example.com",
        "STALWART_TOKEN": "your-api-key"
      }
    }
  }
}

Option B — local development

claude mcp add stalwart --env STALWART_URL=https://mail.example.com \
  --env STALWART_TOKEN=API_xxxx -- uv --directory /path/to/stalwart-jmap-mcp \
  run stalwart-jmap-mcp

Development

uv run python scripts/smoke_test.py   # end-to-end test via stdio

License

MIT

Install Server
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
5Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    An unofficial MCP server that enables users to manage their Fastmail accounts through natural language interactions. It provides tools to query mailboxes, retrieve email content with advanced filtering, and send messages directly through the Fastmail API.
    76
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    An MCP server that provides AI assistants with full access to Fastmail accounts for managing email, contacts, calendars, and file storage. It implements 42 tools across JMAP, CardDAV, CalDAV, and WebDAV protocols to enable comprehensive account interaction through natural language.
    48
    MIT
  • F
    license
    -
    quality
    B
    maintenance
    A minimal MCP server for reading and sending emails via IMAP/SMTP, supporting multiple accounts in a single instance with zero external dependencies.
    1

View all related MCP servers

Related MCP Connectors

  • A basic MCP server to operate on the Postman API.

  • An MCP server that let you interact with Cycloid.io Internal Development Portal and Platform

  • MCP server for Pentest-Tools.com: run scans, manage findings and reports via your preffered LLM.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/fredogemilang/stalwart-jmap-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server