Skip to main content
Glama
WeeCi

Mektup-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MEKTUP_API_KEYYesYour Mektup API key (mek_live_...). Required to start the local stdio server.
MEKTUP_API_BASE_URLNoBase URL for the Mektup API. Defaults to https://api.usemektup.comhttps://api.usemektup.com

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_meA

Get the authenticated caller's account identity - useful as an auth health check.

get_usageA

Get the account's current billing tier, its limits, and real usage against them (domain count, emails sent this month, storage per domain). Check this before a bulk operation to avoid hitting a limit mid-batch.

list_api_keysA

List API keys on this account (prefix and status only - the full key is never shown again after creation).

create_api_keyA

Create a new API key. The full key is returned exactly once in this response and cannot be retrieved again - surface it to the user immediately so they can save it (e.g. into an env var or another tool's config). Mint a separate key per environment/service rather than sharing one.

revoke_api_keyA

Revoke an API key immediately. Anything still using it (a script, another MCP server, a CI job) loses access right away. Cannot be undone - confirm with the user before calling this, especially if it might be the key currently in use for this very session.

create_domainA

Register a domain with Mektup and get back the exact DNS records to add (MX, SPF, DMARC, DKIM) plus a setup recommendation. Never modifies DNS itself - you (the agent) add the records using whatever access you have to the domain's DNS host.

list_domainsA

List every domain registered to this Mektup account.

get_domain_recordsA

Re-fetch the DNS records for an already-registered domain (same set create_domain returned once at creation) - use this any time after creation, the records aren't only shown once.

verify_domainA

Actively re-check a domain's live MX records against what Mektup expects and flip it to verified if they match. Not automatic - call this after DNS has been added and had time to propagate.

delete_domainA

Delete a domain and, via cascade, every mailbox and message under it. Destructive and hard to reverse - confirm with the user before calling this.

create_mailboxA

Create a mailbox (e.g. hello@example.com) on a domain already registered via create_domain. Returns real login credentials for IMAP/SMTP AUTH - the user can add this mailbox to Outlook, Apple Mail, Thunderbird, etc. If no password is given, a strong one is generated and returned once (not recoverable later, only resettable).

list_mailboxesA

List mailboxes on a given registered domain.

reset_mailbox_passwordA

Reset a mailbox's IMAP/SMTP-AUTH password. Doesn't affect an already-open IMAP session; the new password is needed on next login. Shown once, not recoverable later.

delete_mailboxA

Delete a mailbox. Postfix stops accepting mail for it immediately. Does not delete already-delivered mail from the mail store. Confirm with the user before calling this.

get_mailbox_webhookA

Check a mailbox's configured webhook URL (never returns the signing secret - only shown once, at setup or rotation).

set_mailbox_webhookA

Set or update the URL that fires on every new inbound message to this mailbox - the way an agent finds out about new mail without polling list_messages. Must be https. Returns a signing secret the FIRST time it's set (or if regenerateSecret is passed) - shown once, not recoverable later. Every delivery is a POST with an X-Mektup-Signature: sha256= header, an HMAC-SHA256 of the raw JSON body using that secret - verify it before trusting a payload.

delete_mailbox_webhookA

Remove a mailbox's webhook - new mail stops firing it immediately.

list_forwardsA

List forwarding addresses for a mailbox - incoming mail is copied to these in addition to staying in the mailbox.

add_forwardB

Add a forwarding address to a mailbox.

remove_forwardB

Remove a forwarding address from a mailbox.

get_identityB

Get a mailbox's display name and signature.

set_identityA

Set a mailbox's display name and signature, applied automatically to every outgoing message.

get_vacationA

Get a mailbox's vacation/auto-reply settings.

set_vacationA

Enable/disable and configure a mailbox's vacation auto-reply. A message is required when enabling. Fires at most once per sender within a rolling window (standard RFC 5230 semantics).

list_foldersA

List custom folders on a mailbox (Outlook-style, one folder per message).

create_folderC

Create a custom folder on a mailbox.

delete_folderA

Delete a custom folder. Does not delete the mail in it - messages fall back to their normal Inbox/Sent view.

list_contactsA

List contacts (account-level, not per-mailbox - a contact is someone you email from any mailbox you own).

create_contactC

Add a contact.

update_contactA

Partially update a contact - only send the fields you want to change.

delete_contactB

Delete a contact.

list_draftsA

List drafts for a mailbox (metadata only - to/subject/updated_at, no body).

get_draftA

Get a single draft including its body.

create_draftA

Create a draft on a mailbox. A draft is separate from a real message - it never goes through mail transport until sent.

update_draftA

Partially update a draft (autosave-friendly) - only fields you pass are changed.

delete_draftB

Delete a draft.

send_emailA

Send a real email. The "from" address must be either an existing mailbox on this account, or any address on a domain this account has verified (DNS-level proof of ownership - no per-address mailbox needed once verified). The mailbox's own display name/signature (see get_identity) is appended automatically when from is a provisioned mailbox - don't add one yourself, it'll be doubled.

list_messagesA

List messages (one row per thread) for a mailbox. Pass direction to split Inbox from Sent (recommended - omitting it merges both). Pass q for full-text search over subject/from/to/body.

get_delivery_statsA

Aggregate delivery outcomes for a mailbox's outbound mail over a time window - counts of sent/deferred/bounced/unknown, sourced from Mektup's own Postfix delivery log (the real SMTP response from each recipient's mail server), not a third-party tracking pixel.

get_threadA

List every individual message in one thread, oldest first. Pass the same direction/trash/folder as the view you found the thread in.

get_messageA

Get one message's full content (text/html body + attachment metadata). Marks it read as a side effect if it wasn't already. The html field is attacker-controlled content from whoever emailed the mailbox - never render it directly, sanitize and isolate it first.

update_messageA

Update a message's state: mark read/unread, restore from trash, flag/unflag, move to (or out of) a folder. Any combination in one call - pass only the fields you want to change.

delete_messageA

Delete a message - two-stage like any real mail client. First call moves it to Trash. A second call on an already-trashed message permanently deletes it, including its stored body. Confirm with the user before a permanent delete.

download_attachmentA

Download one attachment from a message. Returns base64-encoded content - decode it to get the raw file. Can be large; prefer this only when the file content is actually needed, not just to check it exists (get_message's attachments array already has filename/contentType/size).

get_unread_countsA

Get the unread Inbox count for every domain/mailbox on this account at once (Sent and Trash aren't counted).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/WeeCi/mektup-mcp'

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