Microsoft Graph API integration for Claude Code - Outlook/Hotmail email access
This server has critical definition gaps across all 7 tools. Tool names lack action verbs (setup, auth, check, me, messages, download, download-all are vague or non-standard). Most tools have minimal descriptions (10-30 chars, well below the 50-200 char LLM-optimized baseline). Input schemas are present for only 3 of 7 tools (auth, messages, download, download-all have partial schemas; setup, check, me have none visible). No output schemas documented. Error handling and recovery guidance absent. The codebase shows OAuth implementation detail but tool definitions are underspecified for agent reasoning.
Authenticate with Microsoft using OAuth 2.0 PKCE flow
Check authentication status
Download a specific message as .eml file
Download recent messages as .eml files
Get user profile information
List recent messages from user mailbox
Configure API credentials for Microsoft Graph API access
Tool names lack action verbs. 'setup', 'auth', 'check', 'me' are vague or non-standard. LLMs cannot infer intent from these names alone. Should be: 'configure_credentials', 'authenticate_user', 'check_auth_status', 'get_user_profile'.
No input schemas visible for 3 tools (setup, check, me). These tools cannot be reliably invoked by agents.
Descriptions are too short (10-30 chars). Rubric baseline is 50-200 chars for LLM-optimized descriptions. Current descriptions lack context on WHEN to use each tool and WHAT it returns. E.g., 'Check authentication status' does not explain what 'status' means or what the response contains.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 28 | 2026-07-28+ | v2 |
No output schemas documented. Agents cannot plan downstream calls or extract required fields (e.g., does 'me' return user_id, email, display_name?). Breaks tool chaining.
No error handling or recovery guidance. If auth fails, setup fails, or messages returns empty, agents have no actionable next steps. Errors should guide: 'Credentials not found. Run setup first.' or 'No messages in mailbox. Check folder parameter.'