Skip to main content
Glama

outlook-mcp (확장 포크)

win32com을 통해 Windows의 Microsoft Outlook용 MCP 서버입니다. AI 어시스턴트(Claude Code 및 기타 MCP 클라이언트)가 로컬에서 실행 중인 Outlook 인스턴스를 통해 이메일, 연락처, 일정 및 작업을 다룰 수 있게 해줍니다. Azure AD, Graph API, OAuth가 필요 없으며 COM을 통해 Outlook 데스크톱 클라이언트를 구동합니다.

이것은 lihaokun/outlook-mcp(PyPI: outlook-mcp-server 0.1.1, MIT)의 확장 포크입니다. 업스트림은 14개의 도구를 제공하지만, 이 포크는 21개를 제공하며 프로덕션에서 문제가 되는 세 가지 버그를 수정합니다. 이 포크는 PyPI에 게시되지 않습니다 — 이 저장소에서 설치하고(아래 참조) 이후에 pip install -U outlook-mcp-server를 실행하지 마십시오. PyPI 버전이 덮어쓸 수 있습니다.

이 포크가 업스트림 0.1.1에 추가하는 기능

새 도구(7개) — 업스트림에는 일정에 listCalendars + createEvent만 있었고 작업 관련 기능은 전혀 없었습니다:

  • listEvents, getEvent, updateEvent, deleteEvent

  • listTasks, createTask, updateTask

수정 사항:

  • 시간대: 이벤트 시간은 StartUTC/EndUTC로 읽은 후 astimezone()으로 변환합니다. Outlook의 COM Start/End 속성은 잘못된 +00:00 오프셋이 붙은 로컬 벽시계 시간을 보고하므로, 순진한 코드는 모든 약속 시간이 어긋나게 됩니다.

  • 로케일 안전 날짜 필터: DASL/Jet 날짜 리터럴은 win32api.GetDateFormat(LOCALE_USER_DEFAULT, ...)으로 형식화됩니다. Outlook은 필터 날짜를 시스템 로케일로 구문 분석합니다. 미국식 07/02/2026은 독일어 시스템에서 2월 7일로 읽힙니다.

  • COM 아파트 규율: CoInitialize/CoUninitialize는 임시 호출 대신 단일 헬퍼(_run_com)에서 균형 있게 호출됩니다.

  • --version: 실제 설치된 버전을 보고합니다(업스트림에는 항상 dev를 출력하는 오타가 있었습니다).

추가 사항:

  • 모든 이벤트 도구에 calendarPath 매개변수가 추가되었고 모든 이벤트 사전에 포함되어, 여러/공유 일정에서 이벤트를 주소 지정할 수 있습니다.

  • 이벤트에 busyStatus 및 meetingStatus가 노출됩니다.

  • calendarId가 있는 createEvent는 저장한 다음 항목을 대상 일정으로 이동하고 이동된 항목을 표시합니다.

  • 긴 메시지 본문은 전체 본문을 위해 getMessage/getEvent를 호출하라는 힌트와 함께 잘립니다.

안전 모델(업스트림과 동일): 모든 아웃바운드 작업(sendMail, replyToMessage, forwardMessage, createEvent, 작업)은 .Send()가 아닌 .Display()로 끝납니다. 항목이 Outlook에서 열리고 사람이 보내기 버튼을 클릭합니다. 서버는 자체적으로 아무것도 보낼 수 없습니다.

Related MCP server: MCP Outlook Tools

전체 도구 목록 (21개)

영역

도구

계정/폴더

listAccounts, listFolders, createFolder

이메일

searchMessages, getRecentMessages, getMessage, sendMail, replyToMessage, forwardMessage, updateMessage, deleteMessages

연락처

searchContacts

일정

listCalendars, createEvent, listEvents, getEvent, updateEvent, deleteEvent

작업

listTasks, createTask, updateTask

요구 사항

  • 클래식 Outlook 데스크톱 클라이너트가 설치 및 구성된 Windows(서버가 실행 중인 인스턴스에 연결하거나 COM을 통해 시작)

  • Python 3.10+

설치

pip install git+https://github.com/K4uP/outlook-mcp.git

Claude Code에 등록(사용자 범위):

claude mcp add --scope user outlook -- outlook-mcp-server

outlook-mcp-server가 PATH에 없으면 콘솔 스크립트의 전체 경로를 사용하십시오(예: %LOCALAPPDATA%\Programs\Python\Python312\Scripts\outlook-mcp-server.exe). 이후 Claude Code를 다시 시작하고 claude mcp list로 확인하십시오.

알려진 문제점

  • mcpServers 구성은 ~/.claude.json(사용자 범위)에 있어야 합니다. settings.json에 넣으면 아무 효과가 없습니다.

  • calendarPath 없이 listEvents를 호출하면 공유/대리인 일정이 섞여 나옵니다. 특정 사용자의 가용성이 필요하면 명시적 일정 경로를 전달하십시오.

  • createEvent: 기본 일정에는 calendarId를 생략하십시오. 일부 Exchange 설정에서는 기본 일정을 명시적 ID로 지정하면 실패합니다.

  • sendMail로 "보낸" 메일은 표시만 될 뿐, Outlook 창에서 사람이 보내기 버튼을 누르기 전까지는 어떤 것도 시스템 밖으로 나가지 않습니다.

라이선스

MIT — LICENSE를 참조하십시오. 원본 저작물 저작권 (c) 2026 lihaokun; 확장 및 수정 사항 저작권 (c) 2026 Rene S. Kaup.

Related MCP Connectors

Related MCP Servers

  • F
    license
    C
    quality
    F
    maintenance
    A powerful MCP server that enables AI assistants to interact with Microsoft Graph API for managing Outlook emails, Calendar events, OneDrive files, and Contacts through natural language commands.
    35
    56
    -
  • A
    license
    Not graded
    quality
    F
    maintenance
    A Model Context Protocol server that enables AI assistants to interact with Microsoft Outlook for calendar management, email operations, and search functionality.
    15
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server that gives AI assistants full access to Microsoft Outlook emails, calendar, and contacts via the Microsoft Graph API.
    127 npm
    2
    MIT