How to connect a SharePoint MCP with Claude Code (4 steps)
.png)
SharePoint holds the internal documentation that engineering and ops teams constantly reference: runbooks, architecture docs, project trackers, policy documents, onboarding materials, etc.
Developers building automations or internal tooling that needs to read or write this content have to work through Microsoft Graph API authentication, Azure AD app registration, and SharePoint-specific concepts like drives, sites, and document libraries before they can retrieve a single file.
To help your developers search documents, manage files, and read list data from the terminal with ease, we'll show you how to connect SharePoint with Merge Agent Handler's SharePoint MCP server.
How it works
Merge Agent Handler connects Claude Code to SharePoint through the Microsoft Graph API, handled via a single CLI setup.
You install the Merge CLI, authenticate once with your Merge Agent Handler account, and register the connection with one command. Merge manages Microsoft OAuth credentials and Graph API calls on your behalf, so you never configure an Azure AD app registration or manage access token refresh yourself.
Here's the command that registers the connection:
Prerequisites
Before getting started, you'll need the following:
- A Merge Agent Handler account
- Claude Code installed (run
claude --versionto confirm) - pipx installed (run
pipx --versionto confirm, or install viapip install pipx) - A Microsoft 365 account with access to the SharePoint sites you want to connect
If you want to connect Merge Agent Handler's SharePoint MCP with internal or customer-facing agentic products, you can follow the steps in our docs.
1. Install the Merge CLI
Run the following to install the Merge CLI: pipx install merge-api

Then verify the installation: merge --version
2. Configure the CLI and log in
Run the interactive setup: merge configure
This prompts you for your Merge API key and sets your default workspace preferences, linking the CLI to your Merge Agent Handler account.
Then log in: merge login
Once you log in, the CLI can make authorized API requests on your behalf going forward.
Related: How to use the Expensify MCP in Claude Code
3. Add Agent Handler to Claude Code
Register the Agent Handler MCP server with Claude Code:
Open Claude Code and run: /mcp
agent-handler should appear under Local MCPs with a connected status.
4. Authenticate SharePoint
Select agent-handler from the MCP list. This opens a browser window where you select which integrations to authenticate. Choose SharePoint and complete the Microsoft OAuth flow using the account that has access to the sites and document libraries you want Claude Code to reach. Merge stores and manages the credentials going forward.
The first time you use a SharePoint tool in a Claude Code session, a Magic Link may appear to complete connector authentication.

Once authenticated, you won't need to re-authenticate unless you revoke access.
To confirm the connector is accessible, open a Claude Code session and run a command like "Search all SharePoint document libraries for files related to "incident response" and list the five most recently modified ones, including the site name, file type, and last modified date."
You should see an output like the following:

{{this-blog-only-cta}}
SharePoint MCP FAQ
In case you have more questions on setting up and using the SharePoint MCP in Claude Code, we've addressed several more commonly-asked questions below.
What can you do once a SharePoint MCP is connected to Claude Code?
With SharePoint connected, Claude Code can:
- Search across document libraries: run full-text searches across a specific drive or the entire SharePoint tenant to locate documents without browsing through sites manually
- Retrieve file metadata: get drive item details including name, path, last modified date, and file type for any document in a connected library
- Create and organize folders: scaffold folder structures in a document library when triggered by an external event, such as a new project or team creation in another system
- Read and write list items: query SharePoint list rows, create new entries, and update existing ones, useful for any list-backed process tracker or intake form
- Manage list schema: create new SharePoint lists within a site and configure columns to support new data structures without opening the SharePoint UI
- Search globally: run cross-site searches across the full SharePoint environment to find documents regardless of which site or library they live in
Why use Merge Agent Handler vs. a self-hosted SharePoint MCP server?
You can build a self-hosted MCP server on top of Microsoft Graph API's SharePoint endpoints. For a developer with an existing Azure AD app registration and a single tenant to work with, the initial setup is workable.
The prerequisite work is non-trivial, though.
Microsoft Graph requires an Azure AD app registration with the correct SharePoint scopes, OAuth 2.0 token management, and a clear understanding of how SharePoint's file and list structure maps to Graph's drive and list resource model. That's all setup you complete before writing a single tool schema, and it needs to be replicated for every developer on the team who needs access.
Microsoft does offer an official Work IQ SharePoint MCP server, but it requires a Microsoft 365 Copilot license per user, which not every team has or wants to provision for this use case. It also operates within Microsoft's tooling ecosystem with limited control over which tools individual agents can access.
Merge Agent Handler handles the Azure AD and OAuth layer so you don't configure it yourself and adds tool-level scoping on top. A document search agent, for example, can access tools like files_search_all and files_get_drive_item but not files_delete_item, list_items_delete, or other destructive operations it has no reason to reach. Every tool call is also logged with the timestamp, tool name, and inputs.
Why connect a SharePoint MCP to Claude Code?
SharePoint is where a significant portion of internal knowledge lives: runbooks, architecture decisions, project plans, compliance documents, onboarding guides. Developers who need to build on that content today have to retrieve it manually, export it, or write a dedicated Microsoft Graph integration.
With the SharePoint MCP connected, Claude Code can search document libraries, retrieve files, and read list data without leaving the terminal.
This matters most when SharePoint content feeds a downstream step: pulling the runbook for an affected system during an incident, checking whether a project site already exists before provisioning a new one, or reading a SharePoint list to get the current state of a process tracker.



.png)
.png)