@softeria/ms-365-mcp-server 0.114.0 → 0.114.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.
@@ -489,12 +489,6 @@
489
489
  "toolName": "get-drive-root-item",
490
490
  "scopes": ["Files.Read"]
491
491
  },
492
- {
493
- "pathPattern": "/drives/{drive-id}/root",
494
- "method": "get",
495
- "toolName": "get-drive-root-item",
496
- "scopes": ["Files.Read"]
497
- },
498
492
  {
499
493
  "pathPattern": "/drives/{drive-id}/items/{driveItem-id}/children",
500
494
  "method": "get",
@@ -365,6 +365,57 @@ const microsoft_graph_teamsTab = z.object({
365
365
  webUrl: z.string().describe("Deep link URL of the tab instance. Read-only.").nullish(),
366
366
  teamsApp: microsoft_graph_teamsApp.optional()
367
367
  }).passthrough();
368
+ const microsoft_graph_targetedChatMessage = z.object({
369
+ id: z.string().describe("The unique identifier for an entity. Read-only.").optional(),
370
+ createdDateTime: z.string().regex(
371
+ /^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$/
372
+ ).datetime({ offset: true }).describe("Timestamp of when the chat message was created.").nullish(),
373
+ lastModifiedDateTime: z.string().regex(
374
+ /^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$/
375
+ ).datetime({ offset: true }).describe(
376
+ "Read only. Timestamp when the chat message is created (initial setting) or modified, including when a reaction is added or removed."
377
+ ).nullish(),
378
+ body: microsoft_graph_itemBody.optional(),
379
+ subject: z.string().describe("The subject of the chat message, in plaintext.").nullish(),
380
+ attachments: z.array(microsoft_graph_chatMessageAttachment).describe("References to attached objects like files, tabs, meetings etc.").optional(),
381
+ importance: microsoft_graph_chatMessageImportance.optional(),
382
+ from: microsoft_graph_chatMessageFromIdentitySet.optional(),
383
+ channelIdentity: microsoft_graph_channelIdentity.optional(),
384
+ chatId: z.string().describe("If the message was sent in a chat, represents the identity of the chat.").nullish(),
385
+ deletedDateTime: z.string().regex(
386
+ /^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$/
387
+ ).datetime({ offset: true }).describe(
388
+ "Read only. Timestamp at which the chat message was deleted, or null if not deleted."
389
+ ).nullish(),
390
+ etag: z.string().describe("Read-only. Version number of the chat message.").nullish(),
391
+ eventDetail: microsoft_graph_eventMessageDetail.optional(),
392
+ lastEditedDateTime: z.string().regex(
393
+ /^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$/
394
+ ).datetime({ offset: true }).describe(
395
+ "Read only. Timestamp when edits to the chat message were made. Triggers an 'Edited' flag in the Teams UI. If no edits are made the value is null."
396
+ ).nullish(),
397
+ locale: z.string().describe("Locale of the chat message set by the client. Always set to en-us.").optional(),
398
+ mentions: z.array(microsoft_graph_chatMessageMention).describe(
399
+ "List of entities mentioned in the chat message. Supported entities are: user, bot, team, channel, chat, and tag."
400
+ ).optional(),
401
+ messageHistory: z.array(microsoft_graph_chatMessageHistoryItem).describe(
402
+ "List of activity history of a message item, including modification time and actions, such as reactionAdded, reactionRemoved, or reaction changes, on the message."
403
+ ).optional(),
404
+ messageType: microsoft_graph_chatMessageType.optional(),
405
+ policyViolation: microsoft_graph_chatMessagePolicyViolation.optional(),
406
+ reactions: z.array(microsoft_graph_chatMessageReaction).describe("Reactions for this chat message (for example, Like).").optional(),
407
+ replyToId: z.string().describe(
408
+ "Read-only. ID of the parent chat message or root chat message of the thread. (Only applies to chat messages in channels, not chats.)"
409
+ ).nullish(),
410
+ summary: z.string().describe(
411
+ "Summary text of the chat message that could be used for push notifications and summary views or fall back views. Only applies to channel chat messages, not chat messages in a chat."
412
+ ).nullish(),
413
+ webUrl: z.string().describe("Read-only. Link to the message in Microsoft Teams.").nullish(),
414
+ hostedContents: z.array(microsoft_graph_chatMessageHostedContent).describe(
415
+ "Content in a message hosted by Microsoft Teams - for example, images or code snippets."
416
+ ).optional(),
417
+ replies: z.array(microsoft_graph_chatMessage).describe("Replies for a specified message. Supports $expand for channel messages.").optional()
418
+ }).passthrough().passthrough();
368
419
  const microsoft_graph_chat = z.object({
369
420
  id: z.string().describe("The unique identifier for an entity. Read-only.").optional(),
370
421
  chatType: microsoft_graph_chatType.optional(),
@@ -396,7 +447,8 @@ const microsoft_graph_chat = z.object({
396
447
  messages: z.array(microsoft_graph_chatMessage).describe("A collection of all the messages in the chat. Nullable.").optional(),
397
448
  permissionGrants: z.array(microsoft_graph_resourceSpecificPermissionGrant).describe("A collection of permissions granted to apps for the chat.").optional(),
398
449
  pinnedMessages: z.array(microsoft_graph_pinnedChatMessageInfo).describe("A collection of all the pinned messages in the chat. Nullable.").optional(),
399
- tabs: z.array(microsoft_graph_teamsTab).describe("A collection of all the tabs in the chat. Nullable.").optional()
450
+ tabs: z.array(microsoft_graph_teamsTab).describe("A collection of all the tabs in the chat. Nullable.").optional(),
451
+ targetedMessages: z.array(microsoft_graph_targetedChatMessage).optional()
400
452
  }).passthrough();
401
453
  const microsoft_graph_ODataErrors_ErrorDetails = z.object({ code: z.string(), message: z.string(), target: z.string().nullish() }).passthrough();
402
454
  const microsoft_graph_ODataErrors_InnerError = z.object({
@@ -4666,6 +4718,7 @@ const schemas = {
4666
4718
  microsoft_graph_pinnedChatMessageInfo,
4667
4719
  microsoft_graph_teamsTabConfiguration,
4668
4720
  microsoft_graph_teamsTab,
4721
+ microsoft_graph_targetedChatMessage,
4669
4722
  microsoft_graph_chat,
4670
4723
  microsoft_graph_ODataErrors_ErrorDetails,
4671
4724
  microsoft_graph_ODataErrors_InnerError,
package/dist/server.js CHANGED
@@ -205,7 +205,7 @@ class MicrosoftGraphServer {
205
205
  const protocol = req.secure ? "https" : "http";
206
206
  const requestOrigin = `${protocol}://${req.get("host")}`;
207
207
  const browserBase = publicBase ?? requestOrigin;
208
- const scopes = this.options.obo ? [`api://${this.secrets.clientId}/access_as_user`] : resolveAuthScopes(this.options);
208
+ const scopes = this.options.obo ? [`${this.secrets.clientId}/access_as_user`] : resolveAuthScopes(this.options);
209
209
  res.json({
210
210
  resource: `${requestOrigin}/mcp`,
211
211
  authorization_servers: [browserBase],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@softeria/ms-365-mcp-server",
3
- "version": "0.114.0",
3
+ "version": "0.114.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",
@@ -60,7 +60,7 @@
60
60
  "@types/node": "^22.15.15",
61
61
  "@typescript-eslint/eslint-plugin": "^8.38.0",
62
62
  "@typescript-eslint/parser": "^8.38.0",
63
- "@vitest/coverage-v8": "^3.2.4",
63
+ "@vitest/coverage-v8": "^4.1.8",
64
64
  "eslint": "^9.31.0",
65
65
  "globals": "^16.3.0",
66
66
  "patch-package": "^8.0.1",
@@ -69,7 +69,7 @@
69
69
  "tsup": "^8.5.0",
70
70
  "tsx": "^4.19.4",
71
71
  "typescript": "^5.8.3",
72
- "vitest": "^3.1.1"
72
+ "vitest": "^4.1.8"
73
73
  },
74
74
  "engines": {
75
75
  "node": ">=18"
@@ -489,12 +489,6 @@
489
489
  "toolName": "get-drive-root-item",
490
490
  "scopes": ["Files.Read"]
491
491
  },
492
- {
493
- "pathPattern": "/drives/{drive-id}/root",
494
- "method": "get",
495
- "toolName": "get-drive-root-item",
496
- "scopes": ["Files.Read"]
497
- },
498
492
  {
499
493
  "pathPattern": "/drives/{drive-id}/items/{driveItem-id}/children",
500
494
  "method": "get",