SharePoint MCP Server
A lightweight MCP Server for seamless integration with Microsoft SharePoint, enabling MCP clients to interact with documents, folders and other SharePoint resources. Developed by sofias tech.
Features
This server provides a clean interface to SharePoint resources through the Model Context Protocol (MCP), with optimized operations for document management.
Tools
The server implements the following tools:
List_SharePoint_Folders
: Lists all folders in a specified directory or rootList_SharePoint_Documents
: Fetches all documents within a specified folderGet_Document_Content
: Retrieves the content of a document (as text or base64-encoded binary)Create_Folder
: Creates a new folder in the specified directory or rootUpload_Document
: Uploads a new document to a specified folderUpdate_Document
: Updates the content of an existing documentDelete_Document
: Removes a document from a specified folderDelete_Folder
: Deletes an empty folder from SharePoint
Architecture
The server is built with resource efficiency in mind:
- Efficient SharePoint API usage with selective property loading
- Error handling through decorators for cleaner code
- Clear separation between resource management and tool implementation
- Optimized content handling for both text and binary files
Setup
- Register an app in Azure AD with appropriate SharePoint permissions
- Obtain the client ID and client secret for the registered app
- Identify your SharePoint site URL and the document library path you want to work with
Environment Variables
The server requires these environment variables:
SHP_ID_APP
: Your Azure AD application client IDSHP_ID_APP_SECRET
: Your Azure AD application client secretSHP_SITE_URL
: The URL of your SharePoint siteSHP_DOC_LIBRARY
: Path to the document library (default: "Shared Documents/mcp_server")SHP_TENANT_ID
: Your Microsoft tenant ID
Quickstart
Installation
Or install from PyPI once published:
Using uv:
Claude Desktop Integration
To integrate with Claude Desktop, update the configuration file:
On Windows: %APPDATA%/Claude/claude_desktop_config.json
On macOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
Standard Integration
Using uvx
Development
Requirements
- Python 3.10+
- Dependencies listed in
requirements.txt
andpyproject.toml
Local Development
- Clone the repository
- Create a virtual environment:Copy
- Install development dependencies:Copy
- Create a
.env
file with your SharePoint credentials:Copy - Run the server:Copy
Debugging
For debugging the MCP server, you can use the MCP Inspector:
License
This project is licensed under the MIT License - see the LICENSE file for details.
Copyright (c) 2025 sofias tech
This server cannot be installed
A lightweight MCP server that enables integration with Microsoft SharePoint, allowing clients to interact with documents and folders through the Model Context Protocol.