Production-grade MCP Server for Microsoft SharePoint — give your AI agent (Claude, Cursor, Continue) live access to read, write, and manage SharePoint files and folders.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add sharepoint-server-ravikant1918 --env SHP_ID_APP='<SHP_ID_APP>' --env SHP_ID_APP_SECRET='<SHP_ID_APP_SECRET>' --env SHP_TENANT_ID='<SHP_TENANT_ID>' --env SHP_SITE_URL='<SHP_SITE_URL>' -- uvx sharepoint-mcp~/.codex/config.toml
[mcp_servers.sharepoint-server-ravikant1918]
command = "uvx"
args = ["sharepoint-mcp"]
env = { SHP_ID_APP = "<SHP_ID_APP>", SHP_ID_APP_SECRET = "<SHP_ID_APP_SECRET>", SHP_TENANT_ID = "<SHP_TENANT_ID>", SHP_SITE_URL = "<SHP_SITE_URL>" }
# codex mcp add sharepoint-server-ravikant1918 --env SHP_ID_APP='<SHP_ID_APP>' --env SHP_ID_APP_SECRET='<SHP_ID_APP_SECRET>' --env SHP_TENANT_ID='<SHP_TENANT_ID>' --env SHP_SITE_URL='<SHP_SITE_URL>' -- uvx sharepoint-mcp~/.cursor/mcp.json
{
"mcpServers": {
"sharepoint-server-ravikant1918": {
"command": "uvx",
"args": [
"sharepoint-mcp"
],
"env": {
"SHP_ID_APP": "<SHP_ID_APP>",
"SHP_ID_APP_SECRET": "<SHP_ID_APP_SECRET>",
"SHP_TENANT_ID": "<SHP_TENANT_ID>",
"SHP_SITE_URL": "<SHP_SITE_URL>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"sharepoint-server-ravikant1918": {
"type": "stdio",
"command": "uvx",
"args": [
"sharepoint-mcp"
],
"env": {
"SHP_ID_APP": "<SHP_ID_APP>",
"SHP_ID_APP_SECRET": "<SHP_ID_APP_SECRET>",
"SHP_TENANT_ID": "<SHP_TENANT_ID>",
"SHP_SITE_URL": "<SHP_SITE_URL>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"sharepoint-server-ravikant1918": {
"command": "uvx",
"args": [
"sharepoint-mcp"
],
"env": {
"SHP_ID_APP": "<SHP_ID_APP>",
"SHP_ID_APP_SECRET": "<SHP_ID_APP_SECRET>",
"SHP_TENANT_ID": "<SHP_TENANT_ID>",
"SHP_SITE_URL": "<SHP_SITE_URL>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"sharepoint-server-ravikant1918": {
"command": "uvx",
"args": [
"sharepoint-mcp"
],
"env": {
"SHP_ID_APP": "<SHP_ID_APP>",
"SHP_ID_APP_SECRET": "<SHP_ID_APP_SECRET>",
"SHP_TENANT_ID": "<SHP_TENANT_ID>",
"SHP_SITE_URL": "<SHP_SITE_URL>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"sharepoint-server-ravikant1918": {
"command": "uvx",
"args": [
"sharepoint-mcp"
],
"env": {
"SHP_ID_APP": "<SHP_ID_APP>",
"SHP_ID_APP_SECRET": "<SHP_ID_APP_SECRET>",
"SHP_TENANT_ID": "<SHP_TENANT_ID>",
"SHP_SITE_URL": "<SHP_SITE_URL>"
}
}
}
}Environment variables
SHP_ID_APPSHP_ID_APP_SECRETSHP_TENANT_IDSHP_SITE_URL
Replace the placeholders with your own credentials and keep them out of version control.