sharepoint_create_ list_ itemAdd a row to a list.
Pull the open items out of a team's task list, sum up the newest proposal in a document library, add a row for a new client, and draft a news post for the intranet.
PopMCPSharePoint
All of SharePoint in Microsoft Graph for a signed-in work or school account, from sites, lists, columns and content types to document libraries, pages, permissions and the term store, plus the list changes PopMCP can watch.
264 tools in the full catalog: 148 read and 116 write. 43 load by default, and the rest are found with tool search.
sharepoint_create_ list_ itemAdd a row to a list.
sharepoint_create_ list_ itemsAdd many rows to a list in one call, up to 100.
sharepoint_delete_ list_ itemDelete a row (it goes to the site's recycle bin).
sharepoint_get_ list_ itemRead one row with its column values under fields.
sharepoint_list_ item_ changesSee which rows changed since last time: the first call pages through all rows and ends with @odata.deltaLink (deltaCursor); keep it, and pass it as cursor next time to get only what changed.
sharepoint_list_ itemsRead rows of a list, with their column values under fields.
sharepoint_update_ list_ itemChange column values of a row.
sharepoint_create_ list_ columnAdd a column to a list.
sharepoint_get_ root_ siteGet the organization's home site (https://contoso.sharepoint.com): id, displayName, webUrl and the SharePoint host name.
sharepoint_get_ siteGet one site: id, displayName, description, webUrl, siteCollection hostname, created and modified dates.
sharepoint_list_ followed_ sitesList the sites the signed-in person follows (the star in SharePoint): a quick way to find the sites they use.
sharepoint_list_ list_ columnsList a list's columns: name (the internal name to use in fields and filters), displayName, and the type facet (text, choice with its choices, lookup...).
sharepoint_list_ subsitesList the subsites directly under a site (not the whole tree).
sharepoint_resolve_ urlWork out what a SharePoint link points to and get the ids every other tool takes.
sharepoint_search_ sitesFind SharePoint sites by keyword.
sharepoint_copy_ itemCopy a file or folder (with everything in it) into a folder, optionally under a new name.
sharepoint_create_ folderCreate a folder inside a folder.
sharepoint_delete_ itemDelete a file or folder (with everything in it).
sharepoint_ensure_ folderMake sure a folder path exists in a document library, creating each missing level: path /Clients/Acme/2026 gives that folder (with its id) whether it was there or not.
sharepoint_get_ itemOne file or folder's details: name, size, file type, folder childCount, created and modified (when and by whom), parentReference (folder and path), sharepointIds and webUrl.
sharepoint_list_ filesList the files and folders in a document library, going straight from a site.
sharepoint_move_ itemMove a file or folder into another folder of the same library, optionally renaming it.
sharepoint_update_ itemRename a file or folder, or move it to another folder in the same library.
sharepoint_create_ pageCreate a SharePoint page from a title and its content.
sharepoint_delete_ pageDelete a page (to the site's recycle bin).
sharepoint_get_ pageGet a modern page with its layout and web parts.
sharepoint_list_ pagesList a site's pages: id, name (home.aspx), title, webUrl, publishingState, modified date.
sharepoint_publish_ pagePublish a page so everyone who can open the site sees the latest version.
sharepoint_read_ pageRead a SharePoint page the way a person does: its title, words in reading order, and what other web parts it has (images, links, people...).
sharepoint_update_ pageChange a page: title, description, showComments, showRecommendedPages, thumbnailWebUrl, titleArea, canvasLayout.
sharepoint_create_ listCreate a list.
sharepoint_create_ sharing_ linkCreate a link to a file or folder that people can open.
sharepoint_describe_ listGet everything needed to work with a list in one call: its id and address, every visible column (name is the internal name to use in fields and filters, with displayName, type, choices, whether required, indexed), its content types and a few sample rows.
sharepoint_get_ listGet one list.
sharepoint_list_ listsList the lists and document libraries of a site: id, name, displayName, webUrl, list { template, hidden }.
sharepoint_list_ permissionsWho can open a file or folder: each permission's id, roles (read, write, owner), the people or group it was granted to, and sharing links (link.webUrl, type, scope).
sharepoint_share_ with_ peopleShare a file or folder with specific people by email: recipients ("ada@example.com, bob@example.com" or a list), roles read (default) or write, an optional message.
sharepoint_read_ fileRead a file's contents: plain text, CSV, JSON, Markdown, HTML and code as text; Word (.docx), PowerPoint (.pptx) and Excel (.xlsx) as their text; PNG, JPEG, GIF and WebP as the image.
sharepoint_upload_ fileCreate a file in a document library, or replace one, from text or base64 bytes.
sharepoint_list_ site_ librariesList a site's document libraries: each id is the driveId the file tools take, with name and webUrl.
sharepoint_list_ versionsA file's earlier versions, newest first: id, lastModifiedDateTime, lastModifiedBy, size.
sharepoint_search_ filesSearch one document library for files and folders whose name, content or metadata match the words in q.
sharepoint_searchSearch everything the signed-in person can read across SharePoint, ranked by Microsoft: files and their contents, list rows, and lists.
sharepoint_add_ column_ to_ content_ typeAdd a column to a site content type: pass "sourceColumn@odata.bind" with the site column's URL, or define a new one.
sharepoint_add_ column_ to_ list_ content_ typeAdd a column to a content type on a list.
sharepoint_add_ content_ type_ from_ hubAdd or sync a published content type from the organization's content type hub to this site.
sharepoint_add_ list_ content_ type_ from_ hubAdd or sync a content type from the hub to a list.
sharepoint_associate_ content_ type_ with_ hub_ sitesAssociate a published content type with hub sites.
sharepoint_copy_ content_ type_ to_ listAttach a site content type to a list: contentType is the site content type's URL.
sharepoint_copy_ content_ type_ to_ siteCopy a content type onto a site from another site: contentType is the source's full URL or id.
sharepoint_copy_ file_ to_ default_ content_ locationCopy a file to a content type's default content location (a template or a document set's default content).
sharepoint_create_ list_ content_ typeCreate a content type on a list directly.
sharepoint_create_ site_ content_ typeCreate a content type on a site.
sharepoint_delete_ list_ content_ typeRemove a content type from a list.
sharepoint_delete_ site_ content_ typeDelete a site content type.
sharepoint_get_ content_ type_ baseGet the content type this one inherits from.
sharepoint_get_ content_ type_ base_ typeGet one content type from the inheritance chain.
sharepoint_get_ content_ type_ columnGet one column of a site content type.
sharepoint_get_ content_ type_ column_ linkGet one column link of a content type.
sharepoint_get_ content_ type_ column_ positionGet one column by its position entry.
sharepoint_get_ list_ content_ typeGet one content type of a list.
sharepoint_get_ list_ content_ type_ columnGet one column of a content type on a list.
sharepoint_get_ site_ content_ typeGet one content type of a site.
sharepoint_is_ content_ type_ publishedWhether a content type is published to the hub.
sharepoint_list_ applicable_ content_ typesList the site content types that can be added to a list.
sharepoint_list_ content_ type_ base_ typesList the whole chain of content types this one inherits from.
sharepoint_list_ content_ type_ column_ linksList the column links of a content type (which site columns it includes).
sharepoint_list_ content_ type_ column_ positionsList a content type's columns in the order the form shows them.
sharepoint_list_ content_ type_ columnsList the columns of a site content type.
sharepoint_list_ hub_ content_ typesList content types from the organization's hub that can be added to this site.
sharepoint_list_ hub_ content_ types_ for_ listList content types from the hub that can be added to this list.
sharepoint_list_ list_ content_ type_ columnsList the columns of a content type on a list.
sharepoint_list_ list_ content_ typesList the content types attached to a list.
sharepoint_list_ site_ content_ typesList the content types of a site: id (0x...), name, description, group, parentId, hidden.
sharepoint_publish_ content_ typePublish a content type in a content type hub so other sites can use it.
sharepoint_remove_ column_ from_ content_ typeRemove a column from a site content type.
sharepoint_remove_ column_ from_ list_ content_ typeRemove a column from a content type on a list.
sharepoint_unpublish_ content_ typeUnpublish a content type from a content type hub.
sharepoint_update_ content_ type_ columnChange a column of a site content type.
sharepoint_update_ list_ content_ typeChange a content type on a list.
sharepoint_update_ list_ content_ type_ columnChange a column of a content type on a list.
sharepoint_update_ site_ content_ typeChange a site content type: name, description, group, hidden, readOnly, sealed.
sharepoint_add_ section_ column_ web_ partAdd a web part to a column of a horizontal section.
sharepoint_add_ vertical_ section_ web_ partAdd a web part to a page's vertical section.
sharepoint_create_ page_ sectionAdd a horizontal section to a page.
sharepoint_create_ page_ vertical_ sectionAdd a vertical section (side column) to a page.
sharepoint_delete_ page_ sectionRemove a horizontal section from a page.
sharepoint_delete_ page_ vertical_ sectionRemove a page's vertical section.
sharepoint_delete_ page_ web_ partRemove a web part from a page.
sharepoint_delete_ section_ column_ web_ partRemove a web part from a column.
sharepoint_delete_ vertical_ section_ web_ partRemove a web part from the vertical section.
sharepoint_get_ page_ layoutGet a page's layout: its horizontal sections, columns, web parts, and the vertical section.
sharepoint_get_ page_ sectionGet one horizontal section of a page.
sharepoint_get_ page_ section_ columnGet one column of a horizontal section.
sharepoint_get_ page_ vertical_ sectionGet a page's vertical section (the side column), if it has one.
sharepoint_get_ page_ web_ partGet one web part of a page by its instance id.
sharepoint_get_ page_ web_ part_ positionWhere a web part sits on a page: horizontal section, column and index, or the vertical section.
sharepoint_get_ page_ web_ parts_ by_ positionGet the web parts at a position on a page.
sharepoint_get_ section_ column_ web_ partGet one web part in a column, by its index.
sharepoint_get_ section_ column_ web_ part_ positionWhere a web part sits: section, column and index.
sharepoint_get_ vertical_ section_ web_ partGet one web part of the vertical section, by its index.
sharepoint_get_ vertical_ section_ web_ part_ positionWhere a web part of the vertical section sits.
sharepoint_list_ page_ section_ columnsList the columns of a horizontal section.
sharepoint_list_ page_ sectionsList a page's horizontal sections: id, layout, emphasis.
sharepoint_list_ page_ web_ partsList every web part on a page, in order: text ones carry innerHtml.
sharepoint_list_ section_ column_ web_ partsList the web parts in a column of a horizontal section.
sharepoint_list_ vertical_ section_ web_ partsList the web parts in a page's vertical section.
sharepoint_update_ page_ sectionChange a horizontal section: layout, emphasis, columns.
sharepoint_update_ page_ vertical_ sectionChange a page's vertical section.
sharepoint_update_ page_ web_ partChange a web part on a page.
sharepoint_update_ section_ column_ web_ partChange a web part in a column.
sharepoint_update_ vertical_ section_ web_ partChange a web part of the vertical section.
sharepoint_create_ child_ termCreate a term under another term.
sharepoint_create_ termCreate a top-level term in a set.
sharepoint_create_ term_ groupCreate a group in the term store.
sharepoint_create_ term_ relationCreate a pin or reuse relation on a term.
sharepoint_create_ term_ setCreate a term set.
sharepoint_delete_ termDelete a term.
sharepoint_delete_ term_ groupDelete a term group.
sharepoint_delete_ term_ setDelete a term set.
sharepoint_get_ termGet one term: labels, descriptions, properties.
sharepoint_get_ term_ groupGet one term group.
sharepoint_get_ term_ relationGet one relation of a term.
sharepoint_get_ term_ setGet one term set.
sharepoint_get_ term_ set_ relationGet one relation of a set.
sharepoint_get_ term_ storeGet the term store of a site: id, defaultLanguageTag, languageTags.
sharepoint_list_ term_ childrenList the terms directly under a term.
sharepoint_list_ term_ groupsList the groups of a term store: id, displayName, scope.
sharepoint_list_ term_ relationsList a term's pin and reuse relations.
sharepoint_list_ term_ set_ childrenList the top-level terms of a set: id, labels.
sharepoint_list_ term_ set_ relationsList the pin and reuse relations of a set.
sharepoint_list_ term_ set_ termsList every term of a set, at any level.
sharepoint_list_ term_ setsList the term sets of a group: id, localizedNames, description.
sharepoint_update_ termChange a term: labels, descriptions, properties.
sharepoint_update_ term_ setChange a term set: description, localizedNames, properties.
sharepoint_update_ term_ storeChange the term store: defaultLanguageTag, languageTags.
sharepoint_delete_ list_ item_ permissionTake away a permission on a list item.
sharepoint_delete_ list_ permissionTake away a permission on a list.
sharepoint_get_ list_ item_ permissionGet one permission on a list item.
sharepoint_get_ list_ permissionGet one permission on a list.
sharepoint_get_ site_ permissionGet one application permission on a site.
sharepoint_grant_ app_ access_ to_ listGrant an application a role on a list (for Lists/ListItems.SelectedOperations.Selected apps).
sharepoint_grant_ app_ access_ to_ list_ itemGrant an application a role on a list item (for Lists/ListItems.SelectedOperations.Selected apps).
sharepoint_grant_ app_ access_ to_ siteGrant an application a role on a site, for apps using Sites.Selected.
sharepoint_grant_ list_ item_ link_ accessGive named people access through an existing sharing link on a list item.
sharepoint_grant_ list_ link_ accessGive named people access through an existing sharing link on a list.
sharepoint_grant_ site_ link_ accessGive named people access through a sharing link on a site.
sharepoint_list_ list_ item_ permissionsSee who can open a list item: roles and the person, group, link or app each permission goes to.
sharepoint_list_ list_ permissionsSee who can open a list: roles and the person, group, link or app each permission goes to.
sharepoint_list_ site_ permissionsList which applications have access to a site through Sites.Selected.
sharepoint_revoke_ list_ item_ link_ accessRemove named people from a sharing link on a list item.
sharepoint_revoke_ list_ link_ accessRemove named people from a sharing link on a list.
sharepoint_revoke_ site_ link_ accessRemove named people from a sharing link on a site.
sharepoint_update_ list_ item_ permissionChange a permission's roles on a list item.
sharepoint_update_ list_ permissionChange a permission's roles on a list.
sharepoint_get_ list_ item_ activity_ by_ intervalViews and edits of a row or file per day, week or month.
sharepoint_get_ list_ item_ analyticsGet the analytics object for a row or file: allTime and lastSevenDays via $expand.
sharepoint_get_ list_ item_ analytics_ all_ timeHow often a row or file was used over its lifetime: access { actionCount, actorCount }.
sharepoint_get_ list_ item_ analytics_ last_ seven_ daysHow often a row or file was used in the last seven days: access { actionCount, actorCount }.
sharepoint_get_ site_ activity_ by_ intervalViews and edits of a site per day, week or month, between two dates.
sharepoint_get_ site_ activity_ statGet one period of a site's activity statistics.
sharepoint_get_ site_ activity_ stat_ activityGet one activity from a period of a site's statistics.
sharepoint_get_ site_ analyticsGet a site's analytics object; allTime and lastSevenDays are expanded by default: access counts and unique viewers.
sharepoint_get_ site_ analytics_ all_ timeHow often a site was used over its lifetime: access { actionCount, actorCount }.
sharepoint_get_ site_ analytics_ last_ seven_ daysHow often a site was used in the last seven days: access { actionCount, actorCount }.
sharepoint_list_ list_ activitiesList recent activity on a list: who did what and when.
sharepoint_list_ list_ item_ activitiesList recent activity on a row or file: who did what and when.
sharepoint_list_ site_ activity_ stat_ activitiesList the individual activities in one period of a site's statistics.
sharepoint_list_ site_ activity_ statsList a site's activity statistics by period.
sharepoint_create_ list_ item_ linkCreate a sharing link to a list item.
sharepoint_get_ list_ item_ fieldsRead only the column values of a row.
sharepoint_get_ list_ item_ fileGet the file behind a row of a document library, with driveId and id for the file tools.
sharepoint_get_ list_ item_ file_ contentRead the file behind a row of a document library: text, Office files as text, images as the image.
sharepoint_replace_ list_ item_ file_ contentReplace the contents of the file behind a row of a document library, up to 4 MB.
sharepoint_update_ list_ item_ propertiesChange a list item's own properties (rarely needed).
sharepoint_create_ site_ columnCreate a column on a site.
sharepoint_delete_ list_ columnDelete a list column and the values in it.
sharepoint_delete_ site_ columnDelete a site column.
sharepoint_follow_ sitesFollow one or more sites for the signed-in person.
sharepoint_get_ group_ siteGet the team site of a Microsoft 365 group or Team, by the group's id.
sharepoint_get_ list_ columnGet one column of a list.
sharepoint_get_ site_ columnGet one site column.
sharepoint_get_ site_ external_ columnGet one external column of a site.
sharepoint_get_ site_ itemGet any item in a site by its id, whatever it is (a list, a list item, a file).
sharepoint_get_ site_ operationCheck one long-running operation: status (notStarted, running, succeeded, failed), percentageComplete, resourceId.
sharepoint_list_ site_ columnsList the columns defined on a site (usable by every list under it): name, displayName, type facet, required.
sharepoint_list_ site_ external_ columnsList columns a site can use from its parent or a content type hub (not defined on the site itself).
sharepoint_list_ site_ operationsList long-running operations on a site (for example a list being provisioned), with status and percentageComplete.
sharepoint_unfollow_ sitesStop following one or more sites.
sharepoint_update_ list_ columnChange a list column: displayName, description, required, hidden, indexed, choices.
sharepoint_update_ site_ columnChange a site column: displayName, description, required, hidden, indexed and its type facet.
sharepoint_get_ root_ folderThe top folder of the library: id, childCount, size, webUrl.
sharepoint_list_ childrenList the files and folders inside a folder of a document library.
sharepoint_permanently_ delete_ itemDelete a file or folder permanently, skipping the recycle bin: it cannot be restored.
sharepoint_create_ page_ rawCreate a page from a full sitePage object: name (ending .aspx), title, pageLayout (article or home), promotionKind (page or newsPost), titleArea, canvasLayout.
sharepoint_get_ page_ metadataGet a page's metadata only: name, title, webUrl, publishingState.
sharepoint_list_ site_ pagesList a site's modern pages only, with promotionKind (page or newsPost), showComments and more.
sharepoint_create_ permissionAdd a permission object directly.
sharepoint_create_ subscriptionGet notified when a list changes.
sharepoint_delete_ listDelete a list and all its items.
sharepoint_delete_ permissionStop sharing: remove a person's access or delete a sharing link.
sharepoint_delete_ subscriptionStop a subscription.
sharepoint_get_ list_ operationCheck one long-running operation on a list.
sharepoint_get_ list_ subscriptionGet one change-notification subscription on a list.
sharepoint_get_ permissionOne permission on a file or folder: roles, who it was granted to, and its sharing link if it is one.
sharepoint_get_ shared_ file_ contentDownload the file a sharing link points to, read like sharepoint_read_file (text, Office text, or the image).
sharepoint_get_ shared_ folder_ itemOne item inside a folder that a sharing link shares.
sharepoint_get_ shared_ folder_ item_ contentDownload a file inside a shared folder, read like sharepoint_read_file.
sharepoint_get_ shared_ itemWhat a sharing link points to, in brief: name and owner.
sharepoint_get_ shared_ rootThe top item of what a sharing link shares (the shared folder itself, or the file).
sharepoint_get_ sharing_ link_ permissionThe permission behind a sharing link: its type (view or edit), scope and roles.
sharepoint_get_ subscriptionGet one subscription.
sharepoint_grant_ sharing_ link_ accessGive specific people access through an existing sharing link.
sharepoint_list_ list_ operationsList long-running operations on a list.
sharepoint_list_ list_ subscriptionsList change-notification subscriptions on a list.
sharepoint_list_ subscriptionsList this app's active change-notification subscriptions: id, resource, changeType, expiry.
sharepoint_open_ sharing_ linkOpen a SharePoint sharing link (shareId is the link itself): returns the shared file or folder with its id, name, size and parentReference.driveId.
sharepoint_reauthorize_ subscriptionReauthorize a subscription after Microsoft sends a reauthorizationRequired lifecycle notice.
sharepoint_renew_ subscriptionExtend a subscription before it expires.
sharepoint_revoke_ link_ grantsRemove specific people from a sharing link without deleting the link.
sharepoint_update_ listRename a list or change its description: displayName, description.
sharepoint_update_ permissionChange what a permission allows: roles ["read"] or ["write"], or a link's expirationDateTime.
sharepoint_check_ in_ fileCheck in a checked-out file so others see the new version (document libraries that require check-out).
sharepoint_check_ out_ fileCheck out a file so others cannot edit it until it is checked in again.
sharepoint_create_ document_ set_ versionCapture a new version of a document set.
sharepoint_delete_ document_ set_ versionDelete a version of a document set.
sharepoint_discard_ checkoutUndo a check-out: changes made since are discarded.
sharepoint_follow_ itemFollow (favorite) a file or folder so it shows in the person's followed list.
sharepoint_get_ document_ set_ versionGet one version of a document set.
sharepoint_get_ document_ set_ version_ fieldsRead the column values stored in a document set version.
sharepoint_get_ preview_ urlA short-lived URL that shows a preview of the file in a browser (getUrl), without changing anything.
sharepoint_list_ document_ set_ versionsList the versions of a document set.
sharepoint_restore_ document_ set_ versionRestore a document set to this version.
sharepoint_unfollow_ itemStop following a file or folder.
sharepoint_create_ upload_ sessionStart a resumable upload that replaces an existing file's contents in parts (for programs that upload the bytes themselves: PUT ranges of 320 KiB multiples to the returned uploadUrl, without an Authorization header).
sharepoint_get_ activities_ by_ intervalView and edit counts of a file per day, week or month between two dates (startDateTime, endDateTime as ISO dates; interval day, week or month).
sharepoint_get_ file_ contentDownload a file.
sharepoint_get_ item_ analytics_ all_ timeHow often a file was viewed, and by how many people, since it was created.
sharepoint_get_ item_ analytics_ last_ seven_ daysHow often a file was viewed, and by how many people, in the last seven days.
sharepoint_list_ drive_ activitiesRecent activity in the library (who created, edited, renamed, moved, shared or deleted what, and when).
sharepoint_list_ item_ activitiesRecent activity on one file or folder (and inside a folder): who edited, renamed, moved, shared or commented, and when.
sharepoint_replace_ file_ contentReplace an existing file's contents.
sharepoint_extract_ sensitivity_ labelsRead the sensitivity labels applied to a file and refresh the file's label details.
sharepoint_get_ item_ versionGet one version of a row, with $expand=fields for its values.
sharepoint_get_ item_ version_ fieldsRead the column values a row had in one version.
sharepoint_get_ library_ for_ listGet the document library behind a list (only document libraries have one): its driveId for the file tools.
sharepoint_get_ retention_ labelThe retention label on a file or folder (name, whether it is a record and locked, retention settings).
sharepoint_get_ site_ default_ libraryGet a site's default document library (usually Documents): its driveId, name, webUrl and quota.
sharepoint_get_ site_ libraryGet one document library of a site by its driveId.
sharepoint_get_ versionOne version of a file: when and by whom it was saved, and its size.
sharepoint_get_ version_ contentThe contents of an earlier version of a file, read like sharepoint_read_file (text, Office text, or the image).
sharepoint_list_ item_ versionsList the versions of a row or file: id (the version label like 2.0), who changed it and when.
sharepoint_remove_ retention_ labelRemove the retention label from a file or folder.
sharepoint_restore_ item_ versionBring back an earlier version of a row or file, as a new version.
sharepoint_restore_ versionMake an earlier version the current one (a new version is added with its contents; nothing is lost).
sharepoint_set_ retention_ labelApply a retention label (body: name of a label published to the user), or lock or unlock a record (body: retentionSettings: { isRecordLocked: true }).
sharepoint_get_ thumbnail_ contentSee a file's thumbnail image (photos, videos, Office documents and PDFs have one): returns the image.
sharepoint_get_ thumbnail_ setOne thumbnail set of a file (thumbnailSetId 0 is the file's own): small, medium and large with url, width and height.
sharepoint_list_ thumbnailsThumbnail images of a file (small, medium, large), each with a short-lived url, width and height.
sharepoint_get_ driveA document library's details: id (the driveId), name, driveType (documentLibrary), owner, quota (total, used, remaining, state) and webUrl.
sharepoint_get_ group_ driveThe document library of a Microsoft 365 group or team (its Files tab), by group id: returns the library's id.
sharepoint_get_ tenant_ settingsRead the organization's SharePoint and OneDrive settings: sharing capability, allowed domains, idle sign-out and more.
sharepoint_list_ changesTrack changes in a library: the first call lists every item; keep the @odata.deltaLink (deltaCursor) from the last page and pass it as cursor later to get only what changed since (deleted items carry deleted).
sharepoint_update_ tenant_ settingsChange organization-wide SharePoint and OneDrive settings.
Authorize once, then an endpoint your client signs into. Nothing to deploy, and nothing to install on the SharePoint side.
Register an app in the Microsoft Entra admin center, add PopMCP's Redirect URI under Authentication as a Web platform, copy the Application (client) ID and a client secret Value into PopMCP, then click Sign in with Microsoft and approve access on Microsoft's own page. In most organizations an administrator approves SharePoint once.
00001111-aaaa-2222-bbbb-3333cccc4444••••••••••••3f7aLeave empty unless your app is single tenantcreate_list_item, update_list_item, upload_file, publish_page, delete_item and create_sharing_link act the moment the AI calls them, and deleted things go to the site's recycle bin. New connections start read-only, only clients ticked on the PopMCP consent screen reach your sites, and the AI can never open more than you can in SharePoint yourself.
Drop the PopMCP URL into Claude, ChatGPT, Claude Code, Codex or any other supported client. It signs in through PopMCP with OAuth, so your SharePoint credential never leaves the server.
app.popmcp.com/mcpAsk for something harmless before the agent changes anything. Writes run as soon as it calls them, so confirm it reads the right account first.
List the open items in the Marketing team's Project tasks list and who owns each one
sharepoint_search_sitesok
Then just ask for the work
“List the open items in the Marketing team's Project tasks list and who owns each one”
“Find our latest pricing proposal anywhere in SharePoint and tell me what it promises”
“Here is a link to a SharePoint folder: what is in it, and which file changed last?”
“Add these twelve new clients as rows in the Clients list”
“Save these meeting notes in the Documents library of the Sales site, under Meetings”
“Draft a news post about the office move on the intranet, but do not publish it yet”
One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.
Add the PopMCP URL under Customize → Connectors and the tools appear in every chat.
The same endpoint, registered in the browser. Nothing to install on the machine you are working from.
Register PopMCP as a custom connector, then let ChatGPT read and update the account.
Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.
Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.
Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.
FAQ
What teams ask before putting SharePoint behind an AI client.
Sign in with your work or school Microsoft account and approve access on Microsoft's own page, so your password never reaches PopMCP. Today that sign-in runs through an app you register once in the Microsoft Entra admin center: add PopMCP's Redirect URI under Authentication as a Web platform, then copy the Application (client) ID and a client secret Value into the connect form. Tokens renew on their own after that, and every Microsoft connector uses the same Redirect URI.
In most organizations, yes, once. Since 2025 Microsoft's default consent settings stop people approving an app that asks for Sites.Read.All or Sites.ReadWrite.All on their own, and nothing narrower reaches SharePoint sites. An administrator approves it on Microsoft's approval screen, or under API permissions on the app, and after that everyone can connect. The term store, site administration and organization settings are separate boxes under More options, and always need an administrator.
The sites you can open yourself, and nothing more. The connection acts as you, so SharePoint's own permissions apply to every call, and a site you cannot open stays closed to the AI too. There is no site to choose when connecting: the AI finds the right one by name, by search, or from a link you give it.
Yes. Sites, lists, library folders, files, pages and rows can all be named by their link, and resolve_url says what any link points to. Short sharing links are the one exception on a read-only connection: Microsoft opens those only for a connection with write permission, so open the link once and pass the full address instead.
read_file returns the text of Word, PowerPoint and Excel files, plain text, CSV, JSON, Markdown and HTML, and shows PNG, JPEG, GIF and WebP images. It reads files up to 10 MB, and long ones in parts. PDFs are described rather than read, with a link to open them.
No. create_page saves a draft unless you ask for it to be published, because a published page shows to everyone who can open the site. publish_page is a separate step, and only runs on a connection you have allowed to write.
No. SharePoint exists only in Microsoft 365 work and school accounts, so the sign-in only accepts those. For a personal account's files, use the OneDrive connector.
No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.
Any client that supports a remote Streamable HTTP MCP server: Claude Desktop, Claude Web, Claude Code, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.
Connect SharePoint in PopMCP first, then run claude mcp add --transport http popmcp https://app.popmcp.com/mcp in a terminal. Inside Claude Code, run /mcp and sign in to PopMCP in the browser window it opens, ticking SharePoint on the consent screen. The SharePoint tools are then available in that session, and no SharePoint credential is stored on your machine.
Loading 264 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 43-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. Every tool stays searchable, and on Scale the owner can load the full catalog for a teammate's connection.
A tool is something your AI calls, and there are 264 here. A trigger is something PopMCP watches for you: 14 SharePoint events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into SharePoint.
Launch a hosted MCP endpoint for SharePoint, keep tool access under control, and start testing real workflow prompts right away.