@softeria/ms-365-mcp-server 0.28.1 → 0.28.2

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/dist/auth.js CHANGED
@@ -162,13 +162,13 @@ class AuthManager {
162
162
  if (kt) {
163
163
  await kt.setPassword(SERVICE_NAME, TOKEN_CACHE_ACCOUNT, cacheData);
164
164
  } else {
165
- fs.writeFileSync(FALLBACK_PATH, cacheData);
165
+ fs.writeFileSync(FALLBACK_PATH, cacheData, { mode: 384 });
166
166
  }
167
167
  } catch (keytarError) {
168
168
  logger.warn(
169
169
  `Keychain save failed, falling back to file storage: ${keytarError.message}`
170
170
  );
171
- fs.writeFileSync(FALLBACK_PATH, cacheData);
171
+ fs.writeFileSync(FALLBACK_PATH, cacheData, { mode: 384 });
172
172
  }
173
173
  } catch (error) {
174
174
  logger.error(`Error saving token cache: ${error.message}`);
@@ -182,13 +182,13 @@ class AuthManager {
182
182
  if (kt) {
183
183
  await kt.setPassword(SERVICE_NAME, SELECTED_ACCOUNT_KEY, selectedAccountData);
184
184
  } else {
185
- fs.writeFileSync(SELECTED_ACCOUNT_PATH, selectedAccountData);
185
+ fs.writeFileSync(SELECTED_ACCOUNT_PATH, selectedAccountData, { mode: 384 });
186
186
  }
187
187
  } catch (keytarError) {
188
188
  logger.warn(
189
189
  `Keychain save failed for selected account, falling back to file storage: ${keytarError.message}`
190
190
  );
191
- fs.writeFileSync(SELECTED_ACCOUNT_PATH, selectedAccountData);
191
+ fs.writeFileSync(SELECTED_ACCOUNT_PATH, selectedAccountData, { mode: 384 });
192
192
  }
193
193
  } catch (error) {
194
194
  logger.error(`Error saving selected account: ${error.message}`);
package/dist/server.js CHANGED
@@ -72,7 +72,7 @@ class MicrosoftGraphServer {
72
72
  logger.info("Microsoft 365 MCP Server starting...");
73
73
  logger.info("Environment Variables Check:", {
74
74
  CLIENT_ID: process.env.MS365_MCP_CLIENT_ID ? `${process.env.MS365_MCP_CLIENT_ID.substring(0, 8)}...` : "NOT SET",
75
- CLIENT_SECRET: process.env.MS365_MCP_CLIENT_SECRET ? `${process.env.MS365_MCP_CLIENT_SECRET.substring(0, 8)}...` : "NOT SET",
75
+ CLIENT_SECRET: process.env.MS365_MCP_CLIENT_SECRET ? "SET" : "NOT SET",
76
76
  TENANT_ID: process.env.MS365_MCP_TENANT_ID || "NOT SET",
77
77
  NODE_ENV: process.env.NODE_ENV || "NOT SET"
78
78
  });
@@ -85,8 +85,9 @@ class MicrosoftGraphServer {
85
85
  app.set("trust proxy", true);
86
86
  app.use(express.json());
87
87
  app.use(express.urlencoded({ extended: true }));
88
+ const corsOrigin = process.env.MS365_MCP_CORS_ORIGIN || "*";
88
89
  app.use((req, res, next) => {
89
- res.header("Access-Control-Allow-Origin", "*");
90
+ res.header("Access-Control-Allow-Origin", corsOrigin);
90
91
  res.header("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS");
91
92
  res.header(
92
93
  "Access-Control-Allow-Headers",
@@ -187,11 +188,8 @@ class MicrosoftGraphServer {
187
188
  logger.info("Token endpoint called", {
188
189
  method: req.method,
189
190
  url: req.url,
190
- headers: req.headers,
191
- bodyType: typeof req.body,
192
- body: req.body,
193
- rawBody: JSON.stringify(req.body),
194
- contentType: req.get("Content-Type")
191
+ contentType: req.get("Content-Type"),
192
+ grant_type: req.body?.grant_type
195
193
  });
196
194
  const body = req.body;
197
195
  if (!body) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@softeria/ms-365-mcp-server",
3
- "version": "0.28.1",
3
+ "version": "0.28.2",
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",