{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.sapientsai/microsoft365-mcp-server","description":"Microsoft 365 via Graph — mail, calendar, contacts, files, Teams, Planner, OneNote, To Do.","repository":{"url":"https://github.com/sapientsai/microsoft365-mcp-server","source":"github"},"version":"1.2.16","packages":[{"registryType":"npm","identifier":"microsoft365-mcp-server","version":"1.2.16","transport":{"type":"stdio"},"environmentVariables":[{"description":"Azure AD application (client) ID. Every mode except client-token needs it.","isRequired":true,"format":"string","name":"MS365_CLIENT_ID"},{"description":"Azure AD tenant ID, or 'common'/'organizations'/'consumers'. Read by certificate, client-secret and oauth-proxy modes.","format":"string","name":"MS365_TENANT_ID"},{"description":"Azure AD client secret (client-secret mode).","format":"string","isSecret":true,"name":"MS365_CLIENT_SECRET"},{"description":"Path to the certificate used by certificate mode.","format":"filepath","name":"MS365_CERT_PATH"},{"description":"Password for the certificate at MS365_CERT_PATH, if it has one.","format":"string","isSecret":true,"name":"MS365_CERT_PASSWORD"},{"description":"A Graph access token supplied directly (client-token mode).","format":"string","isSecret":true,"name":"MS365_ACCESS_TOKEN"},{"description":"Auth mode: interactive (default), certificate, client-secret, client-token or oauth-proxy.","format":"string","name":"MS365_AUTH_MODE"},{"description":"Base URL of the OAuth proxy (oauth-proxy mode).","format":"string","name":"MS365_OAUTH_BASE_URL"},{"description":"Set to 'true' to expose read-only tools and refuse every write.","format":"string","name":"MS365_READ_ONLY"},{"description":"Case-insensitive regular expression matched against tool names; only matching tools are registered. Not a comma-separated list.","format":"string","name":"MS365_ENABLED_TOOLS"},{"description":"Comma-separated tool presets to enable instead of naming tools individually.","format":"string","name":"MS365_PRESETS"},{"description":"Set to 'true' for organisation-wide (application-permission) behaviour.","format":"string","name":"MS365_ORG_MODE"},{"description":"Transport: 'stdio' (the default, and what this npm package is listed as) or 'httpStream' for remote/Docker deployments.","format":"string","name":"TRANSPORT_TYPE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-24T17:18:46.590691Z","publishedAt":"2026-10-24T17:18:46.590691Z","updatedAt":"2026-10-24T17:18:46.590691Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.sapientsai/microsoft365-mcp-server","description":"Microsoft 365 via Graph — mail, calendar, contacts, files, Teams, Planner, OneNote, To Do.","repository":{"url":"https://github.com/sapientsai/microsoft365-mcp-server","source":"github"},"version":"1.2.17","packages":[{"registryType":"npm","identifier":"microsoft365-mcp-server","version":"1.2.17","transport":{"type":"stdio"},"environmentVariables":[{"description":"Azure AD application (client) ID. Every mode except client-token needs it.","isRequired":true,"format":"string","name":"MS365_CLIENT_ID"},{"description":"Azure AD tenant ID, or 'common'/'organizations'/'consumers'. Read by certificate, client-secret and oauth-proxy modes.","format":"string","name":"MS365_TENANT_ID"},{"description":"Azure AD client secret (client-secret mode).","format":"string","isSecret":true,"name":"MS365_CLIENT_SECRET"},{"description":"Path to the certificate used by certificate mode.","format":"filepath","name":"MS365_CERT_PATH"},{"description":"Password for the certificate at MS365_CERT_PATH, if it has one.","format":"string","isSecret":true,"name":"MS365_CERT_PASSWORD"},{"description":"A Graph access token supplied directly (client-token mode).","format":"string","isSecret":true,"name":"MS365_ACCESS_TOKEN"},{"description":"Auth mode: interactive (default), certificate, client-secret, client-token or oauth-proxy.","format":"string","name":"MS365_AUTH_MODE"},{"description":"Base URL of the OAuth proxy (oauth-proxy mode).","format":"string","name":"MS365_OAUTH_BASE_URL"},{"description":"Set to 'true' to expose read-only tools and refuse every write.","format":"string","name":"MS365_READ_ONLY"},{"description":"Case-insensitive regular expression matched against tool names; only matching tools are registered. Not a comma-separated list.","format":"string","name":"MS365_ENABLED_TOOLS"},{"description":"Comma-separated tool presets to enable instead of naming tools individually.","format":"string","name":"MS365_PRESETS"},{"description":"Set to 'true' for organisation-wide (application-permission) behaviour.","format":"string","name":"MS365_ORG_MODE"},{"description":"Transport: 'stdio' (the default, and what this npm package is listed as) or 'httpStream' for remote/Docker deployments.","format":"string","name":"TRANSPORT_TYPE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-24T17:28:34.331423Z","publishedAt":"2026-10-24T17:28:34.331423Z","updatedAt":"2026-10-24T17:28:34.331423Z","isLatest":true}}}],"metadata":{"count":2}}
