Microsoft 365 Admin runs on your own machine — the client starts it, so there is no endpoint to ping. 85 installs a week from npm. Last commit 31 Jul 2026.
Microsoft 365 administration via Graph API application permissions (read-only by default).
We read the source, 3 h ago · rules 3dff92dd89df
Things with no honest explanation: a promise that contradicts the code, code that runs at install time while hiding what it does, data leaving the machine.
execSync(
What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.
execSync(
Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.
Code changes quietly between releases, and nobody reads the diff of a dependency. We do, on every release — watch Microsoft 365 Admin and you get told the day something new turns up.
This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.
claude mcp add ms-365-admin -- npx -y @okapi-ca/ms-365-admin-mcp-server
{
"mcpServers": {
"ms-365-admin": {
"args": [
"-y",
"@okapi-ca/ms-365-admin-mcp-server"
],
"command": "npx"
}
}
}
[mcp_servers.ms-365-admin]
command = "npx"
args = ["-y", "@okapi-ca/ms-365-admin-mcp-server"]
{
"mcpServers": {
"ms-365-admin": {
"args": [
"-y",
"@okapi-ca/ms-365-admin-mcp-server"
],
"command": "npx"
}
}
}
{
"mcpServers": {
"ms-365-admin": {
"args": [
"-y",
"@okapi-ca/ms-365-admin-mcp-server"
],
"command": "npx"
}
}
}
This one needs environment variables set before it will start:
MS365_ADMIN_MCP_TENANT_ID (Azure AD tenant ID (specific GUID, not 'common').), MS365_ADMIN_MCP_CLIENT_ID (App registration client ID with the required application permissions.), MS365_ADMIN_MCP_CLIENT_SECRET (App registration client secret. Prefer Azure Key Vault via MS365_ADMIN_MCP_KEYVAULT_URL for production.), MS365_ADMIN_MCP_KEYVAULT_URL (Optional Azure Key Vault URL. When set, secrets are pulled from the vault and override the env-var values above.), MS365_ADMIN_MCP_CLOUD_TYPE (Cloud environment: 'global' (default) or 'china' (21Vianet).), MS365_ADMIN_MCP_MAX_TOP (Cap on the $top query parameter to limit result size.), READ_ONLY (Set to 'true' or '1' to force read-only mode (default behavior; mutations require --allow-writes).), ENABLED_TOOLS (Regex to filter the catalog of available tools.).
The author declared them in the registry entry; get the values from the project itself.
Safe Kubernetes access for AI agents via MCP. Read-only by default, with explicit permission modes.
Read-only-by-default SQL Server: schema, parameterized SELECT, execution plans; writes opt-in.
Microsoft 365 Outlook mail via Graph: read, search, send, reply, forward, draft, move, delete.
Microsoft 365 OneDrive files via Graph: list, search, get, upload, download, share, read text.
Microsoft 365 Teams via Graph: list chats, read/send messages, list teams/channels, presence.
Microsoft 365 SharePoint via Graph: sites, libraries, pages, lists, search, file/list mutations.
Query and manage Microsoft Dynamics 365 Finance & Operations via MCP
Read-only MVR preflight for trust, permission, evidence gaps, and African market-entry readiness.
Answers built from our own checks of this server.