/ ディレクトリ / プレイグラウンド / Microsoft 365 MCP
● コミュニティ Softeria ⚡ 即起動

Microsoft 365 MCP

作者 Softeria · Softeria/ms-365-mcp-server

Microsoft 365をMCPとして公開 — Outlook、Calendar、OneDrive、Teamsチャット、ExcelをMicrosoft Graph認証で利用。

ms-365-mcpはM365のコア生産性機能をカバーしています。仕事がOutlook/Teamsに集中していて、Claudeに下書き作成、トリアージ、スケジュール管理をさせたい場合に役立ちます。

なぜ使うのか

主な機能

ライブデモ

実際の動作

準備完了

インストール

クライアントを選択

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "ms-365-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "ms-365-mcp-server"
      ]
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config を開く。保存後、アプリを再起動。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "ms-365-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "ms-365-mcp-server"
      ]
    }
  }
}

Cursor は Claude Desktop と同じ mcpServers スキーマを使用。プロジェクト設定はグローバルより優先。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "ms-365-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "ms-365-mcp-server"
      ]
    }
  }
}

Cline サイドバーの MCP Servers アイコンをクリックし、"Edit Configuration" を選択。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "ms-365-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "ms-365-mcp-server"
      ]
    }
  }
}

Claude Desktop と同じ形式。Windsurf を再起動して反映。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "ms-365-mcp",
      "command": "npx",
      "args": [
        "-y",
        "ms-365-mcp-server"
      ]
    }
  ]
}

Continue はマップではなくサーバーオブジェクトの配列を使用。

~/.config/zed/settings.json
{
  "context_servers": {
    "ms-365-mcp": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "ms-365-mcp-server"
        ]
      }
    }
  }
}

context_servers に追加。保存時に Zed がホットリロード。

claude mcp add ms-365-mcp -- npx -y ms-365-mcp-server

ワンライナー。claude mcp list で確認、claude mcp remove で削除。

ユースケース

実用的な使い方: Microsoft 365 MCP

Outlookの受信ボックスをトリアージする

👤 開発者 ⏱ ~15 min intermediate

使うタイミング: 一日の始めにメールが溢れていて、手早い概要と下書きが欲しい場合。

フロー
  1. 未読を一覧表示
    list_messages unread=true✓ コピーしました
    → 上位のメッセージが表示されている
  2. 整理
    送信者/スレッドでグループ化し、重要度をマークします。✓ コピーしました
    → 優先レーンが設定されている
  3. 下書き
    上位5件の返信下書きを作成します。✓ コピーしました
    → 下書きが保存されている

結果: 送信準備の整った下書きとともに受信ボックスがトリアージされます。

組み合わせ

他のMCPと組み合わせて10倍の力を

ms-365-mcp + github

PRのタイトルを週次のOutlookダイジェストに取り込む

ms-365-mcpとgithubを組み合わせる:PRのタイトルを週次のOutlookダイジェストに取り込む✓ コピーしました

ツール

このMCPが提供する機能

ツール入力呼び出すタイミングコスト
list_messages (ドキュメント参照) Outlookのメッセージを一覧表示する 1 call
send_message (ドキュメント参照) メールを送信する 1 call
create_event (ドキュメント参照) カレンダーイベントを作成する 1 call
list_files (ドキュメント参照) OneDriveのファイルを一覧表示する 1 call
excel_range (ドキュメント参照) Excelのセルを読み書きする 1 call

コストと制限

運用コスト

APIクォータ
Graphのスロットリング(状況による)
呼び出しあたりのトークン
メッセージは中程度のサイズ
金額
無料;M365プランが適用される
ヒント
OAuthスコープを絞り込む — GraphのパーミッションリストはOAuthスコープを最小限に保つことが重要

セキュリティ

権限、シークレット、影響範囲

最小スコープ: Mail.Read Calendars.ReadWrite Files.Read
認証情報の保管: OAuth tokenをOSキーチェーンに保管
データ送信先: graph.microsoft.com
絶対に付与しない: テナント全体にMail.ReadWrite.Allを付与すること

トラブルシューティング

よくあるエラーと対処法

403

スコープに対する管理者の同意がありません

スロットリング

Graphはテナントごとにレート制限があります;バックオフしてください

代替案

Microsoft 365 MCP 他との比較

代替案代わりに使う場面トレードオフ
製品ごとのMCP1つだけ必要な場合(例:Outlookのみ)設定が増える

その他

リソース

📖 GitHub の公式 README を読む

🐙 オープンな issue を見る

🔍 400以上のMCPサーバーとSkillsを見る