@softeria/ms-365-mcp-server 0.43.3 → 0.44.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -520,6 +520,7 @@ Environment variables:
520
520
  - `MS365_MCP_ORG_MODE=true|1`: Enable organization/work mode (alternative to --org-mode flag)
521
521
  - `MS365_MCP_FORCE_WORK_SCOPES=true|1`: Backwards compatibility for MS365_MCP_ORG_MODE
522
522
  - `MS365_MCP_OUTPUT_FORMAT=toon`: Enable TOON output format (alternative to --toon flag)
523
+ - `MS365_MCP_BODY_FORMAT=html`: Return email bodies as HTML instead of plain text (default: text)
523
524
  - `MS365_MCP_CLOUD_TYPE=global|china`: Microsoft cloud environment (alternative to --cloud flag)
524
525
  - `LOG_LEVEL`: Set logging level (default: 'info')
525
526
  - `SILENT=true|1`: Disable console output
@@ -2360,7 +2360,7 @@ const microsoft_graph_team = z.lazy(
2360
2360
  ).nullish(),
2361
2361
  allChannels: z.array(microsoft_graph_channel).describe("List of channels either hosted in or shared with the team (incoming channels).").optional(),
2362
2362
  channels: z.array(microsoft_graph_channel).describe("The collection of channels and messages associated with the team.").optional(),
2363
- group: microsoft_graph_group.describe("[Note: Simplified from 73 properties to 25 most common ones]").optional(),
2363
+ group: microsoft_graph_group.describe("[Note: Simplified from 74 properties to 25 most common ones]").optional(),
2364
2364
  incomingChannels: z.array(microsoft_graph_channel).describe("List of channels shared with the team.").optional(),
2365
2365
  installedApps: z.array(microsoft_graph_teamsAppInstallation).describe("The apps installed in this team.").optional(),
2366
2366
  members: z.array(microsoft_graph_conversationMember).describe("Members and owners of the team.").optional(),
@@ -5,6 +5,7 @@ import { readFileSync } from "fs";
5
5
  import path from "path";
6
6
  import { fileURLToPath } from "url";
7
7
  import { TOOL_CATEGORIES } from "./tool-categories.js";
8
+ import { getRequestTokens } from "./request-context.js";
8
9
  const __filename = fileURLToPath(import.meta.url);
9
10
  const __dirname = path.dirname(__filename);
10
11
  const endpointsData = JSON.parse(
@@ -14,7 +15,7 @@ async function executeGraphTool(tool, config, graphClient, params, authManager)
14
15
  logger.info(`Tool ${tool.alias} called with params: ${JSON.stringify(params)}`);
15
16
  try {
16
17
  let accountAccessToken;
17
- if (authManager && !authManager.isOAuthModeEnabled()) {
18
+ if (authManager && !authManager.isOAuthModeEnabled() && !getRequestTokens()) {
18
19
  const accountParam = params.account;
19
20
  try {
20
21
  accountAccessToken = await authManager.getTokenForAccount(accountParam);
@@ -106,9 +107,17 @@ async function executeGraphTool(tool, config, graphClient, params, authManager)
106
107
  logger.info(`Set body param: ${JSON.stringify(body)}`);
107
108
  }
108
109
  }
110
+ const preferValues = [];
109
111
  if (config?.supportsTimezone && params.timezone) {
110
- headers["Prefer"] = `outlook.timezone="${params.timezone}"`;
111
- logger.info(`Setting timezone header: Prefer: outlook.timezone="${params.timezone}"`);
112
+ preferValues.push(`outlook.timezone="${params.timezone}"`);
113
+ logger.info(`Setting timezone preference: outlook.timezone="${params.timezone}"`);
114
+ }
115
+ const bodyFormat = process.env.MS365_MCP_BODY_FORMAT || "text";
116
+ if (bodyFormat !== "html") {
117
+ preferValues.push(`outlook.body-content-type="${bodyFormat}"`);
118
+ }
119
+ if (preferValues.length > 0) {
120
+ headers["Prefer"] = preferValues.join(", ");
112
121
  }
113
122
  if (config?.supportsExpandExtendedProperties && params.expandExtendedProperties === true) {
114
123
  const expandValue = "singleValueExtendedProperties";
@@ -1,10 +1,10 @@
1
- 2026-03-03 12:04:56 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me
2
- 2026-03-03 12:04:56 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me
3
- 2026-03-03 12:04:56 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me
4
- 2026-03-03 12:04:56 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me/messages
5
- 2026-03-03 12:04:56 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me/calendar
6
- 2026-03-03 12:04:57 INFO: Using environment variables for secrets
7
- 2026-03-03 12:04:57 INFO: Using environment variables for secrets
8
- 2026-03-03 12:04:57 INFO: Using environment variables for secrets
9
- 2026-03-03 12:04:57 INFO: Using environment variables for secrets
10
- 2026-03-03 12:04:57 INFO: Using environment variables for secrets
1
+ 2026-03-07 09:47:44 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me
2
+ 2026-03-07 09:47:44 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me
3
+ 2026-03-07 09:47:44 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me
4
+ 2026-03-07 09:47:44 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me/messages
5
+ 2026-03-07 09:47:44 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me/calendar
6
+ 2026-03-07 09:47:45 INFO: Using environment variables for secrets
7
+ 2026-03-07 09:47:45 INFO: Using environment variables for secrets
8
+ 2026-03-07 09:47:45 INFO: Using environment variables for secrets
9
+ 2026-03-07 09:47:45 INFO: Using environment variables for secrets
10
+ 2026-03-07 09:47:45 INFO: Using environment variables for secrets
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@softeria/ms-365-mcp-server",
3
- "version": "0.43.3",
3
+ "version": "0.44.1",
4
4
  "description": " A Model Context Protocol (MCP) server for interacting with Microsoft 365 and Office services through the Graph API",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",