Skip to main content
Glama

outlook-mcp (расширенный форк)

MCP-сервер для Microsoft Outlook на Windows через win32com — позволяет ИИ-ассистентам (Claude Code и другим MCP-клиентам) работать с электронной почтой, контактами, календарями и задачами через локально запущенный экземпляр Outlook. Не нужны ни Azure AD, ни Graph API, ни OAuth — сервер управляет настольным клиентом Outlook через COM.

Это расширенный форк 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(). COM-свойства Start/End в Outlook возвращают локальное время с некорректным смещением +00:00; наивный код сдвигает каждую встречу.

  • Устойчивые к локали фильтры дат: литералы дат DASL/Jet форматируются с помощью win32api.GetDateFormat(LOCALE_USER_DEFAULT, ...). Outlook разбирает даты фильтров в системной локали — дата в американском формате 07/02/2026 на немецкой системе читается как 7 февраля.

  • Дисциплина апартаментов COM: вызовы CoInitialize/CoUninitialize сбалансированы в одном хелпере (_run_com), а не вызываются разрозненно.

  • --version: выводит реальную установленную версию (в апстриме была опечатка, из-за которой всегда печаталось dev).

Дополнения:

  • Параметр calendarPath добавлен во все инструменты для событий и включается в каждый словарь события, чтобы события можно было адресовать в нескольких/общих календарях.

  • busyStatus и meetingStatus теперь доступны на событиях.

  • createEvent с calendarId сохраняет элемент, затем перемещает его в целевой календарь и отображает перемещённый элемент.

  • Длинные тела сообщений обрезаются с подсказкой вызвать getMessage/getEvent для получения полного текста.

Модель безопасности (без изменений по сравнению с апстримом): каждое исходящее действие — sendMail, replyToMessage, forwardMessage, createEvent, задачи — завершается вызовом .Display(), но никогда .Send(). Элемент открывается в 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

Требования

  • Windows с установленным и настроенным классическим настольным клиентом Outlook (сервер подключается к запущенному экземпляру или запускает его через 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 ничего не даёт.

  • listEvents без calendarPath подмешивает общие/делегированные календари; передайте явный путь к календарю, когда нужно проверить доступность конкретного человека.

  • createEvent: опустите calendarId для календаря по умолчанию; некоторые конфигурации Exchange не работают, если календарь по умолчанию задан явным идентификатором.

  • Письма, «отправленные» через 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.
    152 npm
    2
    MIT