Skip to main content
Glama
Soundhannes

IMAP MCP Server

by Soundhannes
README.md
# IMAP MCP Server

> **Status: Getestet**

MCP (Model Context Protocol) Server für IMAP Email-Operationen.

## Installation

```bash
cd IMAP-MCP
pip install -e .
```

## Konfiguration

1. Kopiere `config.json.example` zu `config.json`
2. Trage deine IMAP-Zugangsdaten ein:

```json
{
  "imap": {
    "host": "imap.example.com",
    "port": 993,
    "secure": true
  },
  "credentials": {
    "username": "deine-email@example.com",
    "password": "dein-app-passwort"
  }
}
```

## Verwendung

### Als MCP Server starten

```bash
imap-mcp
```

### In Claude Code einbinden

In `~/.claude/settings.json`:

```json
{
  "mcpServers": {
    "imap": {
      "command": "python",
      "args": ["-m", "imap_mcp.server"],
      "cwd": "/pfad/zu/IMAP-MCP/src"
    }
  }
}
```

## Funktionen (38 Tools)

### Verbindung
| Funktion | Beschreibung |
|----------|--------------|
| connect | IMAP-Verbindung aufbauen |
| authenticate | Login mit Username/Passwort |
| disconnect | Verbindung schliessen |
| auto_connect | Mit config.json Credentials verbinden |

### Mailboxen
| Funktion | Beschreibung |
|----------|--------------|
| list_mailboxes | Alle Ordner auflisten |
| select_mailbox | Ordner oeffnen |
| create_mailbox | Neuen Ordner erstellen |
| get_mailbox_status | Status (Anzahl, Ungelesen, etc.) |

### Emails lesen
| Funktion | Beschreibung |
|----------|--------------|
| fetch_emails | Emails abrufen mit Filtern |
| get_email | Komplette Email per UID |
| get_email_headers | Nur Header (schneller) |
| get_email_body | Body (text/html) |
| get_attachments | Anhaenge auflisten |
| download_attachment | Anhang herunterladen (base64) |
| get_thread | Email-Thread/Konversation |

### Suche
| Funktion | Beschreibung |
|----------|--------------|
| search_emails | Freie Suche (IMAP SEARCH) |
| search_by_sender | Nach Absender |
| search_by_subject | Nach Betreff |
| search_by_date | Nach Datum |
| search_unread | Alle ungelesenen |
| search_flagged | Alle markierten |

### Aktionen
| Funktion | Beschreibung |
|----------|--------------|
| mark_read | Als gelesen markieren |
| mark_unread | Als ungelesen markieren |
| flag_email | Flag hinzufuegen |
| unflag_email | Flag entfernen |
| move_email | In anderen Ordner verschieben |
| copy_email | In anderen Ordner kopieren |
| archive_email | Archivieren |
| save_draft | Entwurf speichern |

### Statistiken
| Funktion | Beschreibung |
|----------|--------------|
| get_unread_count | Anzahl ungelesener Emails |
| get_total_count | Gesamtanzahl |

### Cache & Watch
| Funktion | Beschreibung |
|----------|--------------|
| get_cached_overview | Gecachte Uebersicht |
| refresh_cache | Cache aktualisieren |
| start_watch | IDLE Watch starten |
| stop_watch | IDLE Watch stoppen |
| idle_watch | Einzelne Mailbox beobachten |

### Auto-Archive
| Funktion | Beschreibung |
|----------|--------------|
| get_auto_archive_list | Auto-Archive Sender auflisten |
| add_auto_archive_sender | Sender hinzufuegen |
| remove_auto_archive_sender | Sender entfernen |
| reload_auto_archive | Config neu laden |

## Lizenz

MIT

TDQS

B3/5.0

Scored across 41 tools

Disambiguation3/5

The tools have clear purposes for core IMAP operations like fetch_emails, move_email, and create_mailbox, but there is notable overlap in search functionality (search_emails, search_by_date, search_by_sender, search_by_subject, search_unread, search_flagged) and in email status retrieval (get_unread_count, get_total_count, get_mailbox_status, get_cached_overview), which could cause confusion or redundancy in agent selection.

Naming Consistency4/5

Tool names follow a consistent snake_case pattern with clear verb_noun structures, such as fetch_emails, create_mailbox, and download_attachment. Minor deviations exist, like auto_connect (which lacks an object) and idle_watch (which is less descriptive), but overall the naming is predictable and readable.

Tool Count2/5

With 41 tools, the count is excessive for an IMAP server, leading to a bloated interface. Many tools could be consolidated (e.g., multiple search variants into parameters of a single search tool), making it heavy and potentially overwhelming for agents to navigate efficiently.

Completeness5/5

The tool set provides comprehensive coverage for IMAP email management, including connection handling (connect, authenticate, disconnect), mailbox operations (list_mailboxes, create_mailbox), email retrieval (fetch_emails, get_email), actions (move_email, archive_email, flag_email), search capabilities, and advanced features like auto-archiving and IDLE watching, leaving no obvious gaps for the domain.

Maintenance

ActivityInactive
ResponsivenessNo issues