Skip to main content
Glama

OutlookMCPServer

Этот проект представляет собой сервер MCP, который предоставляет Claude Desktop доступ к вашей почте Microsoft 365, календарю и (скоро) файлам с помощью API Microsoft Graph.


✨ Особенности

  • Доступ к почте : создавайте, отвечайте, сортируйте, ищите, фильтруйте и анализируйте входящие сообщения с помощью Claude или любого MCP-совместимого агента

  • 🔜 Поддержка календаря : список по дате, создание, удаление писем (скоро: обновление почты, поиск)

  • 🚧 Поддержка OneDrive : возможное будущее направление после того, как почта и календарь станут надежными


Related MCP server: Mailmodo

🧱 Технологический стек

  • msgraph (современный Microsoft Graph SDK)

  • azure.identity с DeviceCodeCredential и TokenCachePersistenceOptions

  • FastMCP — простой MCP-совместимый серверный интерфейс

  • uv — быстрое управление зависимостями и окружением Python


⚙️ Требования

В настоящее время это построено для того, чтобы:

  • Запустить локально на macOS

  • Использовать с Claude Desktop

  • Аутентификация с использованием приложения, зарегистрированного в Azure

⚠️ Для настройки этого параметра у вас должен быть доступ администратора к клиенту Azure — регистрация приложения требует согласия для областей Microsoft Graph (например, Mail.Read , Calendars.Read ), которое по умолчанию не допускается в большинстве организаций.


🚀 Начало работы

# Set up the environment
uv venv
uv pip install -r uv.lock

# Run locally using MCP Inspector
mcp dev main.py (expect errors)

Гораздо проще заставить все работать в Инспекторе, прежде чем пытаться отлаживать в Клоде.


🔐 Настройка аутентификации

Перед запуском приложения необходимо настроить следующее:

  1. Создайте папку auth_cache в корне проекта (см. примечание):

mkdir -p auth_cache
  1. Создайте файл .env в корне проекта.

touch .env
  1. Добавьте в .env следующее:

echo "AZURE_CLIENT_ID=<your-id-from-Azure-portal-here>" > .env
echo "AZURE_TENANT_ID=<your-id-from-Azure-portal-here>" >> .env
echo "AZURE_GRAPH_SCOPES=User.Read Mail.Read Mail.Send Mail.ReadWrite" >> .env

ПРИМЕЧАНИЕ. При первом запуске приложение выполнит аутентификацию с использованием потока DeviceCodeCredential и в случае успеха автоматически создаст файл auth_record.json в папке auth_cache.

Для регистрации приложения с этими разрешениями вам необходимо иметь права администратора к клиенту Azure.


Клод для интеграции с рабочим столом

Для интеграции с Claude Desktop добавьте в файл claude_desktop_config.json следующее:

{
  "mcpServers": {
    "outlook": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "azure-identity,mcp[cli],msgraph-core,msgraph-sdk",
        "mcp",
        "run",
        "/absolute/path/to/OutlookMCPServer"
      ]
    }
  }
}

В Claude Desktop вы можете найти файл json, перейдя в Настройки/Разработчик/Изменить конфигурацию.

ПРИМЕЧАНИЕ: Возможно, вам придется заменить «uv» на абсолютную ссылку в «command».

Перезапускайте Claude Desktop каждый раз после внесения изменений в конфигурацию или код сервера.


📦 Структура папок

.
├── README.md
├── main.py
├── settings.py
├── auth_cache/
│   └── auth_record.json
├── mcpserver/
│   └── graph/
│       ├── __init__.py
│       ├── calendar_service.py
│       ├── controller.py
│       ├── mail_service.py
│   ├── __init__.py
│   ├── auth_wrapper.py
│   ├── context_manager.py
│   ├── mail_query.py
│   ├── message_info.py
│   └── server.py
├── tests/
├── .env
├── __init__.py
├── main.py

📌 Дорожная карта

  • Интеграция почты (ГОТОВО)

  • Авторизация в Claude Desktop (ГОТОВО)

  • Интеграция календаря (ОСНОВНОЕ ВЫПОЛНЕНО)

  • Дополнительная интеграция OneDrive

  • Поддержка Windows


📄 Лицензия

Массачусетский технологический институт

Авторские права (c) 2024 Enthoosa AI

Настоящим предоставляется разрешение любому лицу, получившему копию этого программного обеспечения и связанных с ним файлов документации («Программное обеспечение»), безвозмездно использовать Программное обеспечение без ограничений, включая, помимо прочего, права на использование, копирование, изменение, объединение, публикацию, распространение, сублицензирование и/или продажу копий Программного обеспечения, а также разрешать лицам, которым предоставляется Программное обеспечение, делать это при соблюдении следующих условий:

Вышеуказанное уведомление об авторских правах и настоящее уведомление о разрешении должны быть включены во все копии или существенные части Программного обеспечения.

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ, ЯВНЫХ ИЛИ ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ГАРАНТИЯМИ ТОВАРНОЙ ПРИГОДНОСТИ, ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ И НЕНАРУШЕНИЯ ПРАВ. АВТОРЫ ИЛИ ОБЛАДАТЕЛИ АВТОРСКИХ ПРАВ НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ПРЕТЕНЗИИ, УБЫТКИ ИЛИ ДРУГУЮ ОТВЕТСТВЕННОСТЬ, БУДЬ ТО В ДЕЙСТВИИ ПО КОНТРАКТУ, ДЕЛИКТЕ ИЛИ ИНЫМ ОБРАЗОМ, ВОЗНИКАЮЩИЕ ИЗ, ИЗ ИЛИ В СВЯЗИ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ ИЛИ ИСПОЛЬЗОВАНИЕМ ИЛИ ДРУГИМИ ДЕЛАМИ В ПРОГРАММНОМ ОБЕСПЕЧЕНИИ.

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.

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/Norcim133/OutlookMCPServer'

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