SM

softeria/ms-365-mcp-server

Developer tools公式

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る

1099 stars 408 forks 品質 87 トレンド 48MIT

Graph APIを通じてMicrosoft 365およびOfficeサービスとやり取りするためのモデルコンテキストプロトコル(MCP)サーバー

概要

Graph APIを通じてMicrosoft 365およびMicrosoft Officeサービスとやり取りするためのモデルコンテキストプロトコル(MCP)サーバーです。 このサーバーは複数のMicrosoftクラウド環境をサポートしています: - Node.js >= 20(推奨) - Node.js 14+ は依存警告で動作する場合もあります - Microsoft Authentication Library(MSAL)による認証 - Microsoft 365サービスとの包括的な統合 - 安全な操作のための読み取り専用モードサポート - 細かいアクセス制御のためのツールフィルタリング サーバーはグローバルに設定可能な2つの出力フォーマットをサポートしています: 標準的なJSON出力(きれいな印刷): 効率的なLLMトークン使用のためのトークン指向オブジェクト表記: - JSONと比べてトークン数が30〜60%少なく - 均一な配列データ(メール、カレンダーイベント、ファイルなど)に最適 - コストに敏感な大規模アプリケーションに最適です

概要(AI 翻訳)

Microsoft 365 MCP Server

グラフを通じてMicrosoft 365およびMicrosoft Officeサービスとやり取りするためのモデルコンテキストプロトコル(MCP)サーバー APIです。

サポートクラウド

このサーバーは複数のMicrosoftクラウド環境をサポートしています:

クラウド 説明 認証エンドポイント グラフAPIエンドポイント
グローバル(デフォルト) 国際Microsoft 365 login.microsoftonline.com graph.microsoft.com
中国(21Vianet) Microsoft 365は21Vianetによって運用されています login.chinacloudapi.cn microsoftgraph.chinacloudapi.cn
GCCハイMicrosoft 365 米国政府GCCハイ login.microsoftonline.us graph.microsoft.us

GCC Highには事前登録されたクライアントはありません。政府のテナントでアプリを登録し、MS365_MCP_CLIENT_ID(およびMS365_MCP_TENANT_ID)を設定し、その後--cloud gcc-highを使います。

Graphトラフィックを自社のプロキシ(クライアントの単純なHTTPを終了し、TLSをMicrosoftに送信するプロキシ)経由でルーティングするには、MS365_MCP_GRAPH_BASE_URLをそのベースURLに設定します。CLIオプションの環境変数リストを確認し、それをバイパスするものも含めて確認してください。

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。

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:

GitHub で README 全文を見る

インストール

npx -y @softeria/ms-365-mcp-server --toon
MCP 初心者?mcpskill.org のガイドから始めましょう →

設定

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