Skip to main content
Glama
Cam10001110101

Email Processing MCP Server

이메일 처리 MCP 서버

이 MCP 서버는 의미 검색을 위한 MongoDB 통합과 효율적인 저장 및 검색을 위한 SQLite를 통해 이메일 처리 기능을 제공합니다.

특징

  • 날짜 범위 필터링을 사용하여 Outlook에서 이메일 처리

  • 적절한 연결 관리를 통해 SQLite 데이터베이스에 이메일 저장

  • Ollama를 사용하여 벡터 임베딩 생성

  • 다중 사서함 지원

  • 받은 편지함, 보낸 편지함 및 선택적으로 삭제된 편지함 폴더 지원

Related MCP server: Gmail MCP Server

곧 출시될 기능

  • 의미론적 기능을 갖춘 이메일 검색

  • LLM을 활용한 이메일 요약

  • 자동 이메일 분류

  • 사용자 정의 가능한 이메일 보고서

  • 고급 필터링 옵션

  • Outlook 초안 이메일 응답

  • Outlook 규칙 제안

  • Neo4j 및 ChromaDB 통합을 통한 확장된 데이터베이스 옵션

필수 조건

  • Python 3.10 이상

  • 로컬로 실행되는 Ollama(임베딩용)

  • Microsoft Outlook이 설치됨

  • Windows OS(Outlook 통합용)

  • MongoDB 서버(임베딩 저장용)

설치

  1. uv를 설치하세요(아직 설치되지 않았다면):

지엑스피1

  1. 가상 환경 만들기:

uv venv .venv
  1. 가상 환경을 활성화합니다.

    윈도우:

    .venv\Scripts\activate

    macOS/Linux:

    source .venv/bin/activate
  2. 종속성 설치:

uv pip install -e .
  1. fastmcp 패키지를 설치하세요:

uv pip install fastmcp
  1. Ollama가 필수 모델을 사용하여 로컬로 실행되고 있는지 확인하세요.

ollama pull nomic-embed-text

구성

Claude for Desktop 구성 파일에 서버를 추가합니다.

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{ "mcpServers": { "outlook-email": { "command": "C:/Users/username/path/to/mcp-server-outlook-email/.venv/Scripts/python", "args": [ "C:/Users/username/path/to/mcp-server-outlook-email/src/mcp_server.py" ], "env": { "MONGODB_URI": "mongodb://localhost:27017/MCP?authSource=admin", "SQLITE_DB_PATH": "C:\\Users\\username\\path\\to\\mcp-server-outlook-email\\data\\emails.db", "EMBEDDING_BASE_URL": "http://localhost:11434", "EMBEDDING_MODEL": "nomic-embed-text", "COLLECTION_NAME": "outlook-emails", "PROCESS_DELETED_ITEMS": "false" } } } }

추적 및 모니터링

이 서버는 외부 추적 및 모니터링 솔루션을 지원하도록 설계되었습니다. MCP 로깅 구현은 별도로 구현될 더욱 강력한 추적 방식을 위해 의도적으로 제거되었습니다.

참고: 이전 로깅 시스템을 다시 구현하지 마십시오. 새로운 추적 솔루션은 향후 제공될 예정입니다.

구성 필드에 대한 설명:

  • command : 가상 환경의 Python 실행 파일에 대한 전체 경로

  • args : MCP 서버 스크립트의 전체 경로를 포함하는 배열

  • env : 구성을 위한 환경 변수

    • MONGODB_URI : MongoDB 연결 문자열

    • SQLITE_DB_PATH : SQLite 데이터베이스 파일의 절대 경로

    • EMBEDDING_BASE_URL : Ollama 서버 URL

    • EMBEDDING_MODEL : 임베딩에 사용할 모델

    • LLM_MODEL : LLM 작업에 사용할 모델

    • COLLECTION_NAME : 사용할 MongoDB 컬렉션의 이름(필수)

    • PROCESS_DELETED_ITEMS : 삭제된 항목 폴더의 이메일을 처리할지 여부(선택 사항, 기본값: "false")

  • disabled : 서버가 비활성화되었는지 여부(false여야 함)

  • alwaysAllow : 사용자 확인이 필요하지 않은 도구 배열

  • autoApprove : 자동 승인이 가능한 도구 배열

경로를 시스템의 실제 경로로 바꾸세요. env 섹션의 Windows 경로는 두 개의 백슬래시를 사용해야 합니다.

사용 가능한 도구

1. 이메일 처리

지정된 날짜 범위의 이메일을 처리합니다.

{ "start_date": "2024-01-01", # ISO format date (YYYY-MM-DD) "end_date": "2024-02-15", # ISO format date (YYYY-MM-DD) "mailboxes": ["All"] # List of mailbox names or ["All"] for all mailboxes }

이 도구는 다음을 수행합니다.

  1. 지정된 Outlook 사서함에 연결

  2. 받은 편지함 및 보낸 편지함 폴더(활성화된 경우 삭제된 편지함 포함)에서 이메일을 검색합니다.

  3. SQLite 데이터베이스에 이메일 저장

  4. Ollama를 사용하여 임베딩 생성

  5. 의미 검색을 위해 MongoDB에 임베딩 저장

Claude에서의 사용 예

"Process emails from February 1st to February 17th from all mailboxes"

건축학

서버는 하이브리드 검색 방식을 사용합니다.

  1. SQLite 데이터베이스:

    • 기본 이메일 저장소

    • 전체 텍스트 검색 기능

    • 처리 상태 추적

    • 효율적인 필터링

    • 디렉토리가 존재하지 않으면 자동으로 생성됩니다.

    • 데이터베이스 잠금을 방지하기 위해 연결이 제대로 닫혔습니다.

  2. MongoDB의 용도:

    • 벡터 임베딩 저장

    • 의미적 유사성 검색

    • 메타데이터 필터링

    • 효율적인 검색

    • 사용 후 연결이 제대로 닫혀있습니다.

오류 처리

서버는 일반적인 문제에 대한 자세한 오류 메시지를 제공합니다.

  • 잘못된 날짜 형식

  • Outlook 연결 문제

  • MongoDB 오류

  • 재시도 논리를 사용하여 생성 실패를 내장합니다.

  • SQLite 저장소 오류

  • Ollama 서버 연결 시 자동 재시도 문제 발생

자원 관리

서버는 문제를 방지하기 위해 적절한 리소스 관리를 구현합니다.

  • 데이터베이스 연결(SQLite 및 MongoDB)은 "닫힌 데이터베이스에서 작동할 수 없습니다" 오류를 방지하기 위해 서버 수명 동안 열려 있습니다.

  • 연결이 atexit 핸들러를 사용하여 서버가 종료될 때만 닫힙니다.

  • 소멸자와 컨텍스트 관리자는 객체가 가비지 수집될 때 연결이 닫히도록 보장하는 대체 수단으로 사용됩니다.

  • 연결 관리 기능은 리소스 사용과 운영 안정성 간의 균형을 맞추도록 설계되었습니다.

  • Ollama와 같은 외부 서비스에 대한 강력한 재시도 논리로 임시 연결 문제를 처리합니다.

보안 참고 사항

  • 서버는 지정된 사서함의 이메일만 처리합니다.

  • 모든 데이터는 로컬(SQLite) 및 MongoDB에 저장됩니다.

  • 로컬 Ollama 서버를 제외한 외부 API 호출 없음

  • 이메일 처리를 위해 명시적인 사용자 승인이 필요합니다.

  • MCP 인터페이스를 통해 민감한 이메일 데이터가 노출되지 않습니다.

디버깅

문제가 발생하는 경우:

  1. 이메일이 성공적으로 처리되었는지 확인하세요(process_emails 응답 확인)

  2. 임베딩 생성을 위해 Ollama 서버가 실행 중인지 확인하세요.

  3. SQLite 데이터베이스에 액세스할 수 있는지 확인하세요

  4. MongoDB 연결이 제대로 작동하는지 확인하세요

-
security - not tested
F
license - not found
-
quality - not tested

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/Cam10001110101/mcp-server-outlook-email'

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