Skip to main content
Glama

ms365-mcp

小型ローカルモデル向けにサイズ調整されたMicrosoft 365 MCPサーバー。

ほとんどのMCPサーバーは、大きなコンテキストウィンドウを持つフロンティアモデル向けに構築されており、ベンダーAPIが提供するすべてを公開して、モデルに整理させる方式を取っています。Microsoft 365のリファレンスサーバーは、MicrosoftのGraph OpenAPI仕様から生成された326個のツールを公開しています。

しかし、これは8kコンテキストの8Bモデルには機能しません。ツールリスト全体がシステムプロンプトに収まり、モデルは25個を超えたあたりからランダムに選択し始めます。このサーバーは逆のアプローチを取ります:

  • 手書きの14個のツール。上限は20個に固定されています。ツールリストは予算であり、機能リストではありません。

  • 小型モデル向けに書かれた説明。APIメタデータから流用したものではありません。

  • 下書き優先。 他の人に送信できるツールは正確に1つだけであり、受信者ではなく下書きIDを受け取り、破壊的と注釈付けされています。

  • すべてのツールが自身の効果を宣言します。MCPのreadOnlyHintおよびdestructiveHint注釈を通じて、ホストがツール名から推測することなく分類できるようにします。

Edge Harness向けに構築されており、任意のMCPクライアントで利用できます。

ステータス

初期段階。まだ使用できません。 計画は10コミットです。完全な順序と各決定の根拠についてはdocs/PLAN.mdを参照してください。

スキャフォールド、ライセンス、CI

完了

stdio上のMCPプロトコル

完了

14ツールのサーフェス

宣言済み、ハンドラーはスタブ

サインイン

未開始

Microsoft Graph

未開始

Related MCP server: google-nice-mcp

ツールサーフェスの確認

--list-toolsは何も起動せず、アカウントも不要なので、「ホストには何が提供されるのか?」という問いに、何も配線される前に答えます:

.venv/bin/python -m ms365_mcp --list-tools

機械可読なバージョンには--jsonを追加します。

   read  whoami          Return the display name, email address and timezone…
   read  resolve_person  Look up a person by name or partial name and return…
   read  list_messages   List messages in a mail folder, newest first, as se…
  write  create_draft    Create a draft message. This does NOT send anything…
! write  send_draft      Send a draft that already exists, by its id. This r…
   ...
14 tools, 6 that change something, 4 marked destructive (!)

今日のハンドラーはスタブです。呼び出しは、ツールが宣言されているが実装されていないと述べる文を返します。サーフェスは、構築される前に意図的に固定されています。ツール名、説明、効果クラスは、ホストが分類し、モデルがプロンプトで参照するものであり、後で変更するのはコストがかかるからです。

Edge Harnessからの使用

ハーネスはこのサーバーをstdio上のサブプロセスとして起動するため、独自のインタープリターで実行され、ホストと依存関係を共有しません。これは偶然ではありません。ハーネスにはmcp/というローカルパッケージがあり、PyPI上の公式SDKもmcpと呼ばれているため、このサーバーをハーネスのvirtualenvにインストールすると、ハーネス自身のパッケージをシャドウしてしまいます。

そこでのレジストリエントリはms365-ownであり、Agent Labの実行オプションでCheckを押すと、すべてのツールがその効果クラスとともにリストされます。14個すべてがdeclaredとして分類されます。つまり、ハーネスはツール名から推測するのではなく、このサーバーの注釈からそれらを取得しており、エントリにオーバーライドは不要です。

ハーネスのデフォルトの下書きモードでは、send_draftは保留され、他の13個が利用可能であるため、実行が人に到達することはありません。

セキュリティ

このリポジトリは公開されており、いかなる種類の資格情報も保持していません。

認証にはMicrosoftデバイスコードフローを使用します。結果のトークンキャッシュは、オペレーティングシステムの設定ディレクトリに所有者のみの権限で書き込まれ、このリポジトリやその作業ツリーには決して書き込まれません。.gitignoreはとにかくトークンとキャッシュのファイル名をカバーし、pre-commitフックはステージングされた変更を資格情報の形をした文字列についてスキャンするため、コミットするにはうっかりではなく意図的な努力が必要です。

# pragma: allowlist secretで終わる行はフックによってスキップされます。これは、このリポジトリ自身のテストが偽の資格情報を含むことができるように存在しており、--no-verifyではできない、レビューアーが差分で見ることができるマーカーを残します。証明可能に偽のデータにのみ使用してください。

開発

python3 -m venv .venv
.venv/bin/pip install -e ".[dev]"
.venv/bin/pytest -q

クローンごとに一度、シークレットスキャンフックを有効にします:

git config core.hooksPath .githooks

ライセンス

MIT。LICENSEを参照してください。

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    A production-ready MCP server that provides secure, delegated access to Microsoft 365 services including Email, SharePoint, OneDrive, and Calendar. It enables AI models to search messages, browse files, manage calendar events, and parse document contents using OAuth 2.1 authentication.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Lightweight MCP server that enables AI agents to manage Microsoft Outlook email, calendar, and files using PKCE authentication with only a Client ID.
    MIT

View all related MCP servers

Related MCP Connectors

  • Hosted MCP endpoint with realistic fake data for prototyping agents. 12 tools, no setup.

  • MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.

  • MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.

View all MCP Connectors

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/sunnycho100/ms365-mcp'

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