Skip to content

Connectors · Files & documents

Microsoft SharePoint MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Microsoft SharePoint and the rest of your systems. It gives your agent 228 Microsoft SharePoint actions (122 reads, 81 writes and 25 that wait for a confirmation) and holds the Microsoft SharePoint credential itself, so the agent never does. It paces Microsoft SharePoint's limits and records every call.

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

claude mcp add --transport http actionlake https://connect.actionlake.com/mcp
the first call
do {  action: "m365_graph_sharepoint.sites.list",  intent: "check which Microsoft SharePoint account is connected"}# List SharePoint sites · read · 1 upstream call
  • 228actionsin one signed file
  • 122readlook, never change
  • 81writecreate and update
  • 25wait for a yesdestructive, confirmed first

Set up

Connect Microsoft SharePoint in three steps.

  1. 01

    Add actionlake to Claude.

    Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.

    https://connect.actionlake.com/mcp
  2. 02

    Connect Microsoft SharePoint.

    OAuth 2.0, client credentials. Paste the app's client id and secret; actionlake fetches and renews the token, and nobody has to sign in. actionlake stores what you paste write-only, sealed under your tenant's key.

    • client_idEntra application (client) id
    • client_secretEntra client secret
    • tenant_idYour Microsoft SharePoint tenant id
    account { op: "connections.requirements", service: "m365_graph_sharepoint" }
    # free: exactly what to paste, and what is found for you
  3. 03

    Make the first call. Check before a write.

    Ask in plain words; Claude picks the action. Before anything changes, check validates the call and prices it, for free.

    do    { action: "m365_graph_sharepoint.sites.list" }# list sharepoint sites · read · 1 upstream callcheck { action: "m365_graph_sharepoint.drive_items.delete", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent

Microsoft SharePoint at a glance

Sign-in
OAuth 2.0, client credentials. Paste the app's client id and secret; actionlake fetches and renews the token, and nobody has to sign in.
You provide
client_idclient_secret
Setup fields
tenant_id
Limits we pace to
10,000 calls per 10 minutes, per connection
API covered
Microsoft SharePoint API v1.0graph.microsoft.com/v1.0
Built from
Microsoft SharePoint's documentation, read 17 September 2026OpenAPI spec (GitHub)learn.microsoft.com
Service file
Version 2.0.0, signed (Ed25519)
Cached reads
122 of 122 reads, for up to an hour; a write clears what it affects
Ready-made plans
9 in the store
Shared entities
2, so ask can line Microsoft SharePoint up with your other systems
Data
Processed and stored in Sydney, Australia. No US region yet

Capabilities

What an AI agent can do in Microsoft SharePoint.

228 actions in 1 area. Every one carries its effect, so a key can allow the reads and hold the rest.

  • 122readlook, never change
  • 81writecreate and update
  • 25destructivewait for a confirmation
  1. Intranet

    228

    122 read · 81 write · 25 destructive

    List a site's document libraries · Get a file or folder (any library) · Delete a file or folder (any library) · Search a document library (any library)

Top actions

The Microsoft SharePoint API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 95 of Microsoft SharePoint's 96 action names are shared with at least one other connector, so an agent learns them once.

ActionWhat it doesEffectSame name in
m365_graph_sharepoint.drives.listList a site's document librariesList the document libraries (drives) of a site.readcontent.drive.list5 connectors
m365_graph_sharepoint.drive_items.getGet a file or folder (any library)Get one driveItem by id.readcontent.file.get74 connectors
m365_graph_sharepoint.drive_items.deleteDelete a file or folder (any library)Move a driveItem to the site's recycle bin.destructivecontent.file.delete68 connectors
m365_graph_sharepoint.drive_items.create_folderCreate a folder (any library)Create a folder inside a parent folder. `root` is the library's top folder.writecontent.folder.create62 connectors
m365_graph_sharepoint.drive_items.list_childrenList a folder's contents (any library)List the files and folders inside a folder. `root` is the library's top folder.readcontent.folder.list62 connectors
m365_graph_sharepoint.drives.get_defaultGet a site's default document libraryGet the default document library (drive) of a site.readcontent.drive.get6 connectors
m365_graph_sharepoint.drive_items.create_linkCreate a sharing link (any library)Create or fetch a sharing link for a driveItem.writecontent.file_link.create18 connectors
m365_graph_sharepoint.site_permissions.listList site permissionsList the application permissions granted on a site.readcontent.file_permission.list17 connectors
m365_graph_sharepoint.drive_items.list_permissionsList a file's permissions (any library)List who a driveItem is shared with, inherited grants included.readcontent.file_permission.list17 connectors
m365_graph_sharepoint.sites.listList SharePoint sitesList the SharePoint sites in the tenant.readcontent.site.list16 connectors
m365_graph_sharepoint.lists.createCreate a listCreate a list on a site, with its columns.writecontent.database.create15 connectors
m365_graph_sharepoint.list_items.createCreate a list itemCreate an item in a list from column values.writecontent.record.create15 connectors

Try it

Prompts to paste into Claude.

Each one names the Microsoft SharePoint actions it will call, so you know what it reads and what it changes before you send it.

  1. Readread

    Which Microsoft SharePoint files changed this week, and who changed them?

    callsm365_graph_sharepoint.site_drive_items.list_children

  2. Planread

    Report activity and usage for a SharePoint site in Microsoft SharePoint.

    callsm365_graph_sharepoint.sites.getm365_graph_sharepoint.site_analytics.all_timem365_graph_sharepoint.site_analytics.last_seven_daysm365_graph_sharepoint.site_activities.by_intervalm365_graph_sharepoint.lists.list+1 more

  3. Plandestructive

    Copy old library files to an archive folder and delete them in Microsoft SharePoint. Ask me before anything is sent or changed.

    callsm365_graph_sharepoint.drives.get_defaultm365_graph_sharepoint.drive_items.list_childrenm365_graph_sharepoint.drive_items.create_folderm365_graph_sharepoint.drive_items.copym365_graph_sharepoint.drive_items.permanent_delete

  4. Writewrite

    Create a folder (any library) in Microsoft SharePoint. Show me exactly what you will send before you save it.

    callsm365_graph_sharepoint.drive_items.create_folder

The plan store

Ready-made plans for Microsoft SharePoint.

9 plans in the store. Install one and your agent runs it by name; the reply says which connections are still missing. A schedule can run a plan on a timetable. There are no triggers or webhooks, by design.

  1. Report activity and usage for a SharePoint site

    Use it when Someone asks how busy a SharePoint site has been, or wants usage numbers for a site over a period.

    Effect
    read
    Steps
    6
    Needs
    end date time, interval, site id and start date time
    Install
    m365_graph_sharepoint-site-usage-report
  2. Apply a sensitivity label across search hits

    Use it when A batch of documents matching a search term needs the same sensitivity label applied, with sign-off first.

    A person decidesApply sensitivity label sensitivityLabelId to every document matching 'q' on this site.

    Effect
    write
    Steps
    3 · loops
    Needs
    justification, q, sensitivityLabelId and site id
    Install
    m365_graph_sharepoint-label-sensitive-documents
  3. Build a term set and fill it with terms

    Use it when A new managed metadata vocabulary needs creating on a site with a known list of terms.

    Effect
    write
    Steps
    5 · loops
    Needs
    group name, labels, set names and site id
    Install
    m365_graph_sharepoint-build-term-set
  4. Draft a site page and publish it after approval

    Use it when A news or announcement page should be drafted on a site but must not go live until someone approves the wording.

    A person decidesPublish the news page 'page title' to the site so everyone with access can read it.

    Effect
    write
    Steps
    5
    Needs
    page name, page title, site id and summary
    Install
    m365_graph_sharepoint-publish-news-page
  5. Share a document with named recipients

    Use it when A specific document in SharePoint needs sharing with a named set of people at a given permission level.

    Effect
    write
    Steps
    5
    Needs
    item path, recipients, roles and site id
    Install
    m365_graph_sharepoint-share-document-with-team
  6. Provision a project tracking list on a site

    Use it when A new project needs its own tracking list stood up on a SharePoint site with the usual columns and a first row.

    Effect
    write
    Steps
    6
    Needs
    list name, owner and site id
    Install
    m365_graph_sharepoint-provision-project-list
  7. Publish a content type and push it to hub sites

    Use it when A content type has been finished on a hub site and now needs publishing out to the sites that consume it.

    A person decidesPublish content type 'name' and associate it with the listed hub sites, propagating to existing lists.

    Effect
    write
    Steps
    7
    Needs
    content type id, hubSiteUrls and site id
    Install
    m365_graph_sharepoint-publish-content-type-to-hub
  8. Copy old library files to an archive folder and delete them

    Use it when A document library folder has grown stale and its contents should be archived elsewhere and then removed.

    A person decidesCopy every file in the source folder into archive 'archive name' and then permanently delete the originals.

    Effect
    destructive
    Steps
    5 · loops
    Needs
    archive name, archive parent id, site id and source folder id
    Install
    m365_graph_sharepoint-archive-stale-library-files
  9. Audit and revoke a site permission grant

    Use it when A site permission grant needs reviewing and probably removing, and a person must sign off before access is revoked.

    A person decidesRevoke permission permission id on site displayName, removing the roles it grants.

    Effect
    destructive
    Steps
    5
    Needs
    permission id and site id
    Install
    m365_graph_sharepoint-audit-site-permissions
install a plan
account { op: "plans.install", slug: "m365_graph_sharepoint-site-usage-report" }
# then ask for it by name; a schedule can run it on a timetable

Governance for Microsoft SharePoint

Destructive actions wait for a yes.

25 Microsoft SharePoint actions are destructive. These are all of them:

  • Delete a file or folder (any library)m365_graph_sharepoint.drive_items.delete
  • Permanently delete a file or folderm365_graph_sharepoint.drive_items.permanent_delete
  • Delete a file or folder (site default library)m365_graph_sharepoint.site_drive_items.delete
  • Delete a list itemm365_graph_sharepoint.list_items.delete
  • Delete a list permissionm365_graph_sharepoint.list_permissions.delete
  • Revoke a site permissionm365_graph_sharepoint.site_permissions.delete
  • Delete a list item permissionm365_graph_sharepoint.list_item_permissions.delete
  • Remove a file permission (any library)m365_graph_sharepoint.drive_items.delete_permission
  • Remove a file permission (site default library)m365_graph_sharepoint.site_drive_items.delete_permission
  • Delete a listm365_graph_sharepoint.lists.delete
  • Delete a pagem365_graph_sharepoint.pages.delete
  • Delete a document set versionm365_graph_sharepoint.document_set_versions.delete
  • Delete a list columnm365_graph_sharepoint.list_columns.delete
  • Remove a column from a list content typem365_graph_sharepoint.list_content_type_columns.delete
  • Delete a web partm365_graph_sharepoint.page_webparts.delete
  • Remove a file's retention labelm365_graph_sharepoint.drive_items.remove_retention_label
  • Delete a site columnm365_graph_sharepoint.site_columns.delete
  • Remove a column from a site content typem365_graph_sharepoint.site_content_type_columns.delete
  • Delete a termm365_graph_sharepoint.terms.delete
  • Unfollow sitesm365_graph_sharepoint.sites.unfollow
  • Unfollow a filem365_graph_sharepoint.drive_items.unfollow
  • Remove a list content typem365_graph_sharepoint.list_content_types.delete
  • Delete a site content typem365_graph_sharepoint.site_content_types.delete
  • Delete a term setm365_graph_sharepoint.term_sets.delete
  • Delete a term groupm365_graph_sharepoint.term_groups.delete

A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

dom365_graph_sharepoint.drive_items.deleteconfirm_policy: human

Delete a file or folder (any library)?

intent: the user asked me to delete a file or folder (any library)

run suspended · waiting for a named person · key m365-graph-sharepoint-agent cannot confirm itself
In the console, or from an emailed signed link.
a key for this connector
account {  op: "keys.create", name: "m365-graph-sharepoint-agent",  allowed_actions: ["m365_graph_sharepoint.*"], cap_calls: 2000,  confirm_policy: "human_for_writes",  approval_rules: [    { match: "m365_graph_sharepoint.drive_items.delete", approver: "[email protected]" },    { match: "m365_graph_sharepoint.drive_items.permanent_delete", approver: "[email protected]" },    { match: "m365_graph_sharepoint.site_drive_items.delete", approver: "[email protected]" }  ]}
Illustrative. Scoped to Microsoft SharePoint only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

What Microsoft SharePoint costs on actionlake.

Every Microsoft SharePoint action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Microsoft SharePoint refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

  • 1upstream call per actionall 228 Microsoft SharePoint actions
  • 51actions pageeach page of a long list is one call
  • 122reads can be cacheda cache hit costs nothing
  • 100,000calls a month, freepaid plans from US$49 a month for 250,000

See pricing

Action index

Every Microsoft SharePoint action.

228 actions by area: the id your agent calls, what it does, and its effect.

Intranet228
  • m365_graph_sharepoint.admin_settings.getGet tenant SharePoint settingsread
  • m365_graph_sharepoint.admin_settings.updateUpdate tenant SharePoint settingswrite
  • m365_graph_sharepoint.document_set_versions.createCapture a document set versionwrite
  • m365_graph_sharepoint.document_set_versions.deleteDelete a document set versiondestructive
  • m365_graph_sharepoint.document_set_versions.getGet a document set versionread
  • m365_graph_sharepoint.document_set_versions.listList document set versionsread
  • m365_graph_sharepoint.document_set_versions.restoreRestore a document set versionwrite
  • m365_graph_sharepoint.drive_items.activities_by_intervalGet file activity by intervalread
  • m365_graph_sharepoint.drive_items.analytics_all_timeGet all-time file analyticsread
  • m365_graph_sharepoint.drive_items.analytics_last_seven_daysGet last-seven-days file analyticsread
  • m365_graph_sharepoint.drive_items.assign_sensitivity_labelAssign a sensitivity label (any library)write
  • m365_graph_sharepoint.drive_items.checkinCheck in a file (any library)write
  • m365_graph_sharepoint.drive_items.checkoutCheck out a file (any library)write
  • m365_graph_sharepoint.drive_items.copyCopy a file or folder (any library)write
  • m365_graph_sharepoint.drive_items.create_folderCreate a folder (any library)write
  • m365_graph_sharepoint.drive_items.create_linkCreate a sharing link (any library)write
  • m365_graph_sharepoint.drive_items.create_upload_sessionCreate an upload session (any library)write
  • m365_graph_sharepoint.drive_items.deleteDelete a file or folder (any library)destructive
  • m365_graph_sharepoint.drive_items.delete_permissionRemove a file permission (any library)destructive
  • m365_graph_sharepoint.drive_items.deltaTrack file changes (any library)read
  • m365_graph_sharepoint.drive_items.discard_checkoutDiscard a file checkout (any library)write
  • m365_graph_sharepoint.drive_items.extract_sensitivity_labelsExtract sensitivity labels (any library)read
  • m365_graph_sharepoint.drive_items.followFollow a file (any library)write
  • m365_graph_sharepoint.drive_items.getGet a file or folder (any library)read
  • m365_graph_sharepoint.drive_items.get_by_pathGet a file or folder by path (any library)read
  • m365_graph_sharepoint.drive_items.get_download_urlGet a file's download URL (any library)read
  • m365_graph_sharepoint.drive_items.get_list_itemGet a file's list itemread
  • m365_graph_sharepoint.drive_items.get_permissionGet a file permission (any library)read
  • m365_graph_sharepoint.drive_items.get_retention_labelGet a file's retention labelread
  • m365_graph_sharepoint.drive_items.get_versionGet a file version (any library)read
  • m365_graph_sharepoint.drive_items.inviteShare a file with people (any library)write
  • m365_graph_sharepoint.drive_items.list_childrenList a folder's contents (any library)read
  • m365_graph_sharepoint.drive_items.list_permissionsList a file's permissions (any library)read
  • m365_graph_sharepoint.drive_items.list_thumbnailsList a file's thumbnails (any library)read
  • m365_graph_sharepoint.drive_items.list_versionsList a file's versions (any library)read
  • m365_graph_sharepoint.drive_items.lock_or_unlock_recordLock or unlock a recordwrite
  • m365_graph_sharepoint.drive_items.moveMove a file or folder (any library)write
  • m365_graph_sharepoint.drive_items.permanent_deletePermanently delete a file or folderdestructive
  • m365_graph_sharepoint.drive_items.previewGet an embeddable preview (any library)write
  • m365_graph_sharepoint.drive_items.remove_retention_labelRemove a file's retention labeldestructive
  • m365_graph_sharepoint.drive_items.replace_textReplace a file's content with text (any library)write
  • m365_graph_sharepoint.drive_items.restore_versionRestore a file version (any library)write
  • m365_graph_sharepoint.drive_items.searchSearch a document library (any library)read
  • m365_graph_sharepoint.drive_items.set_retention_labelSet a file's retention labelwrite
  • m365_graph_sharepoint.drive_items.unfollowUnfollow a filedestructive
  • m365_graph_sharepoint.drive_items.updateUpdate, rename or move a file or folder (any library)write
  • m365_graph_sharepoint.drive_items.update_permissionUpdate a file permission (any library)write
  • m365_graph_sharepoint.drive_items.upload_textUpload a text file (any library)write
  • m365_graph_sharepoint.drives.getGet a document libraryread
  • m365_graph_sharepoint.drives.get_defaultGet a site's default document libraryread
  • m365_graph_sharepoint.drives.get_for_siteGet one of a site's document librariesread
  • m365_graph_sharepoint.drives.get_listGet the list behind a document libraryread
  • m365_graph_sharepoint.drives.listList a site's document librariesread
  • m365_graph_sharepoint.list_columns.createCreate a list columnwrite
  • m365_graph_sharepoint.list_columns.deleteDelete a list columndestructive
  • m365_graph_sharepoint.list_columns.getGet a list columnread
  • m365_graph_sharepoint.list_columns.listList a list's columnsread
  • m365_graph_sharepoint.list_columns.updateUpdate a list columnwrite
  • m365_graph_sharepoint.list_content_type_columns.createAdd a column to a list content typewrite
  • m365_graph_sharepoint.list_content_type_columns.deleteRemove a column from a list content typedestructive
  • m365_graph_sharepoint.list_content_type_columns.getGet a list content type's columnread
  • m365_graph_sharepoint.list_content_type_columns.listList a list content type's columnsread
  • m365_graph_sharepoint.list_content_type_columns.updateUpdate a list content type's columnwrite
  • m365_graph_sharepoint.list_content_types.add_copyAdd a site content type to a listwrite
  • m365_graph_sharepoint.list_content_types.add_copy_from_hubAdd a hub content type to a listwrite
  • m365_graph_sharepoint.list_content_types.deleteRemove a list content typedestructive
  • m365_graph_sharepoint.list_content_types.getGet a list content typeread
  • m365_graph_sharepoint.list_content_types.listList a list's content typesread
  • m365_graph_sharepoint.list_content_types.list_compatible_hubList hub content types a list can takeread
  • m365_graph_sharepoint.list_content_types.updateUpdate a list content typewrite
  • m365_graph_sharepoint.list_item_activities.by_intervalGet list item activity by intervalread
  • m365_graph_sharepoint.list_item_analytics.all_timeGet all-time list item analyticsread
  • m365_graph_sharepoint.list_item_analytics.last_seven_daysGet last-seven-days list item analyticsread
  • m365_graph_sharepoint.list_item_permissions.deleteDelete a list item permissiondestructive
  • m365_graph_sharepoint.list_item_permissions.getGet a list item permissionread
  • m365_graph_sharepoint.list_item_permissions.listList list item permissionsread
  • m365_graph_sharepoint.list_item_versions.getGet a list item versionread
  • m365_graph_sharepoint.list_item_versions.listList a list item's versionsread
  • m365_graph_sharepoint.list_item_versions.restoreRestore a list item versionwrite
  • m365_graph_sharepoint.list_items.createCreate a list itemwrite
  • m365_graph_sharepoint.list_items.create_linkCreate a sharing link for a list itemwrite
  • m365_graph_sharepoint.list_items.deleteDelete a list itemdestructive
  • m365_graph_sharepoint.list_items.deltaTrack list item changesread
  • m365_graph_sharepoint.list_items.getGet a list itemread
  • m365_graph_sharepoint.list_items.get_drive_itemGet a list item's fileread
  • m365_graph_sharepoint.list_items.get_fieldsGet a list item's column valuesread
  • m365_graph_sharepoint.list_items.listList list itemsread
  • m365_graph_sharepoint.list_items.updateUpdate a list itemwrite
  • m365_graph_sharepoint.list_operations.getGet a list operationread
  • m365_graph_sharepoint.list_operations.listList list operationsread
  • m365_graph_sharepoint.list_permissions.createGrant an application access to a listwrite
  • m365_graph_sharepoint.list_permissions.deleteDelete a list permissiondestructive
  • m365_graph_sharepoint.list_permissions.getGet a list permissionread
  • m365_graph_sharepoint.list_permissions.listList list permissionsread
  • m365_graph_sharepoint.lists.createCreate a listwrite
  • m365_graph_sharepoint.lists.deleteDelete a listdestructive
  • m365_graph_sharepoint.lists.getGet a listread
  • m365_graph_sharepoint.lists.get_driveGet a document library's driveread
  • m365_graph_sharepoint.lists.listList the lists on a siteread
  • m365_graph_sharepoint.lists.updateUpdate a listwrite
  • m365_graph_sharepoint.page_canvas.getGet a page's canvas layoutread
  • m365_graph_sharepoint.page_horizontal_section_columns.getGet a horizontal section columnread
  • m365_graph_sharepoint.page_horizontal_section_columns.listList a horizontal section's columnsread
  • m365_graph_sharepoint.page_horizontal_section_webparts.getGet a web part in a section columnread
  • m365_graph_sharepoint.page_horizontal_section_webparts.listList the web parts in a section columnread
  • m365_graph_sharepoint.page_horizontal_sections.getGet a horizontal sectionread
  • m365_graph_sharepoint.page_horizontal_sections.listList a page's horizontal sectionsread
  • m365_graph_sharepoint.page_vertical_section.getGet a page's vertical sectionread
  • m365_graph_sharepoint.page_vertical_section_webparts.getGet a web part in the vertical sectionread
  • m365_graph_sharepoint.page_vertical_section_webparts.listList the web parts in the vertical sectionread
  • m365_graph_sharepoint.page_webparts.deleteDelete a web partdestructive
  • m365_graph_sharepoint.page_webparts.getGet a web partread
  • m365_graph_sharepoint.page_webparts.listList a page's web partsread
  • m365_graph_sharepoint.page_webparts.list_by_positionGet web parts by positionread
  • m365_graph_sharepoint.page_webparts.updateUpdate a web partwrite
  • m365_graph_sharepoint.pages.deleteDelete a pagedestructive
  • m365_graph_sharepoint.pages.getGet a pageread
  • m365_graph_sharepoint.pages.listList pagesread
  • m365_graph_sharepoint.search.querySearch SharePoint contentread
  • m365_graph_sharepoint.share_permissions.grantGrant access through a sharing linkwrite
  • m365_graph_sharepoint.shares.getResolve a sharing linkread
  • m365_graph_sharepoint.shares.get_drive_itemGet the file behind a sharing linkread
  • m365_graph_sharepoint.shares.get_list_itemGet the list item behind a sharing linkread
  • m365_graph_sharepoint.shares.get_siteGet the site behind a sharing linkread
  • m365_graph_sharepoint.site_activities.by_intervalGet site activity by intervalread
  • m365_graph_sharepoint.site_analytics.all_timeGet all-time site analyticsread
  • m365_graph_sharepoint.site_analytics.last_seven_daysGet last-seven-days site analyticsread
  • m365_graph_sharepoint.site_columns.createCreate a site columnwrite
  • m365_graph_sharepoint.site_columns.deleteDelete a site columndestructive
  • m365_graph_sharepoint.site_columns.getGet a site columnread
  • m365_graph_sharepoint.site_columns.listList site columnsread
  • m365_graph_sharepoint.site_columns.updateUpdate a site columnwrite
  • m365_graph_sharepoint.site_content_type_columns.createAdd a column to a site content typewrite
  • m365_graph_sharepoint.site_content_type_columns.deleteRemove a column from a site content typedestructive
  • m365_graph_sharepoint.site_content_type_columns.getGet a site content type's columnread
  • m365_graph_sharepoint.site_content_type_columns.listList a site content type's columnsread
  • m365_graph_sharepoint.site_content_type_columns.updateUpdate a site content type's columnwrite
  • m365_graph_sharepoint.site_content_types.add_copy_from_hubAdd a content type from the hub to a sitewrite
  • m365_graph_sharepoint.site_content_types.associate_with_hub_sitesAssociate a content type with hub siteswrite
  • m365_graph_sharepoint.site_content_types.copy_to_default_content_locationCopy a file to a content type's default locationwrite
  • m365_graph_sharepoint.site_content_types.createCreate a site content typewrite
  • m365_graph_sharepoint.site_content_types.deleteDelete a site content typedestructive
  • m365_graph_sharepoint.site_content_types.getGet a site content typeread
  • m365_graph_sharepoint.site_content_types.is_publishedCheck a content type is publishedread
  • m365_graph_sharepoint.site_content_types.listList site content typesread
  • m365_graph_sharepoint.site_content_types.list_compatible_hubList hub content types a site can takeread
  • m365_graph_sharepoint.site_content_types.publishPublish a content typewrite
  • m365_graph_sharepoint.site_content_types.unpublishUnpublish a content typewrite
  • m365_graph_sharepoint.site_content_types.updateUpdate a site content typewrite
  • m365_graph_sharepoint.site_drive_items.assign_sensitivity_labelAssign a sensitivity label (site default library)write
  • m365_graph_sharepoint.site_drive_items.checkinCheck in a file (site default library)write
  • m365_graph_sharepoint.site_drive_items.checkoutCheck out a file (site default library)write
  • m365_graph_sharepoint.site_drive_items.copyCopy a file or folder (site default library)write
  • m365_graph_sharepoint.site_drive_items.create_folderCreate a folder (site default library)write
  • m365_graph_sharepoint.site_drive_items.create_linkCreate a sharing link (site default library)write
  • m365_graph_sharepoint.site_drive_items.create_upload_sessionCreate an upload session (site default library)write
  • m365_graph_sharepoint.site_drive_items.deleteDelete a file or folder (site default library)destructive
  • m365_graph_sharepoint.site_drive_items.delete_permissionRemove a file permission (site default library)destructive
  • m365_graph_sharepoint.site_drive_items.deltaTrack file changes (site default library)read
  • m365_graph_sharepoint.site_drive_items.discard_checkoutDiscard a file checkout (site default library)write
  • m365_graph_sharepoint.site_drive_items.extract_sensitivity_labelsExtract sensitivity labels (site default library)read
  • m365_graph_sharepoint.site_drive_items.followFollow a file (site default library)write
  • m365_graph_sharepoint.site_drive_items.getGet a file or folder (site default library)read
  • m365_graph_sharepoint.site_drive_items.get_by_pathGet a file or folder by path (site default library)read
  • m365_graph_sharepoint.site_drive_items.get_download_urlGet a file's download URL (site default library)read
  • m365_graph_sharepoint.site_drive_items.get_permissionGet a file permission (site default library)read
  • m365_graph_sharepoint.site_drive_items.get_versionGet a file version (site default library)read
  • m365_graph_sharepoint.site_drive_items.inviteShare a file with people (site default library)write
  • m365_graph_sharepoint.site_drive_items.list_childrenList a folder's contents (site default library)read
  • m365_graph_sharepoint.site_drive_items.list_permissionsList a file's permissions (site default library)read
  • m365_graph_sharepoint.site_drive_items.list_thumbnailsList a file's thumbnails (site default library)read
  • m365_graph_sharepoint.site_drive_items.list_versionsList a file's versions (site default library)read
  • m365_graph_sharepoint.site_drive_items.moveMove a file or folder (site default library)write
  • m365_graph_sharepoint.site_drive_items.previewGet an embeddable preview (site default library)write
  • m365_graph_sharepoint.site_drive_items.replace_textReplace a file's content with text (site default library)write
  • m365_graph_sharepoint.site_drive_items.restore_versionRestore a file version (site default library)write
  • m365_graph_sharepoint.site_drive_items.searchSearch a document library (site default library)read
  • m365_graph_sharepoint.site_drive_items.updateUpdate, rename or move a file or folder (site default library)write
  • m365_graph_sharepoint.site_drive_items.update_permissionUpdate a file permission (site default library)write
  • m365_graph_sharepoint.site_drive_items.upload_textUpload a text file (site default library)write
  • m365_graph_sharepoint.site_external_columns.listList external columnsread
  • m365_graph_sharepoint.site_operations.getGet a site operationread
  • m365_graph_sharepoint.site_operations.listList site operationsread
  • m365_graph_sharepoint.site_pages.createCreate a pagewrite
  • m365_graph_sharepoint.site_pages.getGet a modern site pageread
  • m365_graph_sharepoint.site_pages.listList modern site pagesread
  • m365_graph_sharepoint.site_pages.publishPublish a pagewrite
  • m365_graph_sharepoint.site_pages.updateUpdate a pagewrite
  • m365_graph_sharepoint.site_permissions.createGrant an application access to a sitewrite
  • m365_graph_sharepoint.site_permissions.deleteRevoke a site permissiondestructive
  • m365_graph_sharepoint.site_permissions.getGet a site permissionread
  • m365_graph_sharepoint.site_permissions.listList site permissionsread
  • m365_graph_sharepoint.site_permissions.updateUpdate a site permissionwrite
  • m365_graph_sharepoint.sites.deltaTrack site changesread
  • m365_graph_sharepoint.sites.followFollow siteswrite
  • m365_graph_sharepoint.sites.getGet a siteread
  • m365_graph_sharepoint.sites.get_allList sites across all geographiesread
  • m365_graph_sharepoint.sites.get_by_pathGet a site by URL pathread
  • m365_graph_sharepoint.sites.get_for_groupGet a group's team siteread
  • m365_graph_sharepoint.sites.get_rootGet the tenant root siteread
  • m365_graph_sharepoint.sites.listList SharePoint sitesread
  • m365_graph_sharepoint.sites.list_applicable_content_types_for_listList content types applicable to a listread
  • m365_graph_sharepoint.sites.list_followedList followed sitesread
  • m365_graph_sharepoint.sites.searchSearch sitesread
  • m365_graph_sharepoint.sites.unfollowUnfollow sitesdestructive
  • m365_graph_sharepoint.sites.updateUpdate a sitewrite
  • m365_graph_sharepoint.subsites.listList subsitesread
  • m365_graph_sharepoint.term_groups.createCreate a term groupwrite
  • m365_graph_sharepoint.term_groups.deleteDelete a term groupdestructive
  • m365_graph_sharepoint.term_groups.getGet a term groupread
  • m365_graph_sharepoint.term_groups.listList term groupsread
  • m365_graph_sharepoint.term_groups.list_setsList a term group's setsread
  • m365_graph_sharepoint.term_relations.createPin or reuse a termwrite
  • m365_graph_sharepoint.term_relations.list_for_setList a term set's relationsread
  • m365_graph_sharepoint.term_relations.list_for_termList a term's relationsread
  • m365_graph_sharepoint.term_sets.createCreate a term setwrite
  • m365_graph_sharepoint.term_sets.deleteDelete a term setdestructive
  • m365_graph_sharepoint.term_sets.getGet a term setread
  • m365_graph_sharepoint.term_sets.updateUpdate a term setwrite
  • m365_graph_sharepoint.term_store.getGet a site's term storeread
  • m365_graph_sharepoint.term_store.updateUpdate a site's term storewrite
  • m365_graph_sharepoint.terms.createCreate a top-level termwrite
  • m365_graph_sharepoint.terms.create_childCreate a child termwrite
  • m365_graph_sharepoint.terms.deleteDelete a termdestructive
  • m365_graph_sharepoint.terms.getGet a termread
  • m365_graph_sharepoint.terms.list_childrenList a term set's top-level termsread
  • m365_graph_sharepoint.terms.list_term_childrenList a term's child termsread
  • m365_graph_sharepoint.terms.updateUpdate a termwrite

Questions

The Microsoft SharePoint MCP server, answered.

Is there a Microsoft SharePoint MCP server for Claude?

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 228 Microsoft SharePoint actions, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Microsoft SharePoint.

What do I need to connect Microsoft SharePoint?

Entra application (client) id and Entra client secret. Plus your tenant id. The free call account { op: "connections.requirements", service: "m365_graph_sharepoint" } lists exactly what to paste.

Can an AI agent delete or change things in Microsoft SharePoint?

Only if its key allows it, and only with an explicit confirmation. 25 Microsoft SharePoint actions are destructive, including delete a file or folder (any library), permanently delete a file or folder and delete a file or folder (site default library). Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

Will an AI agent use up my Microsoft SharePoint API limit?

actionlake paces every call to the limits in the Microsoft SharePoint service file: 10,000 calls per 10 minutes per connection. Repeated reads are answered from cache (122 Microsoft SharePoint actions can be), which never reaches Microsoft SharePoint.

What does a Microsoft SharePoint action cost?

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (51 Microsoft SharePoint actions page). Cache hits, searches, dry runs and calls Microsoft SharePoint refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

Which Microsoft SharePoint API does it cover?

The Microsoft SharePoint API v1.0 at graph.microsoft.com/v1.0. It is built from Microsoft SharePoint's documentation as read on 17 September 2026. 228 actions in 1 area, each one in the signed service file (version 2.0.0).

Does actionlake keep my Microsoft SharePoint data, and where?

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to an hour, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Microsoft SharePoint credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

Which AI clients can use it?

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

Give your agent Microsoft SharePoint today.

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.