K-Mail-MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_API_KEY | No | API key for OAuth login (required for remote mode) | |
| MAIL_MCP_BASE_URL | No | Base URL for remote access (required for remote mode) | |
| MAIL_MCP_HTTP_PORT | No | Port for the HTTP server (default 8766) |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_accountsB | 등록된 메일 계정 목록을 반환합니다. (비밀번호 미포함) |
| check_new_mailsA | [K-Mail-MCP 전용] 등록된 전체 메일 계정에서 마지막 확인 이후 읽지 않은 메일을 수집합니다. v1.3.0: 매 실행마다 IMAP 폴더 변경을 자동 감지합니다. 신규 폴더는 누적 로그(discovered)에 추가됩니다. 100개 초과 시 오래된 것부터 밀어냅니다. 폴더 삭제 시그널(IMAP 목록에서 사라지거나 NONEXISTENT 오류)이 있으면 자동 제거합니다. 메일이 없는 폴더는 제거하지 않습니다. 폴더 제외 관리는 set_watched_mailboxes 툴을 사용하세요. reply_to_differs=true인 메일은 반드시 ⚠️ 표시하세요. 출력 형식: 1) 📋 요약 — 총 N통, 폴더별/카테고리별 건수 2) 🔴 즉시 확인 필요 3) 📧 전체 목록 — [계정/폴더] 발신자 — 제목 | 카테고리 | 한줄요약 | 링크 4) ⚠️ 스팸 의심 (isSpam=true만, 없으면 생략) 5) 🔴 연결 오류 (있을 때만) |
| read_emailA | 특정 메일의 전체 본문을 읽습니다. max_chars로 본문 길이를 제한할 수 있습니다 (기본 5000자, -1이면 전체). |
| reset_last_runC | 마지막 실행 시각 초기화 또는 특정 시각으로 설정합니다. |
| list_mailboxesB | IMAP 폴더 목록과 현재 누적 discovered/excluded/effective 현황을 반환합니다. |
| generate_categoriesA | 실제 메일 패턴을 분석해 맞춤 카테고리를 자동 생성합니다. overwrite=true로 설정해야 저장됩니다. |
| get_watched_mailboxesA | 계정별 폴더 누적 로그(discovered), 제외(excluded), 유효 스캔(effective) 현황을 조회합니다. discovered: 지금까지 발견된 폴더 누적 목록 (최대 100개) excluded: 스캔 제외 폴더 (시스템 기본 + 사용자 추가) effective: 실제 스캔 대상 = discovered - excluded 미등록 계정은 다음 check_new_mails 시 자동 초기화됩니다. |
| set_watched_mailboxesA | 계정의 폴더 제외 목록을 관리합니다. 폴더 발견은 자동이며, 여기서는 제외 목록만 관리합니다. add_exclude: 스캔에서 제외할 폴더 추가 (노이즈/대용량 폴더 등) remove_exclude: 제외 해제 (기존 제외 폴더 복원) reset_exclude: true이면 시스템 기본값으로 제외 목록 초기화 폴더명은 list_mailboxes의 currentImap 목록에서 확인하세요 (대소문자 정확히). 예: 다음 카페편지함 제외 → account_label:'다음개인', add_exclude:['카페편지함'] |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
Most tools have clear, distinct purposes, but list_mailboxes and get_watched_mailboxes both describe returning the same discovered/excluded/effective folder state, which creates real ambiguity. The detailed descriptions help, but an agent could still easily pick the wrong one.
All tool names follow a consistent lowercase snake_case verb_noun pattern: list_*, get_*, set_*, read_*, reset_*, generate_*, and check_new_mails. There are no mixed conventions or vague naming styles.
Eight tools is a reasonable and well-scoped size for an email monitoring server. However, the overlapping list_mailboxes/get_watched_mailboxes pair suggests the surface is slightly over-scoped, since one of those tools may be redundant.
The core monitoring loop is covered: list accounts, scan new mail, read bodies, generate categories, manage folder exclusions, and reset the checkpoint. Gaps like no per-account fetch, no category deletion/inspection, and no message actions are minor for a monitoring-focused tool but would limit broader email workflows.