Skip to Content

Microsoft SharePoint

Microsoft SharePoint icon
Arcade Optimized

Arcade.dev LLM tools for Microsoft SharePoint

Author:Arcade
Version:0.7.0
Auth:User authorization via the Microsoft auth provider
28tools
PyPI VersionPython VersionsWheel StatusDownloadsLicense

Microsoft SharePoint toolkit for Arcade.dev exposes LLM-enabled access to SharePoint via Microsoft Graph. It enables programmatic management of sites, drives, lists, pages, files, and Office documents directly from prompts.

Capabilities

  • Manage and organize content and structure: CRUD for files, folders, drives, pages, lists, and site discovery/search.
  • Create and modify Office files and presentations, append slides/text, set/get speaker notes, and export documents/presentations as Markdown.
  • Handle sharing and link creation, monitor async operations, and perform resumable uploads for large files with move/copy workflows.
  • Query user context and enumerate resources for automation, indexing, and content extraction.

OAuth Provider: microsoft Scopes: Sites.Read.All, Sites.ReadWrite.All, User.Read

Available tools(28)

28 of 28
Tool nameDescriptionSecrets
Copy a file or folder. Returns a completed item or an operation id.
Create a new folder in a SharePoint drive.
Create a new PowerPoint presentation in a SharePoint drive. The presentation will be created with a title slide containing the specified title.
Create a share link for a SharePoint drive item.
Append a new slide to the end of an existing PowerPoint presentation in a SharePoint drive. The slide will be added at the end of the presentation. Both title and body are optional to support layouts like BLANK or TITLE_ONLY. For presentations larger than 4 MB, the upload uses a resumable session. Concurrency protection (etag check) is best-effort in that case, since Microsoft Graph upload sessions do not support If-Match headers.
Append a TWO_CONTENT slide with side-by-side content areas to the end of a SharePoint PowerPoint. This layout is useful for comparisons, pros/cons lists, or any content that benefits from a two-column layout. For presentations larger than 4 MB, the upload uses a resumable session. Concurrency protection (etag check) is best-effort in that case, since Microsoft Graph upload sessions do not support If-Match headers.
Create a new Word document in a SharePoint drive (4MB upload limit). Optionally include text content.
Delete a file or folder from a SharePoint drive.
Get all speaker notes from every slide in a SharePoint PowerPoint presentation. Returns notes for all slides in one call, which is more efficient than calling get_slide_notes for each slide individually. Notes are returned in markdown format.
Check status of an async copy operation using the full monitor URL.
Retrieve drives / document libraries from a SharePoint site. If you have a site name, it is not necessary to call Sharepoint.SearchSites first. You can simply call this tool with the site name / keywords.
Retrieve items from a list in a SharePoint site. Note: The Microsoft Graph API does not offer endpoints to retrieve list item attachments. Because of that, the only information we can get is whether the item has attachments or not.
Retrieve lists from a SharePoint site.
Retrieve metadata and the contents of a page in a SharePoint site. Page content is a list of Microsoft Sharepoint web part objects, such as text, images, banners, buttons, etc. If `include_page_content` is set to False, the tool will return only the page metadata.
Get the content of a PowerPoint presentation stored in a SharePoint drive as markdown. This tool downloads the presentation and converts it to a markdown representation, preserving text content, tables, and chart data. Images and other media are represented as placeholders.
Retrieve information about a specific SharePoint site by its ID, URL, or name.
Get the speaker notes from a specific slide in a SharePoint PowerPoint presentation. Speaker notes are returned in markdown format, preserving basic formatting like bold, italic, and bullet points.
Get a Word document's metadata and content from a SharePoint drive (supports only `.docx`). Returns the document content as Markdown by default, or just metadata when metadata_only is True.
Append text to the end of an existing Word document. This tool only supports files with the `.docx` extension and enforces the 4MB limit.
Retrieve items from a folder in a drive in a SharePoint site. Note: Due to how the Microsoft Graph API is designed, we have to retrieve all items, including the ones skipped by offset. For this reason, the tool execution time tends to increase with the offset value.
Retrieve pages from a SharePoint site. The Microsoft Graph API does not support pagination on this endpoint.
Retrieve items from the root of a drive in a SharePoint site. Note: Due to how the Microsoft Graph API is designed, we have to retrieve all items, including the ones skipped by offset. For this reason, the tool execution time tends to increase with the offset value.
List all SharePoint sites accessible to the current user.
Move a file or folder to a new location in a SharePoint drive.
Search for items in one or more Sharepoint drives. Note: when searching within a single Drive and/or Folder, due to how the Microsoft Graph API is designed, we have to retrieve all items, including the ones skipped by offset. For this reason, the tool execution time tends to increase with the offset value.
Page 1 of 2(25 of 28)

Selected tools

No tools selected.

Click "Show all tools" to add tools.

Requirements

Select tools to see requirements

#

Sharepoint.CopyItem

Copy a file or folder. Returns a completed item or an operation id.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the drive where the item lives.
item_idstringRequiredThe ID of the item to copy.
destination_folder_idstringOptionalOptional destination folder ID. If omitted, the item is copied to the same folder.
new_namestringOptionalOptional new name for the copied item.

Requirements

No secrets required

Output

Type:jsonCopy status and result.
#

Sharepoint.CreateFolder

Create a new folder in a SharePoint drive.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the drive where the folder will be created.
folder_namestringRequiredThe name of the new folder.
parent_folder_idstringOptionalOptional parent folder ID. If omitted, creates in the drive root.

Requirements

No secrets required

Output

Type:jsonThe created folder metadata.
#

Sharepoint.CreatePresentation

Create a new PowerPoint presentation in a SharePoint drive. The presentation will be created with a title slide containing the specified title.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the SharePoint drive to create the presentation in.
titlestringRequiredThe title for the new presentation.
folder_idstringOptionalThe ID of the folder to create the presentation in. If not provided, the presentation will be created in the root of the drive.

Requirements

No secrets required

Output

Type:jsonThe created presentation details.
#

Sharepoint.CreateSlide

Append a new slide to the end of an existing PowerPoint presentation in a SharePoint drive. The slide will be added at the end of the presentation. Both title and body are optional to support layouts like BLANK or TITLE_ONLY. For presentations larger than 4 MB, the upload uses a resumable session. Concurrency protection (etag check) is best-effort in that case, since Microsoft Graph upload sessions do not support If-Match headers.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the SharePoint drive containing the presentation.
item_idstringRequiredThe ID of the PowerPoint presentation to add a slide to.
slide_titlestringOptionalThe title for the new slide. Optional for layouts like BLANK.
slide_bodystringOptionalThe body content for the new slide. Supports markdown: **bold**, *italic*, __underline__, and bullet points (- item, indented with spaces for nesting). Optional for layouts like TITLE_ONLY or BLANK.
layoutstringOptionalThe layout to use for the slide. For TWO_CONTENT layout, use create_two_content_slide.
TITLETITLE_AND_CONTENTSECTION_HEADERTITLE_ONLYBLANKCONTENT_WITH_CAPTIONPICTURE_WITH_CAPTIONTITLE_AND_VERTICAL_TEXTVERTICAL_TITLE_AND_TEXT

Requirements

No secrets required

Output

Type:jsonThe updated presentation details with new slide info.
#

Sharepoint.CreateTwoContentSlide

Append a TWO_CONTENT slide with side-by-side content areas to the end of a SharePoint PowerPoint. This layout is useful for comparisons, pros/cons lists, or any content that benefits from a two-column layout. For presentations larger than 4 MB, the upload uses a resumable session. Concurrency protection (etag check) is best-effort in that case, since Microsoft Graph upload sessions do not support If-Match headers.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the SharePoint drive containing the presentation.
item_idstringRequiredThe ID of the PowerPoint presentation to add a slide to.
slide_titlestringOptionalThe title for the new slide.
left_bodystringOptionalContent for the left side of the slide. Supports markdown: **bold**, *italic*, __underline__, and bullet points (- item, indented with spaces for nesting).
right_bodystringOptionalContent for the right side of the slide. Supports markdown: **bold**, *italic*, __underline__, and bullet points (- item, indented with spaces for nesting).

Requirements

No secrets required

Output

Type:jsonThe updated presentation details with new slide info.
#

Sharepoint.CreateWordDocument

Create a new Word document in a SharePoint drive (4MB upload limit). Optionally include text content.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the SharePoint drive to create the document in.
titlestringRequiredFile name without extension, or with .docx. The .docx extension is normalized.
text_contentstringOptionalOptional text content to include in the new document. If omitted, an empty document is created.
folder_idstringOptionalOptional parent folder DriveItem ID. If omitted, the document is created in the root.
conflict_behaviorstringOptionalOptional conflict behavior when a file with the same name exists. One of: fail, rename, replace.

Requirements

No secrets required

Output

Type:jsonThe created Word document metadata.
#

Sharepoint.DeleteItem

Delete a file or folder from a SharePoint drive.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the drive where the item lives.
item_idstringRequiredThe ID of the file or folder to delete.

Requirements

No secrets required

Output

Type:jsonDeletion confirmation.
#

Sharepoint.GetAllSlideNotes

Get all speaker notes from every slide in a SharePoint PowerPoint presentation. Returns notes for all slides in one call, which is more efficient than calling get_slide_notes for each slide individually. Notes are returned in markdown format.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the SharePoint drive containing the presentation.
item_idstringRequiredThe ID of the PowerPoint presentation.

Requirements

No secrets required

Output

Type:jsonAll speaker notes from the presentation.
#

Sharepoint.GetCopyStatus

Check status of an async copy operation using the full monitor URL.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the drive where the copy operation runs.
operation_urlstringRequiredThe full monitor URL returned by copy_item (Location/Operation-Location header). DO NOT PROVIDE ONLY THE OPERATION ID, BUT THE FULL URL.

Requirements

No secrets required

Output

Type:jsonCopy operation status.
#

Sharepoint.GetDrivesFromSite

Retrieve drives / document libraries from a SharePoint site. If you have a site name, it is not necessary to call Sharepoint.SearchSites first. You can simply call this tool with the site name / keywords.

Parameters

ParameterTypeReq.Description
sitestringRequiredSite ID, SharePoint URL, or site name to get drives from. Prefer using a site ID whenever available for optimal performance.

Requirements

No secrets required

Output

Type:jsonThe drives from the SharePoint site.
#

Sharepoint.GetItemsFromList

Retrieve items from a list in a SharePoint site. Note: The Microsoft Graph API does not offer endpoints to retrieve list item attachments. Because of that, the only information we can get is whether the item has attachments or not.

Parameters

ParameterTypeReq.Description
sitestringRequiredSite ID, SharePoint URL, or site name to get lists from. Prefer using a site ID whenever available for optimal performance.
list_idstringRequiredThe ID of the list to get items from.

Requirements

No secrets required

Output

Type:jsonThe SharePoint list items.
#

Sharepoint.GetListsFromSite

Retrieve lists from a SharePoint site.

Parameters

ParameterTypeReq.Description
sitestringRequiredSite ID, SharePoint URL, or site name to get lists from. Prefer using a site ID whenever available for optimal performance.

Requirements

No secrets required

Output

Type:jsonThe SharePoint site lists.
#

Sharepoint.GetPage

Retrieve metadata and the contents of a page in a SharePoint site. Page content is a list of Microsoft Sharepoint web part objects, such as text, images, banners, buttons, etc. If `include_page_content` is set to False, the tool will return only the page metadata.

Parameters

ParameterTypeReq.Description
sitestringRequiredSite ID, SharePoint URL, or site name to retrieve base pages from. Prefer using a site ID whenever available for optimal performance
page_idstringRequiredThe ID of the page to retrieve.
include_page_contentbooleanOptionalWhether to include the page content in the response. Defaults to True. If set to False, the tool will return only the page metadata.

Requirements

No secrets required

Output

Type:jsonThe page from the SharePoint site.
#

Sharepoint.GetPresentationAsMarkdown

Get the content of a PowerPoint presentation stored in a SharePoint drive as markdown. This tool downloads the presentation and converts it to a markdown representation, preserving text content, tables, and chart data. Images and other media are represented as placeholders.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the SharePoint drive containing the presentation.
item_idstringRequiredThe ID of the PowerPoint presentation to read.

Requirements

No secrets required

Output

Type:jsonThe presentation content as markdown.
#

Sharepoint.GetSite

Retrieve information about a specific SharePoint site by its ID, URL, or name.

Parameters

ParameterTypeReq.Description
sitestringRequiredSite ID, SharePoint URL, or site name to search for.

Requirements

No secrets required

Output

Type:jsonThe SharePoint site information.
#

Sharepoint.GetSlideNotes

Get the speaker notes from a specific slide in a SharePoint PowerPoint presentation. Speaker notes are returned in markdown format, preserving basic formatting like bold, italic, and bullet points.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the SharePoint drive containing the presentation.
item_idstringRequiredThe ID of the PowerPoint presentation.
slide_indexintegerRequiredThe 1-based index of the slide to get notes from.

Requirements

No secrets required

Output

Type:jsonThe speaker notes for the specified slide.
#

Sharepoint.GetWordDocument

Get a Word document's metadata and content from a SharePoint drive (supports only `.docx`). Returns the document content as Markdown by default, or just metadata when metadata_only is True.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the SharePoint drive containing the document.
item_idstringRequiredThe DriveItem ID of the Word document.
metadata_onlybooleanOptionalIf True, return only the document metadata without downloading the content. Defaults to False.

Requirements

No secrets required

Output

Type:jsonThe Word document metadata and optionally its content.
#

Sharepoint.InsertTextAtEndOfWordDocument

Append text to the end of an existing Word document. This tool only supports files with the `.docx` extension and enforces the 4MB limit.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the SharePoint drive containing the document.
item_idstringRequiredThe DriveItem ID of the Word document.
text_contentstringRequiredThe text content to append to the document.

Requirements

No secrets required

Output

Type:jsonThe updated Word document metadata.
#

Sharepoint.ListItemsInFolder

Retrieve items from a folder in a drive in a SharePoint site. Note: Due to how the Microsoft Graph API is designed, we have to retrieve all items, including the ones skipped by offset. For this reason, the tool execution time tends to increase with the offset value.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the drive to get items from.
folder_idstringRequiredThe ID of the folder to get items from.
limitintegerOptionalThe number of items to get. Defaults to 100, max is 500.
offsetintegerOptionalThe number of items to skip.

Requirements

No secrets required

Output

Type:jsonThe items from the folder in the drive.
#

Sharepoint.ListPages

Retrieve pages from a SharePoint site. The Microsoft Graph API does not support pagination on this endpoint.

Parameters

ParameterTypeReq.Description
sitestringRequiredSite ID, SharePoint URL, or site name to retrieve base pages from. Prefer using a site ID whenever available for optimal performance.
limitintegerOptionalThe maximum number of pages to return. Defaults to 10, max is 200.

Requirements

No secrets required

Output

Type:jsonThe pages from the SharePoint site.
#

Sharepoint.ListRootItemsInDrive

Retrieve items from the root of a drive in a SharePoint site. Note: Due to how the Microsoft Graph API is designed, we have to retrieve all items, including the ones skipped by offset. For this reason, the tool execution time tends to increase with the offset value.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the drive to get items from.
limitintegerOptionalThe number of items to get. Defaults to 100, max is 500.
offsetintegerOptionalThe number of items to skip.

Requirements

No secrets required

Output

Type:jsonThe items from the root of a drive in a SharePoint site.
#

Sharepoint.ListSites

List all SharePoint sites accessible to the current user.

Parameters

ParameterTypeReq.Description
limitintegerOptionalThe maximum number of sites to return. Defaults to 10, max is 100.
offsetintegerOptionalThe offset to start from.

Requirements

No secrets required

Output

Type:jsonThe SharePoint sites matching the search criteria.
#

Sharepoint.MoveItem

Move a file or folder to a new location in a SharePoint drive.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the drive where the item lives.
item_idstringRequiredThe ID of the item to move.
new_parent_idstringRequiredThe ID of the destination folder.

Requirements

No secrets required

Output

Type:jsonThe updated item metadata.
#

Sharepoint.SearchDriveItems

Search for items in one or more Sharepoint drives. Note: when searching within a single Drive and/or Folder, due to how the Microsoft Graph API is designed, we have to retrieve all items, including the ones skipped by offset. For this reason, the tool execution time tends to increase with the offset value.

Parameters

ParameterTypeReq.Description
keywordsstringRequiredThe keywords to search for files in the drive.
drive_idstringOptionalOptionally, the ID of the drive to search items in. If not provided, the search will be performed in all drives.
folder_idstringOptionalOptionally narrow the search within a specific folder by its ID. If not provided, the search will be performed in the whole drive. If a folder_id is provided, it is required to provide a drive_id as well.
limitintegerOptionalThe number of files to get. Defaults to 50, max is 500.
offsetintegerOptionalThe number of files to skip.

Requirements

No secrets required

Output

Type:jsonThe items from the drive(s).
#

Sharepoint.SearchSites

Search for SharePoint sites by name or description. In case you need to retrieve a specific site by its name, ID or SharePoint URL, use the `Sharepoint.GetSite` tool instead, passing the ID, name or SharePoint URL to it. If you use the `Sharepoint.SearchSites` tool to retrieve a single site by its name, too much CO2 will be released in the atmosphere and you will contribute to catastrophic climate change.

Parameters

ParameterTypeReq.Description
keywordsstringRequiredThe search term to find sites by name or description.
limitintegerOptionalThe maximum number of sites to return. Defaults to 10, max is 100.
offsetintegerOptionalThe offset to start from.

Requirements

No secrets required

Output

Type:jsonThe SharePoint sites matching the search criteria.
#

Sharepoint.SetSlideNotes

Set or update the speaker notes on a specific slide in a SharePoint PowerPoint. Notes can be formatted using markdown: - **bold** for bold text - *italic* for italic text - __underline__ for underlined text - Lines starting with - or * become bullet points - Indent with spaces for nested bullets For presentations larger than 4 MB, the upload uses a resumable session. Concurrency protection (etag check) is best-effort in that case, since Microsoft Graph upload sessions do not support If-Match headers.

Parameters

ParameterTypeReq.Description
drive_idstringRequiredThe ID of the SharePoint drive containing the presentation.
item_idstringRequiredThe ID of the PowerPoint presentation.
slide_indexintegerRequiredThe 1-based index of the slide to set notes on.
notesstringRequiredThe speaker notes in markdown format. Supports **bold**, *italic*, __underline__, and bullet points (- or *).

Requirements

No secrets required

Output

Type:jsonConfirmation of the notes update.
#

Sharepoint.WhoAmI

Get information about the current user and their SharePoint environment.

Parameters

No parameters required.

Requirements

No secrets required

Output

Type:jsonGet comprehensive user profile and SharePoint environment information.
Last updated on