Sp MCP Server

MCP server for SharePoint & Power Automate management via Microsoft Graph API

Local serverstdioTypeScript

What is the Sp MCP MCP server?

MCP server for SharePoint & Power Automate management via Microsoft Graph API. Exposed over MCP by the sp mcp mcp server, that capability becomes something an assistant can invoke while it works, not something you go and do afterwards.

What it actually does

SharePoint Bridge is an open-source MCP server that connects Claude to your SharePoint environment via the Microsoft Graph API. Ask questions, create lists, update items, query data, and trigger Power Automate flows — all through conversation.

Its toolset

Everything the assistant can do here goes through one of these:

  • sp_list_lists — List all lists and document libraries on a site
  • sp_list_get — Get a list's full schema including column definitions, types, and relationships
  • sp_list_create — Create a new list (add columns separately via sp_column_add)
  • sp_column_add — Add columns: text, number, dateTime, choice, lookup, calculated, boolean, currency, personOrGroup
  • sp_items_query — Query items with OData filtering, sorting, field selection, and pagination
  • sp_item_create — Create new items with field values (supports lookup IDs)
  • sp_item_update — Update existing item fields
  • sp_item_delete — Delete items
  • pa_flows_list — List all flows in an environment
  • pa_flow_get — Get full flow definition including triggers and actions
  • pa_flow_runs — View run history with status and error details
  • pa_flow_trigger — Manually trigger a flow

Configuration

You will need 6 environment variables: TRANSPORT, AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, SP_HOSTNAME, SP_DEFAULT_SITE_PATH. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.

  • Node.js 18+ - A Microsoft 365 tenant with SharePoint Online - An Azure App Registration with Graph API permissions - A Claude account (Pro, Team, or Enterprise) for Claude.ai, or Claude Code for local use

Adding it to your client

Installation goes through your MCP client rather than a global install: point it at npm on npm and it is fetched when the client starts. The copy-paste blocks for Claude Desktop, Claude Code and Cursor are further down this page.

When to reach for it

Among the knowledge and memory options, the useful question is rarely "what can it do" but "what does it cost you to run" — permissions, credentials, and how much of your context its toolset consumes. Sp MCP's toolset — sp_list_lists, sp_list_get, sp_list_create and 11 more — is a fair guide to whether it matches your workflow. It is maintained by tuttoone; worth a glance at recent repository activity before you build anything load-bearing on it.

This entry was verified against Sp MCP's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.

Caveats

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch Sp MCP.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • MCP clients confirm each tool call by default. Leave that on until you have watched what the sp mcp mcp server does with a few real requests.

Available tools

ToolWhat it does
sp_list_listsList all lists and document libraries on a site
sp_list_getGet a list's full schema including column definitions, types, and relationships
sp_list_createCreate a new list (add columns separately via sp_column_add)
sp_column_addAdd columns: text, number, dateTime, choice, lookup, calculated, boolean, currency, personOrGroup
sp_items_queryQuery items with OData filtering, sorting, field selection, and pagination
sp_item_createCreate new items with field values (supports lookup IDs)
sp_item_updateUpdate existing item fields
sp_item_deleteDelete items
pa_flows_listList all flows in an environment
pa_flow_getGet full flow definition including triggers and actions
pa_flow_runsView run history with status and error details
pa_flow_triggerManually trigger a flow
ms_docs_searchSearch Microsoft Learn docs (Graph API, Power Automate, SharePoint)
ms_docs_fetchFetch full content of a documentation page

How to install the Sp MCP MCP server

{
  "mcpServers": {
    "sp": {
      "command": "npx",
      "args": ["-y", "npm"],
      "env": {
        "TRANSPORT": "your-value",
        "AZURE_TENANT_ID": "your-value",
        "AZURE_CLIENT_ID": "your-value",
        "AZURE_CLIENT_SECRET": "your-value",
        "SP_HOSTNAME": "your-value",
        "SP_DEFAULT_SITE_PATH": "your-value"
      }
    }
  }
}

Add to claude_desktop_config.json, then restart Claude Desktop.

Configuration

  • Node.js 18+ - A Microsoft 365 tenant with SharePoint Online - An Azure App Registration with Graph API permissions - A Claude account (Pro, Team, or Enterprise) for Claude.ai, or Claude Code for local use
VariableDescriptionRequired
TRANSPORTConfiguration value read at startup.Optional
AZURE_TENANT_IDConfiguration value read at startup.Optional
AZURE_CLIENT_IDConfiguration value read at startup.Optional
AZURE_CLIENT_SECRETCredential the server authenticates with.Yes
SP_HOSTNAMEEndpoint or connection string the server talks to.Optional
SP_DEFAULT_SITE_PATHFilesystem location the server is allowed to use.Optional

Example prompts to try

  • Use Sp MCP to sp list lists.
  • Use Sp MCP to sp list get.
  • Use Sp MCP to sp list create.

Frequently asked questions

It connects Sp MCP to MCP-compatible AI assistants such as Claude and Cursor, exposing 14 tools (sp_list_lists, sp_list_get, sp_list_create, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Sp MCP directly.