M365 MCP Server 30 Tools

Cloudflare Worker MCP Server für Microsoft 365 (Graph API) mit OAuth 2.1 Auto-Flow.

MCP Endpoint

POST https://m365.mcp.rieker.ai/mcp
Authorization: Bearer <token>  ← wird vom MCP Client automatisch verwaltet

OAuth 2.1 Auto-Flow

MCP Client → /mcp (kein Token) → 401
↳ Client liest /.well-known/oauth-authorization-server
↳ Client öffnet /authorize → Microsoft Login (einmalig)
/callback/token → Bearer Token
↳ Alle weiteren Requests transparent mit Bearer Token

OAuth Discovery

GET /.well-known/oauth-authorization-serverOAuth Metadata
GET /.well-known/oauth-protected-resourceResource Metadata
GET /authorizeStartet OAuth Flow
GET /callbackMicrosoft OAuth Callback
POST /tokenToken Exchange

Verfügbare Tools

ToolBeschreibung
onedrive_list_filesList files in a OneDrive folder
onedrive_get_fileGet metadata for a OneDrive file by item ID
onedrive_create_folderCreate a folder in OneDrive
onedrive_upload_textUpload text content as a file to OneDrive
sharepoint_list_sitesSearch for SharePoint sites
sharepoint_list_drivesList drives in a SharePoint site
sharepoint_list_filesList files in a SharePoint drive folder
sharepoint_get_listsGet lists in a SharePoint site
sharepoint_get_list_itemsGet items from a SharePoint list
mail_list_messagesList email messages from a mail folder
mail_get_messageGet a specific email message by ID
mail_sendSend an email
calendar_list_eventsList calendar events for upcoming days
calendar_create_eventCreate a calendar event. Defaults to the user's personal default calendar unless calendar_id is specified.
user_get_profileGet the current user profile from Microsoft 365
planner_get_my_tasksGet all Microsoft Planner tasks assigned to the current user
planner_list_plansList all Microsoft Planner plans the current user has tasks in, with their human-readable names. Call this before planner_create_task when no plan_id is known.
planner_create_taskCreate a new task in a Microsoft Planner plan. Call planner_list_plans first if the plan_id is not known.
todo_create_taskCreate a personal task in Microsoft To-Do (default task list). Use this for personal/ad-hoc tasks that don't belong to a Planner project.
onedrive_read_fileRead the text content of a OneDrive file by item ID or path
mail_replyReply to an email message
mail_create_draftCreate a draft email (does not send it)
calendar_list_calendarsList all calendars of the current user
calendar_update_eventUpdate an existing calendar event
calendar_delete_eventDelete a calendar event
planner_list_bucketsList all buckets (columns) in a Microsoft Planner plan
planner_update_taskUpdate a Microsoft Planner task (title, percent complete, due date). Use percent_complete: 100 to mark as done.
todo_list_tasksList tasks in Microsoft To-Do (personal task list)
todo_complete_taskMark a Microsoft To-Do task as completed
sharepoint_create_list_itemCreate a new item in a SharePoint list