SharePoint MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SHAREPOINT_SITE_URL | Yes | The URL of your SharePoint site (e.g., https://your-tenant.sharepoint.com/sites/your-site) | |
| SHAREPOINT_CLIENT_ID | Yes | Your Azure AD Application (client) ID | |
| SHAREPOINT_TENANT_ID | Yes | Your Azure AD Directory (tenant) ID | |
| SHAREPOINT_DOC_LIBRARY | Yes | The name of the SharePoint document library | Shared Documents |
| SHAREPOINT_CLIENT_SECRET | Yes | Your Azure AD client secret value |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| authenticateA | Start the SharePoint authentication process. Returns a URL that the user must open in a browser to authenticate. The auth server must be running first (npm run auth-server). |
| check_auth_statusB | Check the current SharePoint authentication status |
| logoutB | Clear SharePoint authentication tokens and log out |
| list_foldersB | List all folders in a specified SharePoint directory. Returns folder names, IDs, and metadata. |
| create_folderC | Create a new folder in SharePoint |
| delete_folderA | Delete a folder from SharePoint. The folder must be empty. |
| get_folder_treeB | Get a recursive tree view of folders in SharePoint. Useful for understanding folder structure. |
| list_documentsB | List all documents (files) in a specified SharePoint folder. Returns file names, sizes, and metadata. |
| get_document_contentB | Get the content of a document from SharePoint. Works best with text-based files (txt, json, md, etc). |
| upload_documentC | Upload a new document to SharePoint. For text content, provide the content directly. For binary files, provide base64-encoded content. |
| upload_document_from_pathC | Upload a file from the local filesystem to SharePoint |
| update_documentC | Update an existing document in SharePoint with new content |
| delete_documentC | Delete a document from SharePoint |
| download_documentC | Download a document from SharePoint to the local filesystem |
| get_file_metadataC | Get metadata fields for a SharePoint file |
| update_file_metadataC | Update metadata fields for a SharePoint file |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 16 tools
Each tool has a clearly distinct purpose with no significant overlap. For example, list_documents and list_folders handle different resource types, while upload_document and upload_document_from_path offer distinct input methods. The authentication tools (authenticate, check_auth_status, logout) are also well-separated from document/folder operations.
All tool names follow a consistent verb_noun pattern with snake_case throughout. Examples include create_folder, delete_document, get_document_content, and update_file_metadata. This predictability makes it easy for agents to understand and select tools.
With 16 tools, this server provides comprehensive coverage for SharePoint operations without being overwhelming. The count aligns well with the domain's scope, covering authentication, folder management, document CRUD operations, and metadata handling, which is appropriate for a SharePoint integration.
The tool set offers complete CRUD/lifecycle coverage for SharePoint documents and folders, including create, read, update, delete, and list operations. It also handles authentication, metadata management, and file upload/download, leaving no obvious gaps for core SharePoint workflows.