MCP server for Microsoft 365 and Intune management with 33 tools for Entra ID, devices, Autopilot, and more
Server has 25 tools with basic schemas and descriptions, but significant quality gaps. All tools have descriptions (10-50 chars, mostly generic), and input schemas are present with type definitions. However, descriptions are uniformly brief and lack context for LLM selection. No output schemas documented. No error handling guidance. No parameter validation rules or constraints. Tools lack idempotency hints, dependency documentation, or recovery guidance. Naming is verb-first and clear (list_*, create_*, get_*), which is good. But descriptions like 'Lists Intune-managed devices from your tenant' (47 chars) provide minimal context for when/why to call the tool vs alternatives. No pagination parameters on list tools despite potential for large result sets. Write operations (create_user, create_file_*) lack confirmation/dry-run patterns.
Creates a file in OneDrive.
Creates a file in SharePoint.
Creates a user in Microsoft Entra ID.
Gets detailed information about a specific group.
Gets all members of a specific group.
Gets detailed information about a specific user.
Lists all Android device management profiles.
List tools lack pagination parameters (limit, offset, page_size) and output schema documentation. 18 list_* tools return unbounded results, risking context window exhaustion and LLM reasoning degradation.
All tool descriptions are 30-50 characters and generic ('Lists X from your tenant'). Descriptions lack context for LLM selection, when to use vs alternatives, or what structure is returned. Baseline for A+ tools is 50-200 chars with actionable context.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 49 | 2026-07-28+ | v2 |
Lists all app protection policies (MAM policies).
Lists all Autopilot devices.
Lists all Autopilot deployment profiles.
Lists all Enrollment Status Page (ESP) profiles.
Lists all groups in Microsoft Entra ID.
Lists all Intune Active Directory connectors.
Lists all Intune applications.
Lists all Intune certificate connectors.
Lists all Intune device compliance policies.
Lists all Intune device configuration policies (settings).
Lists Intune-managed devices from your tenant.
Lists all Intune assignment filters.
Lists all Intune device management scripts (PowerShell and Shell scripts).
Lists all iOS device management profiles.
Lists all Microsoft Tunnel servers.
Lists all Microsoft Tunnel sites.
Lists all SharePoint sites in your tenant.
Lists all users in Microsoft Entra ID.
Write operations (create_user, create_file_in_onedrive, create_file_in_sharepoint) lack confirmation/dry-run patterns and do not document idempotency. Agents cannot safely retry on ambiguous failures without risking duplicate records or files.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., user_id from create_user for chaining to update_user). Responses are opaque to the agent.
No error handling guidance. Tools do not document what errors are retryable, user-fixable, or fatal. No recovery suggestions (e.g., 'User not found. Try search_users() with a partial name'). Agents cannot self-correct on failures.