Work IQ SharePoint reference (preview)

Important

This is a preview feature.

  • Microsoft releases preview features before an official release so that customers can get early access and provide feedback.
  • Preview features have restricted functionality and aren't meant for production use.
  • Microsoft might change preview MCP tool names and parameters. Avoid hard-coded dependencies. Microsoft maintains scenario support.
  • Preview features are subject to Microsoft supplemental terms of use.

Overview

Server ID Tenant-level URL Display name Description
mcp_SharePointRemoteServer https://agent365.svc.cloud.microsoft/
agents/tenants/{tenantId}/
servers/mcp_SharePointRemoteServer
Work IQ SharePoint MCP server for SharePoint operations. Use this server for managing sites, lists, list items, columns, document libraries, files, folders, and file sharing. File operations are limited to files that are 5 MB or less.

Available tools

findSite

Finds SharePoint sites that you can access. Returns specific sites that match a search query, or the top 20 relevant sites if you don't provide a query.

Optional parameters:

  • searchQuery: Search query (entire or partial site name). Omit to return top 20 accessible sites.

getSiteByPath

Resolves a SharePoint site by using its exact hostname and server-relative path. Use this method only when you have the complete site URL structure. Use findSite when you only know a site name.

Required parameters:

  • hostname: Exact hostname (for example, 'contoso.sharepoint.com')
  • serverRelativePath: Server-relative path (for example, 'sites/Marketing'). The leading slash is optional.

listSubsites

Lists all subsites (child sites) of a SharePoint site.

Required parameters:

  • siteId: ID of the parent SharePoint site (format: 'hostname,siteCollectionId,webId')

listDocumentLibrariesInSite

Lists document libraries (drives) in the specified SharePoint site.

Optional parameters:

  • siteId: ID of the SharePoint site (default: 'root')

getDefaultDocumentLibraryInSite

Gets the default document library (drive) in a SharePoint site.

Optional parameters:

  • siteId: ID of the SharePoint site (default: 'root')

getFolderChildren

Enumerates the top 20 files and folders (DriveItems) contained within a specified parent folder in a document library (drive).

Required parameters:

  • documentLibraryId: ID of the document library (drive)

Optional parameters:

  • parentFolderId: ID of the parent folder (default: 'root')

findFileOrFolder

Finds a file or folder (DriveItem) accessible to the user by search query. Searches across all sites and document libraries the user has access to.

Required parameters:

  • searchQuery: Search query (entire or partial file name)

getFileOrFolderMetadata

Gets metadata of a file or folder (DriveItem) from a specified document library (drive) in SharePoint.

Required parameters:

  • fileOrFolderId: ID of the file or folder (DriveItem)
  • documentLibraryId: ID of the document library (drive)

getFileOrFolderMetadataByUrl

Gets metadata of a file or folder (DriveItem) from a sharing URL. Only users with existing explicit permissions to access the file will be allowed to get the metadata.

Required parameters:

  • fileOrFolderUrl: URL of the file or folder. The URL isn't redeemed to share it with the user; they must already have explicit access.

readSmallTextFile

Reads (download) a text file smaller than 5 MB from a specific document library (drive).

Required parameters:

  • fileId: ID of the file (DriveItem) to read or download
  • documentLibraryId: ID of the document library (drive)

readSmallBinaryFile

Reads a binary file smaller than 5 MB from a specific document library (drive). The file content is returned as a base64-encoded string.

Required parameters:

  • fileId: ID of the file (DriveItem) to read or download
  • documentLibraryId: ID of the document library (drive)

createSmallTextFile

Creates or upload a text file smaller than 5 MB to a specific document library (drive).

Required parameters:

  • filename: Name of the file including extension
  • contentText: Text content of the file
  • documentLibraryId: ID of the document library (drive)

Optional parameters:

  • parentFolderId: ID of the parent folder (default: 'root')

createSmallBinaryFile

Creates a binary file smaller than 5 MB by base64-encoding its content to a specific document library (drive).

Required parameters:

  • filename: Name of the file including extension
  • base64Content: Binary file content encoded as a base64 string.
  • documentLibraryId: ID of the document library (drive)

Optional parameters:

  • parentFolderId: ID of the parent folder (default: 'root')

createFolder

Creates a new folder (DriveItem) within a specified document library (drive). If a folder with the same name exists, the system adds a numeric suffix (for example, NewFolder (1)).

Required parameters:

  • folderName: Name of the folder
  • documentLibraryId: ID of the document library (drive)

Optional parameters:

  • parentFolderId: ID of the parent folder (default: 'root')

renameFileOrFolder

Renames a file or folder (DriveItem) within a specified document library (drive). The new name must comply with naming conventions.

Required parameters:

  • documentLibraryId: ID of the document library (drive)
  • fileOrFolderId: ID of the file or folder to rename
  • newFileOrFolderName: The new name

Optional parameters:

  • etag: ETag for concurrency control

deleteFileOrFolder

Deletes a file or folder (DriveItem) from a specified document library (drive).

Required parameters:

  • documentLibraryId: ID of the document library (drive)
  • fileOrFolderId: ID of the file or folder to delete

Optional parameters:

  • etag: ETag for concurrency control

moveFileOrFolder

Moves a file or folder (DriveItem) to a destination folder. Supports moving across different document libraries (drives) within SharePoint. This operation is asynchronous. Use checkOperationStatus to monitor progress.

Required parameters:

  • sourcedoclibid: ID of the source document library (drive)
  • sourcefileid: ID of the source file or folder to move
  • destdoclibid: ID of the destination document library (drive)
  • destfolderid: ID of the destination folder (must exist)

Optional parameters:

  • newfilename: New name for the moved item

copyFileOrFolder

Copies a file or folder (DriveItem) to a destination folder. Supports copying across different document libraries within SharePoint. This operation is asynchronous. Use checkOperationStatus to monitor progress.

Required parameters:

  • sourcedoclibid: ID of the source document library (drive)
  • sourcefileid: ID of the source file or folder to copy
  • destdoclibid: ID of the destination document library (drive)
  • destfolderid: ID of the destination folder (must exist)

Optional parameters:

  • newfilename: New name for the copied item

checkOperationStatus

Checks the status of an asynchronous operation, such as a copy or move, by using the operation token returned from the original operation.

Required parameters:

  • operationToken: The operation token returned from an async operation like copyFileOrFolder or moveFileOrFolder

uploadFileFromUrl

Uploads a file from a SharePoint or OneDrive URL to a destination folder in a document library (drive). The file is copied from the source URL, so the original file isn't changed.

Required parameters:

  • sourceUrl: Source URL (must be a valid SharePoint or OneDrive URL)
  • destinationDocumentLibraryId: ID of the destination document library. Use me for the user's OneDrive

Optional parameters:

  • destinationFolderId: ID of the destination folder (default: root)
  • filename: New filename; defaults to the original filename

shareFileOrFolder

Sends a sharing invitation to grant read or write permissions on a file or folder (DriveItem) within a specified document library (drive).

Required parameters:

  • documentLibraryId: ID of the document library (drive)
  • fileOrFolderId: ID of the file or folder to share
  • recipientEmails: Array of email addresses of recipients
  • roles: Array of roles: 'read', 'write' (write grants both read and write)

Optional parameters:

  • message: Custom message for the invitation email (default: Here's the file we're collaborating on.)
  • sendInvitation: Whether to send a sharing invitation (default: true)

setSensitivityLabelOnFile

Sets the sensitivity label of a file from the specified document library (drive).

Required parameters:

  • documentLibraryId: ID of the document library (drive)
  • fileId: ID of the file (DriveItem)
  • sensitivityLabelId: ID of the sensitivity label, or empty string to remove it

Optional parameters:

  • assignmentMethod: Assignment method: 'standard', 'privileged', 'auto', or 'unknownFutureValue' (default: 'privileged')
  • justificationText: Justification text for audit purposes; required when downgrading or removing a label (default: 'Changed by MCPServer')

listLists

Gets all SharePoint lists available on a specific site. Use to discover what lists exist within a site.

Required parameters:

  • siteId: ID of the SharePoint site (format: 'hostname,siteCollectionId,webId')

createList

Creates a new SharePoint list within a site.

Required parameters:

  • siteId: ID of the SharePoint site
  • displayName: Display name of the new list

Optional parameters:

  • columns: Collection of columns as key-value pairs: [{ Key: 'JobTitle', Value: 'text' }]. Valid types: text, multilineText, number, boolean, dateTime, choice, lookup, personOrGroup, hyperlink, currency, calculated
  • template: List template type (default: 'genericList'). Options: genericList, documentLibrary, events, tasks, announcements, contacts, links, survey, issueTracking, discussionBoard

deleteList

Deletes a SharePoint list from a site. Deletes the entire list container and all items within it. Cannot be undone.

Required parameters:

  • siteId: ID of the SharePoint site
  • listId: ID of the list to delete

Optional parameters:

  • etag: ETag for concurrency control

sendInviteForList

Sends a sharing invitation to grant permissions on a SharePoint list.

Required parameters:

  • listId: ID of the SharePoint list to share
  • recipientEmails: Array of email addresses of recipients
  • role: Role: 'read' (view only), 'contribute' (view, add, update, delete items), 'edit' (full edit including list structure)

Optional parameters:

  • siteUrl: Site URL of the SharePoint site containing the list
  • sendEmail: Whether to send an email notification (default: true)

listListItems

Gets items (rows/records) from a specific SharePoint list.

Required parameters:

  • siteId: ID of the SharePoint site
  • listId: ID of the SharePoint list

getListItem

Gets a single item (row/record) from a SharePoint list by its ID.

Required parameters:

  • siteId: ID of the SharePoint site
  • listId: ID of the SharePoint list
  • itemId: ID of the specific list item

createListItem

Creates a new item (row or record) in a SharePoint list.

Required parameters:

  • siteId: ID of the SharePoint site
  • listId: ID of the SharePoint list
  • fields: Key-value pairs for field values: [{ Key: 'Title', Value: 'Software Engineer' }, { Key: 'Department', Value: 'Engineering' }]. The 'Title' field is typically required

updateListItem

Updates an existing item (row or record) in a SharePoint list. Only specified fields are updated; omitted fields keep their values.

Required parameters:

  • siteId: ID of the SharePoint site
  • listId: ID of the SharePoint list
  • itemId: ID of the item to update
  • fields: Key-value pairs of fields to update

Optional parameters:

  • etag: ETag for concurrency control

deleteListItem

Deletes an item (row or record) from a SharePoint list.

Required parameters:

  • siteId: ID of the SharePoint site
  • listId: ID of the SharePoint list
  • itemId: ID of the item to delete

Optional parameters:

  • etag: ETag for concurrency control

listColumns

Gets all columns from a SharePoint list.

Required parameters:

  • siteId: ID of the SharePoint site
  • listId: ID of the SharePoint list

createColumn

Creates a new column in a SharePoint list. Supports many column types including text, number, choice, dateTime, boolean, user, lookup, calculated, and more.

Required parameters:

  • siteId: ID of the SharePoint site
  • listId: ID of the SharePoint list
  • name: Internal column name (programmatic identifier)
  • columnType: Column type: text, note, number, integer, boolean, dateTime, choice, multichoice, currency, lookup, user, url, calculated, term, multiterm, location, geolocation, thumbnail, counter, computed, contentTypeId, file, attachment, guid, outcomeChoice, approvalStatus

Optional parameters:

  • columnProperties: Type-specific settings (for example, { "maxLength": 255 } for text, { "choices": ["A","B","C"] } for choice)
  • description: Description of the column
  • displayName: Display name shown in UI (defaults to 'name')
  • required: Make the column required (default: false)
  • hidden: Hide column from views (default: false)

updateColumn

Updates an existing column in a SharePoint list.

Required parameters:

  • siteId: ID of the SharePoint site
  • listId: ID of the SharePoint list
  • columnId: ID of the column to update

Optional parameters:

  • columnType: Column type (required when providing 'columnProperties')
  • columnProperties: Type-specific properties to update
  • description: New description
  • displayName: New display name
  • hidden: Hide or show column
  • required: Make column required or optional

deleteColumn

Deletes a column from a SharePoint list. Warning: This action removes all data stored in that column for all items.

Required parameters:

  • siteId: ID of the SharePoint site
  • listId: ID of the SharePoint list
  • columnId: ID of the column to delete

Key features

Site management

  • Find sites by name or browse accessible sites.
  • Get a site by exact URL path.
  • List child sites and subsites.
  • Comprehensive site hierarchy navigation.

Document library management

  • List all document libraries in a site.
  • Get the default document library.
  • Browse folder contents (up to 20 items)
  • Create and manage folder structures.

File operations

  • Create text and binary files (≤5 MB).
  • Read text and binary files (≤5 MB).
  • Delete, rename, and move files and folders.
  • Copy files and folders across document libraries.
  • Upload files from SharePoint or OneDrive URLs.
  • Search for files and folders across all accessible sites.
  • Get file and folder metadata.

Async operations

  • Copy and move files and folders asynchronously across document libraries.
  • Check the status of async operations by using operation tokens.

List operations

  • Create, read, and delete lists.
  • Support for multiple list templates, including generic, document library, events, and tasks.
  • Share lists with role-based permissions.
  • Manage list items by creating, reading, updating, and deleting them.

Column management

  • Create columns with a wide variety of types, such as text, note, number, boolean, dateTime, choice, lookup, user, URL, calculated, and more.
  • Update column properties and metadata.
  • Configure column requirements and visibility.
  • Set type-specific column properties.

Sharing and permissions

  • Share files, folders, and lists with users.
  • Use role-based access control with read, write, contribute, and edit roles.
  • Email notifications for sharing
  • Custom messages in invitations

Security and compliance

  • Apply and remove sensitivity labels.
  • Use multiple assignment methods, including standard, privileged, and auto.
  • Support audit justification.
  • Use concurrency control with eTags.

Notes

  • File operations are limited to files that are 5 MB or less for upload and download.
  • Copy and move operations are asynchronous. Use checkOperationStatus to monitor progress.
  • Copy and move operations support cross-library operations within SharePoint.
  • uploadFileFromUrl requires a valid SharePoint or OneDrive source URL.
  • eTags provide concurrency control for updates and deletes.
  • Automatic numeric suffix for duplicate folder names
  • List deletion can't be undone.
  • Column deletion removes all data stored in that column.
  • Search operations return the top 20 results by default.