A

Microsoft 365 MCP Server

MCP server for Microsoft 365 and Microsoft Graph API, supporting mail, calendar, OneDrive, Teams, SharePoint, contacts, tasks, OneNote, Excel, Planner, and more via 304 registered endpoints.

Overall Score89/100

Score Breakdown

Server Info

Package
@softeria/ms-365-mcp-server
Registry
npm
Maintainer
Community
Category
Communication
Tags
emailcalendarteamssharepoint
Last Scanned
28 May 2026

Findings

4 issues

Tool Schema Quality

MEDIUMOnly 1 of 32 schemas have parameter constraints

Most schemas lack maxLength, enum, or pattern constraints on string parameters.

Remediation

Add constraints to string parameters, especially on write operations.

LLM Safety

MEDIUM2 tool descriptions are too vague

Short or generic descriptions make tool selection unreliable.

Remediation

Expand descriptions with specific actions, data types, and side effects.

Data Exposure

MEDIUM88 list operations lack pagination

List endpoints pass through Microsoft Graph $top, $skip, $skipToken parameters for pagination; MS365_MCP_MAX_TOP caps maximum page size. Graph $select parameter passed through for field selection. Graph $filter and $orderby supported where applicable. Full Graph response objects returned with no additional server-side filtering. discovery mode (--discovery flag) registers only a single search/discovery tool rather than all 304 tools.

Remediation

Add limit/offset or cursor-based pagination.

Maintenance & Trust

LOWCommunity-maintained by softeria-eu (community)

No official vendor backing.

Remediation

Seek vendor verification.

Tools

32 total
NameDescriptionRisk
graph-batchExecute multiple Microsoft Graph API requests in a single batch calladmin
list-mail-messagesList mail messages from the authenticated user's mailboxread
list-mail-foldersList mail folders for the authenticated userread
create-mail-folderCreate a new mail folderwrite
delete-mail-folderDelete a mail folderwrite
send-mailSend an email messagewrite
create-draft-mailCreate a draft email messagewrite
list-calendar-eventsList calendar events for the authenticated userread
create-calendar-eventCreate a new calendar eventwrite
update-calendar-eventUpdate an existing calendar eventwrite
delete-calendar-eventDelete a calendar eventwrite
list-drive-itemsList items in a OneDrive folderread
get-drive-itemGet a specific OneDrive file or folder itemread
upload-drive-itemUpload a file to OneDrivewrite
delete-drive-itemDelete a OneDrive file or folderwrite
list-teamsList Microsoft Teams that the user belongs toread
list-channelsList channels in a Microsoft Teams teamread
list-chat-messagesList messages in a Teams chatread
send-chat-messageSend a message to a Teams chatwrite
list-contactsList Outlook contacts for the authenticated userread
create-contactCreate a new Outlook contactwrite
list-todo-tasksList Microsoft To Do tasksread
create-todo-taskCreate a new Microsoft To Do taskwrite
list-onenote-notebooksList OneNote notebooksread
search-drive-itemsSearch for files in OneDriveread
list-sharepoint-sitesList SharePoint sitesread
list-planner-tasksList Planner tasksread
list-excel-worksheetsList worksheets in an Excel workbookread
get-excel-rangeGet a range of cells from an Excel worksheetread
update-excel-rangeUpdate values in an Excel worksheet rangewrite
parse-teams-urlConverts any Teams meeting URL format (short /meet/, full /meetup-join/, or recap ?threadId=) into a standard joinWebUrl. Use this before list-online-meetings when the user provides a recap or short URL.read
download-bytesDownload binary content from Microsoft Graph and return it as base64. Single tool for any binary read: drive file content, mail attachment, profile photo, Teams hosted content, meeting recording.read

Deploy Microsoft 365 MCP Server securely

CompleteFlow adds per-user authentication, permission scoping, and audit logging to any MCP server out of the box.

Deploy on CompleteFlow