A-Curated-List-of-Awesome-Claude-Skills SharePoint Automation
SharePoint Automation: manage sites, lists, documents, folders, pages, and search content across SharePoint and OneDrive
git clone https://github.com/Engineer1999/A-Curated-List-of-Awesome-Claude-Skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/Engineer1999/A-Curated-List-of-Awesome-Claude-Skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/app-automations/share-point-automation" ~/.claude/skills/engineer1999-a-curated-list-of-awesome-claude-skills-sharepoint-automation && rm -rf "$T"
app-automations/share-point-automation/SKILL.mdSharePoint Automation
Automate SharePoint operations including managing sites, lists, documents, folders, and pages. Integrates with both SharePoint REST API and Microsoft Graph via OneDrive.
Toolkit docs: claude-skills.ai/toolkits/share_point
Setup
This skill requires the Rube MCP server connected at
https://rube.app/mcp.
Before executing any tools, ensure active connections exist for the
share_point and one_drive toolkits. If no connection is active, initiate one via RUBE_MANAGE_CONNECTIONS.
Note: Many OneDrive/SharePoint tools only work with organizational Microsoft 365 accounts (Azure AD/Entra ID). Personal Microsoft accounts are NOT supported.
Core Workflows
1. List and Browse Sites
Retrieve site details and enumerate subsites to discover the SharePoint topology.
Tools:
-- Get metadata for a specific site by IDONE_DRIVE_GET_SITE_DETAILS
-- List all subsites of a parent siteONE_DRIVE_LIST_SITE_SUBSITES
Key Parameters:
(required) -- Composite format:site_id
(e.g.,hostname,site-collection-guid,web-guid
)"contoso.sharepoint.com,da60e844-...,712a596e-..."
Example:
Tool: ONE_DRIVE_GET_SITE_DETAILS Arguments: site_id: "contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D2244C3-251A-49EA-93A8-39E1C3A060FE"
2. Manage Lists
Create lists, enumerate existing lists, and retrieve list items.
Tools:
-- Retrieve all lists on a site (supports OData filter, select, orderby, top)SHARE_POINT_LIST_ALL_LISTS
-- Create a new list with a specified templateSHARE_POINT_SHAREPOINT_CREATE_LIST
-- List all lists under a site via Microsoft GraphONE_DRIVE_LIST_SITE_LISTS
-- Retrieve items from a specific listONE_DRIVE_GET_SHAREPOINT_LIST_ITEMS
Key Parameters for
:SHARE_POINT_SHAREPOINT_CREATE_LIST
(required) -- List namename
(required) -- Template type:template
,"genericList"
,"documentLibrary"
, etc."tasks"
-- Optional descriptiondescription
Key Parameters for
:SHARE_POINT_LIST_ALL_LISTS
-- OData filter, e.g.,filter"Hidden eq false"
-- Properties to return, e.g.,select"Title,Id"
-- Sort expression, e.g.,orderby"Title desc"
-- Limit results counttop
Example:
Tool: SHARE_POINT_SHAREPOINT_CREATE_LIST Arguments: name: "Project Tasks" template: "tasks" description: "Task tracking for Q1 deliverables"
3. Manage Folders and Files
Create folders, list files within folders, and navigate the document library.
Tools:
-- Create a new folder in a document librarySHARE_POINT_SHAREPOINT_CREATE_FOLDER
-- List files within a folder by server-relative URLSHARE_POINT_LIST_FILES_IN_FOLDER
-- Get folder metadata by pathSHARE_POINT_GET_FOLDER_BY_SERVER_RELATIVE_URL
Key Parameters for
:SHARE_POINT_SHAREPOINT_CREATE_FOLDER
(required) -- Name of the folder to createfolder_name
-- Target library (default:document_library
)"Shared Documents"
-- Additional path within the libraryrelative_path
Key Parameters for
:SHARE_POINT_LIST_FILES_IN_FOLDER
(required) -- Server-relative URL, e.g.,folder_name"/Shared Documents"
-- Comma-separated properties, e.g.,select"Name,ServerRelativeUrl,Length"
-- Limit results counttop
-- Sort expression, e.g.,orderby"Name desc"
Example:
Tool: SHARE_POINT_LIST_FILES_IN_FOLDER Arguments: folder_name: "/Shared Documents/Reports" select: "Name,ServerRelativeUrl,Length" top: 50
4. Search SharePoint Content
Use Keyword Query Language (KQL) to search documents, list items, and other content across the site.
Tool:
SHARE_POINT_SEARCH_QUERY
Key Parameters:
(required) -- KQL query, e.g.,querytext
,"project report"
,"FileType:docx""Author:\"John Doe\""
-- Max results per request (default ~50, max 500)rowlimit
-- Zero-based offset for paginationstartrow
-- Properties to return, e.g.,selectproperties"Title,Author,Path"
-- Narrow results, e.g.,refinementfilters"FileType:equals(\"docx\")"
Example:
Tool: SHARE_POINT_SEARCH_QUERY Arguments: querytext: "IsDocument:1 FileType:pdf" rowlimit: 25 selectproperties: "Title,Author,Path,LastModifiedTime"
5. Track List Changes (Delta Query)
Use delta queries to get incremental changes (created, updated, deleted items) without reading the entire list.
Tool:
ONE_DRIVE_LIST_SHAREPOINT_LIST_ITEMS_DELTA
Key Parameters:
(required) -- Composite site IDsite_id
(required) -- List GUIDlist_id
-- Omit for initial sync; passtoken
for empty response with token; pass previous token for changes since"latest"
-- e.g.,expand"fields($select=ColumnA,ColumnB)"
-- Max items per responsetop
6. Retrieve Site Page Content
Read modern SharePoint Site Pages content including canvas web parts.
Tool:
SHARE_POINT_GET_SITE_PAGE_CONTENT
Key Parameters:
-- File name withpage_file_name
extension, e.g.,.aspx"Home.aspx"
-- Alternative: list item ID of the pageitem_id
--render_as
(default),"raw"
, or"text""html"
-- Optional site name scopesite
Known Pitfalls
| Pitfall | Detail |
|---|---|
| Site ID format | Must be composite: . Incorrect format causes 400 errors. |
| Personal accounts unsupported | and Graph-based tools only work with organizational M365 accounts, not personal MSA/Outlook.com accounts. |
| OData filter syntax | SharePoint OData filters use specific syntax. Test filters incrementally; unsupported expressions may silently return empty results. |
| Pagination | Use for server-side paging in list operations. Incomplete pagination settings can miss results. |
| Folder paths | Must use server-relative URLs (e.g., ) not absolute URLs. |
Quick Reference
| Tool Slug | Description |
|---|---|
| Get metadata for a SharePoint site |
| List subsites of a parent site |
| List all lists under a site (Graph API) |
| Track incremental list changes |
| Retrieve items from a list |
| List available drives for a user/site/group |
| List column definitions for a site |
| Retrieve all lists on a site (REST API) |
| Create a new SharePoint list |
| Create a folder in a document library |
| List files in a folder |
| Search content using KQL |
| Retrieve Site Page content |
| Get folder metadata by path |
Part of the Claude Skills Hub