ToolTrust
D52/100
Softeria

ms-365-mcp-server

mcp0.114.0

@Softeria

A Model Context Protocol (MCP) server for interacting with Microsoft 365 and Office services through the Graph API

By Softeria | 726 findings | Scanned 6/3/2026 | tooltrust-scanner/v0.3.13 | 753

216 High123 Medium387 Low

Risk Summary

Block in Production

Excessive Permissions + Supply Chain CVEs risk is significant. Avoid using this in production agents.

Potential impact: The agent may gain overly broad access to files, network, databases, or execution capabilities.

Recommended action: This tool should stay disabled in production agents until the flagged risks are fixed and the scan is clean.

{
  "mcpServers": {
    "ms-365-mcp-server": {
      "disabled": true
    }
  }
}

Security Findings (726)

  • HighAS-004

    📦Supply Chain CVEs (OSV) ×178

    GO-2026-5024 in golang.org/x/[email protected]: Invoking integer overflow in NewNTUnicodeString in golang.org/x/sys/windows (upgrade to 0.44.0)

    loginlogoutverify-loginlist-accountsselect-accountremove-accountgraph-batchget-drive-itemmove-rename-onedrive-itemdelete-onedrive-filelist-folder-filescreate-onedrive-folderupload-file-contentcopy-drive-itemcreate-drive-item-share-linkcreate-upload-sessionget-drive-deltashare-drive-itemlist-drive-item-permissionsdelete-drive-item-permissioncreate-drive-item-previewlist-drive-item-thumbnailslist-drive-item-versionslist-excel-tablesget-excel-tablelist-excel-table-rowsadd-excel-table-rowsupdate-excel-table-rowdelete-excel-table-rowlist-excel-worksheetscreate-excel-chartsort-excel-rangeget-excel-rangeupdate-excel-rangeclear-excel-rangedelete-excel-rangeformat-excel-rangeinsert-excel-rangemerge-excel-rangeunmerge-excel-rangecreate-excel-tableget-excel-used-rangeget-drive-root-itemsearch-onedrive-filesget-current-userlist-my-calendar-permissionscreate-my-calendar-permissionupdate-my-calendar-permissiondelete-my-calendar-permissionlist-calendarscreate-calendarupdate-calendardelete-calendarget-specific-calendar-viewlist-specific-calendar-eventscreate-specific-calendar-eventget-specific-calendar-eventupdate-specific-calendar-eventdelete-specific-calendar-eventlist-calendar-event-instancesget-calendar-viewlist-calendar-view-deltalist-contact-folderscreate-contact-folderupdate-contact-folderdelete-contact-folderlist-contact-folder-child-folderscreate-contact-child-folderlist-contact-folder-contactscreate-contact-in-folderlist-outlook-contactscreate-outlook-contactget-outlook-contactupdate-outlook-contactdelete-outlook-contactlist-driveslist-calendar-eventscreate-calendar-eventget-calendar-eventupdate-calendar-eventdelete-calendar-eventaccept-calendar-eventcancel-calendar-eventdecline-calendar-eventdismiss-calendar-event-reminderforward-calendar-eventsnooze-calendar-event-remindertentatively-accept-calendar-eventlist-calendar-events-deltaget-mail-tipslist-focused-inbox-overridescreate-focused-inbox-overrideupdate-focused-inbox-overridedelete-focused-inbox-overrideget-mailbox-settingsupdate-mailbox-settingslist-mail-folderscreate-mail-folderupdate-mail-folderdelete-mail-folderlist-mail-child-folderscreate-mail-child-folderlist-mail-rulescreate-mail-ruleupdate-mail-ruledelete-mail-rulelist-mail-folder-messageslist-mail-folder-messages-deltalist-mail-messagescreate-draft-emailget-mail-messageupdate-mail-messagedelete-mail-messageget-mail-message-mimelist-mail-attachmentsadd-mail-attachmentdelete-mail-attachmentcreate-mail-attachment-upload-sessioncopy-mail-messagecreate-forward-draftcreate-reply-draftcreate-reply-all-draftforward-mail-messagemove-mail-messagereply-mail-messagereply-all-mail-messagesend-draft-messagelist-onenote-notebookscreate-onenote-notebooklist-onenote-notebook-sectionscreate-onenote-sectionlist-onenote-pagescreate-onenote-pagedelete-onenote-pageget-onenote-page-contentlist-onenote-section-groupslist-all-onenote-sectionslist-onenote-section-pagescreate-onenote-section-pagelist-outlook-categoriescreate-outlook-categorylist-supported-languageslist-supported-time-zonesupload-my-profile-photolist-planner-taskssend-maillist-todo-task-listscreate-todo-task-listupdate-todo-task-listdelete-todo-task-listlist-todo-taskscreate-todo-taskget-todo-taskupdate-todo-taskdelete-todo-tasklist-todo-linked-resourcescreate-todo-linked-resourcedelete-todo-linked-resourcecreate-planner-bucketget-planner-bucketupdate-planner-bucketdelete-planner-bucketget-planner-planlist-plan-bucketslist-plan-taskscreate-planner-taskget-planner-taskupdate-planner-taskget-planner-task-detailsupdate-planner-task-detailslist-subscriptionscreate-subscriptionget-subscriptionupdate-subscriptiondelete-subscriptionreauthorize-subscriptionparse-teams-urldownload-bytes

    Fix: Upgrade or replace the vulnerable dependency. Pin all dependency versions and enable automated CVE scanning (Dependabot or OSV Scanner).

  • HighAS-002

    ⚠️Excessive Permissions ×38

    tool declares network permission

    graph-batchget-drive-itemcopy-drive-itemcreate-drive-item-share-linkcreate-upload-sessionlist-drive-item-permissionscreate-drive-item-previewlist-drive-item-thumbnailslist-drive-item-versionssearch-onedrive-filesget-specific-calendar-viewget-calendar-viewlist-calendar-view-deltacancel-calendar-eventlist-calendar-events-deltalist-mail-folder-messageslist-mail-folder-messages-deltalist-mail-messagesget-mail-message-mimelist-mail-attachmentscreate-mail-attachment-upload-sessioncreate-reply-draftcreate-reply-all-draftforward-mail-messagereply-mail-messagereply-all-mail-messageupload-my-profile-photolist-todo-linked-resourcescreate-todo-linked-resourcelist-subscriptionscreate-subscriptionget-subscriptionparse-teams-urldownload-bytes

    tool declares exec permission

    get-subscriptionupdate-subscriptiondelete-subscriptionreauthorize-subscription

    Fix: Tool requests broad permissions (exec/fs/network). Validate input parameters using Enums where possible, and restrict file system operations to explicit allowed directories.

  • MediumAS-002

    ⚠️Excessive Permissions ×123

    tool declares fs permission

    remove-accountget-drive-itemmove-rename-onedrive-itemdelete-onedrive-filelist-folder-filescreate-onedrive-folderupload-file-contentcopy-drive-itemcreate-drive-item-share-linkcreate-upload-sessionshare-drive-itemlist-drive-item-permissionsdelete-drive-item-permissioncreate-drive-item-previewlist-drive-item-thumbnailslist-drive-item-versionsupdate-excel-table-rowdelete-excel-table-rowcreate-excel-chartupdate-excel-rangedelete-excel-rangecreate-excel-tableget-drive-root-itemsearch-onedrive-filescreate-my-calendar-permissionupdate-my-calendar-permissiondelete-my-calendar-permissioncreate-calendarupdate-calendardelete-calendarcreate-specific-calendar-eventupdate-specific-calendar-eventdelete-specific-calendar-eventlist-contact-folderscreate-contact-folderupdate-contact-folderdelete-contact-folderlist-contact-folder-child-folderscreate-contact-child-folderlist-contact-folder-contactscreate-contact-in-folderlist-outlook-contactscreate-outlook-contactget-outlook-contactupdate-outlook-contactdelete-outlook-contactcreate-calendar-eventupdate-calendar-eventdelete-calendar-eventcancel-calendar-eventcreate-focused-inbox-overrideupdate-focused-inbox-overridedelete-focused-inbox-overrideupdate-mailbox-settingslist-mail-folderscreate-mail-folderupdate-mail-folderdelete-mail-folderlist-mail-child-folderscreate-mail-child-folderlist-mail-rulescreate-mail-ruleupdate-mail-ruledelete-mail-rulelist-mail-folder-messageslist-mail-folder-messages-deltacreate-draft-emailupdate-mail-messagedelete-mail-messagelist-mail-attachmentsadd-mail-attachmentdelete-mail-attachmentcreate-mail-attachment-upload-sessioncopy-mail-messagecreate-forward-draftcreate-reply-draftcreate-reply-all-draftforward-mail-messagemove-mail-messagereply-mail-messagereply-all-mail-messagesend-draft-messagecreate-onenote-notebookcreate-onenote-sectioncreate-onenote-pagedelete-onenote-pagelist-onenote-section-groupscreate-onenote-section-pagecreate-outlook-categoryupload-my-profile-photosend-mailcreate-todo-task-listupdate-todo-task-listdelete-todo-task-listcreate-todo-taskupdate-todo-taskdelete-todo-taskcreate-todo-linked-resourcedelete-todo-linked-resourcecreate-planner-bucketupdate-planner-bucketdelete-planner-bucketcreate-planner-taskupdate-planner-taskupdate-planner-task-detailscreate-subscriptionupdate-subscriptiondelete-subscriptiondownload-bytes

    tool declares db permission

    search-onedrive-filesget-current-userget-specific-calendar-viewlist-calendar-event-instancesget-calendar-viewlist-calendar-view-deltalist-contact-folderslist-contact-folder-contactslist-mail-folderslist-mail-child-folderslist-mail-folder-messageslist-mail-folder-messages-deltalist-mail-messagescreate-onenote-page

    Fix: Tool requests broad permissions (exec/fs/network). Validate input parameters using Enums where possible, and restrict file system operations to explicit allowed directories.

  • LowAS-002

    ⚠️Excessive Permissions ×215

    tool declares http permission

    graph-batchget-drive-itemmove-rename-onedrive-itemdelete-onedrive-filelist-folder-filescreate-onedrive-folderupload-file-contentcopy-drive-itemcreate-drive-item-share-linkcreate-upload-sessionget-drive-deltashare-drive-itemlist-drive-item-permissionsdelete-drive-item-permissioncreate-drive-item-previewlist-drive-item-thumbnailslist-drive-item-versionslist-excel-tablesget-excel-tablelist-excel-table-rowsadd-excel-table-rowsupdate-excel-table-rowdelete-excel-table-rowlist-excel-worksheetscreate-excel-chartsort-excel-rangeget-excel-rangeupdate-excel-rangeclear-excel-rangedelete-excel-rangeformat-excel-rangeinsert-excel-rangemerge-excel-rangeunmerge-excel-rangecreate-excel-tableget-excel-used-rangeget-drive-root-itemsearch-onedrive-filesget-current-userlist-my-calendar-permissionscreate-my-calendar-permissionupdate-my-calendar-permissiondelete-my-calendar-permissionlist-calendarscreate-calendarupdate-calendardelete-calendarget-specific-calendar-viewlist-specific-calendar-eventscreate-specific-calendar-eventget-specific-calendar-eventupdate-specific-calendar-eventdelete-specific-calendar-eventlist-calendar-event-instancesget-calendar-viewlist-calendar-view-deltalist-contact-folderscreate-contact-folderupdate-contact-folderdelete-contact-folderlist-contact-folder-child-folderscreate-contact-child-folderlist-contact-folder-contactscreate-contact-in-folderlist-outlook-contactscreate-outlook-contactget-outlook-contactupdate-outlook-contactdelete-outlook-contactlist-driveslist-calendar-eventscreate-calendar-eventget-calendar-eventupdate-calendar-eventdelete-calendar-eventaccept-calendar-eventcancel-calendar-eventdecline-calendar-eventdismiss-calendar-event-reminderforward-calendar-eventsnooze-calendar-event-remindertentatively-accept-calendar-eventlist-calendar-events-deltaget-mail-tipslist-focused-inbox-overridescreate-focused-inbox-overrideupdate-focused-inbox-overridedelete-focused-inbox-overrideget-mailbox-settingsupdate-mailbox-settingslist-mail-folderscreate-mail-folderupdate-mail-folderdelete-mail-folderlist-mail-child-folderscreate-mail-child-folderlist-mail-rulescreate-mail-ruleupdate-mail-ruledelete-mail-rulelist-mail-folder-messageslist-mail-folder-messages-deltalist-mail-messagescreate-draft-emailget-mail-messageupdate-mail-messagedelete-mail-messageget-mail-message-mimelist-mail-attachmentsadd-mail-attachmentdelete-mail-attachmentcreate-mail-attachment-upload-sessioncopy-mail-messagecreate-forward-draftcreate-reply-draftcreate-reply-all-draftforward-mail-messagemove-mail-messagereply-mail-messagereply-all-mail-messagesend-draft-messagelist-onenote-notebookscreate-onenote-notebooklist-onenote-notebook-sectionscreate-onenote-sectionlist-onenote-pagescreate-onenote-pagedelete-onenote-pageget-onenote-page-contentlist-onenote-section-groupslist-all-onenote-sectionslist-onenote-section-pagescreate-onenote-section-pagelist-outlook-categoriescreate-outlook-categorylist-supported-languageslist-supported-time-zonesupload-my-profile-photolist-planner-taskssend-maillist-todo-task-listscreate-todo-task-listupdate-todo-task-listdelete-todo-task-listlist-todo-taskscreate-todo-taskget-todo-taskupdate-todo-taskdelete-todo-tasklist-todo-linked-resourcescreate-todo-linked-resourcedelete-todo-linked-resourcecreate-planner-bucketget-planner-bucketupdate-planner-bucketdelete-planner-bucketget-planner-planlist-plan-bucketslist-plan-taskscreate-planner-taskget-planner-taskupdate-planner-taskget-planner-task-detailsupdate-planner-task-detailslist-subscriptionscreate-subscriptionget-subscriptionupdate-subscriptiondelete-subscriptionreauthorize-subscription

    input schema exposes 13 properties (threshold: 10)

    list-folder-filesget-drive-deltalist-drive-item-permissionslist-drive-item-thumbnailslist-drive-item-versionslist-excel-tableslist-excel-worksheetssearch-onedrive-fileslist-calendar-view-deltalist-calendar-eventslist-calendar-events-deltalist-mail-child-folderslist-mail-folder-messages-deltalist-todo-linked-resources

    input schema exposes 14 properties (threshold: 10)

    list-excel-table-rowslist-specific-calendar-events

    input schema exposes 11 properties (threshold: 10)

    list-my-calendar-permissionslist-calendarslist-contact-folderslist-outlook-contactslist-driveslist-focused-inbox-overrideslist-onenote-notebookslist-onenote-pageslist-onenote-section-groupslist-all-onenote-sectionslist-outlook-categorieslist-planner-taskslist-todo-task-listslist-subscriptions

    input schema exposes 16 properties (threshold: 10)

    get-specific-calendar-view

    input schema exposes 17 properties (threshold: 10)

    list-calendar-event-instances

    input schema exposes 15 properties (threshold: 10)

    get-calendar-view

    input schema exposes 12 properties (threshold: 10)

    list-contact-folder-child-folderslist-contact-folder-contactslist-mail-folderslist-mail-ruleslist-mail-folder-messageslist-mail-messageslist-mail-attachmentslist-onenote-notebook-sectionslist-onenote-section-pageslist-todo-taskslist-plan-bucketslist-plan-tasks

    Fix: Tool requests broad permissions (exec/fs/network). Validate input parameters using Enums where possible, and restrict file system operations to explicit allowed directories.

  • LowAS-011

    ℹ️Missing Rate-Limit / Timeout ×172

    tool performs network or execution operations but declares no rate-limit, timeout, or retry configuration

    graph-batchget-drive-itemmove-rename-onedrive-itemdelete-onedrive-filelist-folder-filescreate-onedrive-folderupload-file-contentcopy-drive-itemcreate-drive-item-share-linkcreate-upload-sessionget-drive-deltashare-drive-itemlist-drive-item-permissionsdelete-drive-item-permissioncreate-drive-item-previewlist-drive-item-thumbnailslist-drive-item-versionslist-excel-tablesget-excel-tablelist-excel-table-rowsadd-excel-table-rowsupdate-excel-table-rowdelete-excel-table-rowlist-excel-worksheetscreate-excel-chartsort-excel-rangeget-excel-rangeupdate-excel-rangeclear-excel-rangedelete-excel-rangeformat-excel-rangeinsert-excel-rangemerge-excel-rangeunmerge-excel-rangecreate-excel-tableget-excel-used-rangeget-drive-root-itemsearch-onedrive-filesget-current-userlist-my-calendar-permissionscreate-my-calendar-permissionupdate-my-calendar-permissiondelete-my-calendar-permissionlist-calendarscreate-calendarupdate-calendardelete-calendarget-specific-calendar-viewlist-specific-calendar-eventscreate-specific-calendar-eventget-specific-calendar-eventupdate-specific-calendar-eventdelete-specific-calendar-eventlist-calendar-event-instancesget-calendar-viewlist-calendar-view-deltalist-contact-folderscreate-contact-folderupdate-contact-folderdelete-contact-folderlist-contact-folder-child-folderscreate-contact-child-folderlist-contact-folder-contactscreate-contact-in-folderlist-outlook-contactscreate-outlook-contactget-outlook-contactupdate-outlook-contactdelete-outlook-contactlist-driveslist-calendar-eventscreate-calendar-eventget-calendar-eventupdate-calendar-eventdelete-calendar-eventaccept-calendar-eventcancel-calendar-eventdecline-calendar-eventdismiss-calendar-event-reminderforward-calendar-eventsnooze-calendar-event-remindertentatively-accept-calendar-eventlist-calendar-events-deltaget-mail-tipslist-focused-inbox-overridescreate-focused-inbox-overrideupdate-focused-inbox-overridedelete-focused-inbox-overrideget-mailbox-settingsupdate-mailbox-settingslist-mail-folderscreate-mail-folderupdate-mail-folderdelete-mail-folderlist-mail-child-folderscreate-mail-child-folderlist-mail-rulescreate-mail-ruleupdate-mail-ruledelete-mail-rulelist-mail-folder-messageslist-mail-folder-messages-deltalist-mail-messagescreate-draft-emailget-mail-messageupdate-mail-messagedelete-mail-messageget-mail-message-mimelist-mail-attachmentsadd-mail-attachmentdelete-mail-attachmentcreate-mail-attachment-upload-sessioncopy-mail-messagecreate-forward-draftcreate-reply-draftcreate-reply-all-draftforward-mail-messagemove-mail-messagereply-mail-messagereply-all-mail-messagesend-draft-messagelist-onenote-notebookscreate-onenote-notebooklist-onenote-notebook-sectionscreate-onenote-sectionlist-onenote-pagescreate-onenote-pagedelete-onenote-pageget-onenote-page-contentlist-onenote-section-groupslist-all-onenote-sectionslist-onenote-section-pagescreate-onenote-section-pagelist-outlook-categoriescreate-outlook-categorylist-supported-languageslist-supported-time-zonesupload-my-profile-photolist-planner-taskssend-maillist-todo-task-listscreate-todo-task-listupdate-todo-task-listdelete-todo-task-listlist-todo-taskscreate-todo-taskget-todo-taskupdate-todo-taskdelete-todo-tasklist-todo-linked-resourcescreate-todo-linked-resourcedelete-todo-linked-resourcecreate-planner-bucketget-planner-bucketupdate-planner-bucketdelete-planner-bucketget-planner-planlist-plan-bucketslist-plan-taskscreate-planner-taskget-planner-taskupdate-planner-taskget-planner-task-detailsupdate-planner-task-detailslist-subscriptionscreate-subscriptionget-subscriptionupdate-subscriptiondelete-subscriptionreauthorize-subscriptionparse-teams-urldownload-bytes

    Fix: Declare explicit rate-limit, timeout, and retry configuration for all network and execution tools. Implement exponential back-off and surface resource state to the calling agent.

Scan this tool yourself

Reproduce this audit locally, integrate into CI, or let your agent audit its own tools.

Install once, then scan any MCP server:

$ curl -sfL https://raw.githubusercontent.com/AgentSafe-AI/tooltrust-scanner/main/install.sh | bash
$ tooltrust-scanner scan --server "npx -y ms-365-mcp-server"

Adjust the package name if your npm registry name differs from the tool ID. View source

Add badge to your README

Copy this Markdown to show your ToolTrust grade on GitHub.

[![ToolTrust Grade D](https://raw.githubusercontent.com/AgentSafe-AI/tooltrust-directory/main/docs/badges/grade-d.svg)](https://github.com/AgentSafe-AI/tooltrust-directory)