Skip to content
VS Code

IMAP Mail for VS Code

io.github.buzzer/imap-mcp

Read and search IMAP mailboxes and create drafts. Sending and deleting are not possible.

client:VS Code transport:stdio runtime:oci

Install IMAP Mail in VS Code

.vscode/mcp.json

{
  "inputs": [
    {
      "type": "promptString",
      "id": "imap-host",
      "description": "IMAP_HOST",
      "password": true
    },
    {
      "type": "promptString",
      "id": "mail-user",
      "description": "MAIL_USER",
      "password": true
    },
    {
      "type": "promptString",
      "id": "mail-password",
      "description": "MAIL_PASSWORD",
      "password": true
    },
    {
      "type": "promptString",
      "id": "imap-port",
      "description": "IMAP_PORT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "mail-address",
      "description": "MAIL_ADDRESS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "mail-from-name",
      "description": "MAIL_FROM_NAME",
      "password": true
    },
    {
      "type": "promptString",
      "id": "mail-aliases",
      "description": "MAIL_ALIASES",
      "password": true
    },
    {
      "type": "promptString",
      "id": "drafts-folder",
      "description": "DRAFTS_FOLDER",
      "password": true
    },
    {
      "type": "promptString",
      "id": "mark-read-on-read",
      "description": "MARK_READ_ON_READ",
      "password": true
    },
    {
      "type": "promptString",
      "id": "draft-unread",
      "description": "DRAFT_UNREAD",
      "password": true
    },
    {
      "type": "promptString",
      "id": "bcc-self",
      "description": "BCC_SELF",
      "password": true
    }
  ],
  "servers": {
    "imap-mcp": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/buzzer/imap-mcp:0.2.1"
      ],
      "env": {
        "IMAP_HOST": "${input:imap-host}",
        "MAIL_USER": "${input:mail-user}",
        "MAIL_PASSWORD": "${input:mail-password}",
        "IMAP_PORT": "${input:imap-port}",
        "MAIL_ADDRESS": "${input:mail-address}",
        "MAIL_FROM_NAME": "${input:mail-from-name}",
        "MAIL_ALIASES": "${input:mail-aliases}",
        "DRAFTS_FOLDER": "${input:drafts-folder}",
        "MARK_READ_ON_READ": "${input:mark-read-on-read}",
        "DRAFT_UNREAD": "${input:draft-unread}",
        "BCC_SELF": "${input:bcc-self}"
      }
    }
  }
}

VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs

IMAP Mail in other clients