SM

softeria/ms-365-mcp-server

Developer toolsОфициальный

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

1,1 тыс. stars 404 forks Качество 87 Тренд 48MIT

Сервер Model Context Protocol (MCP) для взаимодействия с Microsoft 365 и сервисами Office через Graph API

Обзор

Сервер Model Context Protocol (MCP) для взаимодействия с сервисами Microsoft 365 и Microsoft Office через Graph API. Этот сервер поддерживает несколько облачных сред Microsoft: - Node.js >= 20 (рекомендуемо) - Node.js 14+ может работать с предупреждениями о зависимости - Аутентификация через библиотеку Microsoft Authentication Library (MSAL) - Комплексная интеграция сервисов Microsoft 365 - Поддержка режима только чтения для безопасных операций - Фильтрация инструментов для детального контроля доступа Сервер поддерживает два формата вывода, которые можно настроить глобально: Стандартный вывод JSON с prety-printing: Нотация объектов, ориентированная на токены, для эффективного использования токена LLM: - На 30-60% меньше токенов по сравнению с JSON - Лучше всего подходит для единообразных данных массива (списки писем, событий календаря, файлов и т.д.) - Идеально подходит для приложений, чувствительных к стоимости в масштабах

Обзор (машинный перевод)

Microsoft 365 MCP Server

Сервер Model Context Protocol (MCP) для взаимодействия с сервисами Microsoft 365 и Microsoft Office через Graph API.

Поддерживаемые облака

Этот сервер поддерживает несколько облачных сред Microsoft:

Облако Описание Конечная точка аутентификации Конечная точка API графа
Global (по умолчанию) Международный Microsoft 365 login.microsoftonline.com graph.microsoft.com
Китай (21Vianet) Microsoft 365, управляемый 21Vianet login.chinacloudapi.cn microsoftgraph.chinacloudapi.cn
GCC High Microsoft 365 Правительство США GCC High login.microsoftonline.us graph.microsoft.us

В средней школе GCC нет предварительно зарегистрированного клиента: зарегистрируйте приложение в вашем государственном арендаторе и установите MS365_MCP_CLIENT_ID (и MS365_MCP_TENANT_ID), затем используйте --cloud gcc-high.

Чтобы направить трафик Graph через собственный прокси (который завершает обычный HTTP клиента и отправляет TLS от Microsoft), установите MS365_MCP_GRAPH_BASE_URL на его базовый URL; см. список переменных среды в разделе CLI Options, включая то, что всё ещё его обходит.

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

ms-365-mcp-server

Microsoft 365 MCP Server

A Model Context Protocol (MCP) server for interacting with Microsoft 365 and Microsoft Office services through the Graph API.

Supported Clouds

This server supports multiple Microsoft cloud environments:

Cloud Description Auth Endpoint Graph API Endpoint
Global (default) International Microsoft 365 login.microsoftonline.com graph.microsoft.com
China (21Vianet) Microsoft 365 operated by 21Vianet login.chinacloudapi.cn microsoftgraph.chinacloudapi.cn
GCC High Microsoft 365 US Government GCC High login.microsoftonline.us graph.microsoft.us

GCC High has no pre-registered client: register an app in your government tenant and set MS365_MCP_CLIENT_ID (and MS365_MCP_TENANT_ID), then use --cloud gcc-high.

To route Graph traffic through a proxy of your own (one that terminates the client’s plain HTTP and originates TLS to Microsoft), set MS365_MCP_GRAPH_BASE_URL to its base URL; see the environment variable list under CLI Options, including what still bypasses it.

Prerequisites

  • Node.js >= 20 (recommended)
  • Node.js 14+ may work with dependency warnings

Features

  • Authentication via Microsoft Authentication Library (MSAL)
  • Comprehensive Microsoft 365 service integration
  • Read-only mode support for safe operations
  • Tool filtering for granular access control
  • Tool presets and dynamic discovery to shrink the tool surface and token usage

Output Format: JSON vs TOON

The server supports two output formats that can be configured globally:

JSON Format (Default)

Standard JSON output with pretty-printing:

{
  "value": [
    {
      "id": "1",
      "displayName": "Alice Johnson",
      "mail": "[email protected]",
      "jobTitle": "Software Engineer"
    }
  ]
}

(experimental) TOON Format

Token-Oriented Object Notation for efficient LLM token usage:

value[1]{id,displayName,mail,jobTitle}:
  "1",Alice Johnson,[email protected],Software Engineer

Benefits:

  • 30-60% fewer tokens vs JSON
  • Best for uniform array data (lists of emails, calendar events, files, etc.)
  • Ideal for cost-sensitive applications at scale

Usage:

Открыть полный README на GitHub

Установка

npx -y @softeria/ms-365-mcp-server --toon
Новичок в MCP? Начните с руководства на mcpskill.org →

Конфигурация

{ "mcpServers": { "ms365": { "command": "npx", "args": ["-y", "@softeria/ms-365-mcp-server", "--toon"] } } }