@softeria/ms-365-mcp-server 0.78.0 → 0.79.0
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/endpoints.json +2 -0
- package/dist/graph-tools.js +12 -6
- package/logs/mcp-server.log +11 -11
- package/package.json +1 -1
- package/src/endpoints.json +2 -0
package/dist/endpoints.json
CHANGED
|
@@ -352,6 +352,7 @@
|
|
|
352
352
|
"pathPattern": "/me/calendar/getSchedule",
|
|
353
353
|
"method": "post",
|
|
354
354
|
"toolName": "get-schedule",
|
|
355
|
+
"readOnly": true,
|
|
355
356
|
"workScopes": ["Calendars.Read"]
|
|
356
357
|
},
|
|
357
358
|
{
|
|
@@ -407,6 +408,7 @@
|
|
|
407
408
|
"pathPattern": "/me/findMeetingTimes",
|
|
408
409
|
"method": "post",
|
|
409
410
|
"toolName": "find-meeting-times",
|
|
411
|
+
"readOnly": true,
|
|
410
412
|
"workScopes": ["Calendars.Read.Shared"]
|
|
411
413
|
},
|
|
412
414
|
{
|
package/dist/graph-tools.js
CHANGED
|
@@ -310,10 +310,13 @@ function registerGraphTools(server, graphClient, readOnly = false, enabledToolsP
|
|
|
310
310
|
skippedCount++;
|
|
311
311
|
continue;
|
|
312
312
|
}
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
313
|
+
const method = tool.method.toUpperCase();
|
|
314
|
+
if (readOnly && method !== "GET") {
|
|
315
|
+
if (!(method === "POST" && endpointConfig?.readOnly)) {
|
|
316
|
+
logger.info(`Skipping write operation ${tool.alias} in read-only mode`);
|
|
317
|
+
skippedCount++;
|
|
318
|
+
continue;
|
|
319
|
+
}
|
|
317
320
|
}
|
|
318
321
|
if (enabledToolsRegex && !enabledToolsRegex.test(tool.alias)) {
|
|
319
322
|
logger.info(`Skipping tool ${tool.alias} - doesn't match filter pattern`);
|
|
@@ -464,8 +467,11 @@ function buildToolsRegistry(readOnly, orgMode) {
|
|
|
464
467
|
if (!orgMode && endpointConfig && !endpointConfig.scopes && endpointConfig.workScopes) {
|
|
465
468
|
continue;
|
|
466
469
|
}
|
|
467
|
-
|
|
468
|
-
|
|
470
|
+
const method = tool.method.toUpperCase();
|
|
471
|
+
if (readOnly && method !== "GET") {
|
|
472
|
+
if (!(method === "POST" && endpointConfig?.readOnly)) {
|
|
473
|
+
continue;
|
|
474
|
+
}
|
|
469
475
|
}
|
|
470
476
|
toolsMap.set(tool.alias, { tool, config: endpointConfig });
|
|
471
477
|
}
|
package/logs/mcp-server.log
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
2026-04-14
|
|
2
|
-
2026-04-14
|
|
3
|
-
2026-04-14
|
|
4
|
-
2026-04-14
|
|
5
|
-
2026-04-14
|
|
6
|
-
2026-04-14
|
|
7
|
-
2026-04-14
|
|
8
|
-
2026-04-14
|
|
9
|
-
2026-04-14
|
|
10
|
-
2026-04-14
|
|
11
|
-
2026-04-14
|
|
1
|
+
2026-04-14 21:28:26 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me
|
|
2
|
+
2026-04-14 21:28:26 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me
|
|
3
|
+
2026-04-14 21:28:26 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me
|
|
4
|
+
2026-04-14 21:28:26 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me/messages
|
|
5
|
+
2026-04-14 21:28:26 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me/calendar
|
|
6
|
+
2026-04-14 21:28:26 INFO: [GRAPH CLIENT] Final URL being sent to Microsoft: https://graph.microsoft.com/v1.0/me/photo/$value
|
|
7
|
+
2026-04-14 21:28:27 INFO: Using environment variables for secrets
|
|
8
|
+
2026-04-14 21:28:27 INFO: Using environment variables for secrets
|
|
9
|
+
2026-04-14 21:28:27 INFO: Using environment variables for secrets
|
|
10
|
+
2026-04-14 21:28:27 INFO: Using environment variables for secrets
|
|
11
|
+
2026-04-14 21:28:27 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.
|
|
3
|
+
"version": "0.79.0",
|
|
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",
|
package/src/endpoints.json
CHANGED
|
@@ -352,6 +352,7 @@
|
|
|
352
352
|
"pathPattern": "/me/calendar/getSchedule",
|
|
353
353
|
"method": "post",
|
|
354
354
|
"toolName": "get-schedule",
|
|
355
|
+
"readOnly": true,
|
|
355
356
|
"workScopes": ["Calendars.Read"]
|
|
356
357
|
},
|
|
357
358
|
{
|
|
@@ -407,6 +408,7 @@
|
|
|
407
408
|
"pathPattern": "/me/findMeetingTimes",
|
|
408
409
|
"method": "post",
|
|
409
410
|
"toolName": "find-meeting-times",
|
|
411
|
+
"readOnly": true,
|
|
410
412
|
"workScopes": ["Calendars.Read.Shared"]
|
|
411
413
|
},
|
|
412
414
|
{
|