addedInput schema / $schema
Added value: +"https://json-schema.org/draft/2020-12/schema"
addedInput schema / additionalProperties
Added value: +false
addedInput schema / properties / account_id / description
Added value: +"Account ID or email address. Omit when only one account is signed in."
addedInput schema / properties / account_id / maxLength
Added value: +320
addedInput schema / properties / account_id / minLength
Added value: +1
addedInput schema / properties / changes
Added value: +{
+ "additionalProperties": false,
+ "description": "Fields to change (at least one).",
+ "minProperties": 1,
+ "properties": {
+ "attendees_add": {
+ "description": "Attendees to add.",
+ "items": {
+ "additionalProperties": false,
+ "description": "Meeting attendee.",
+ "properties": {
+ "address": {
+ "description": "Email address, e.g. jane@example.com.",
+ "format": "email",
+ "maxLength": 320,
+ "minLength": 3,
+ "type": "string"
+ },
+ "name": {
+ "description": "Display name.",
+ "maxLength": 255,
+ "type": "string"
+ },
+ "type": {
+ "default": "required",
+ "description": "Attendance type.",
+ "enum": [
+ "required",
+ "optional"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "address"
+ ],
+ "type": "object"
+ },
+ "maxItems": 500,
+ "minItems": 1,
+ "type": "array"
+ },
+ "attendees_remove": {
+ "description": "Attendee addresses to remove.",
+ "items": {
+ "description": "Email address, e.g. jane@example.com.",
+ "format": "email",
+ "maxLength": 320,
+ "minLength": 3,
+ "type": "string"
+ },
+ "maxItems": 500,
+ "minItems": 1,
+ "type": "array",
+ "uniqueItems": true
+ },
+ "attendees_set": {
+ "description": "Replace the attendee list.",
+ "items": {
+ "additionalProperties": false,
+ "description": "Meeting attendee.",
+ "properties": {
+ "address": {
+ "description": "Email address, e.g. jane@example.com.",
+ "format": "email",
+ "maxLength": 320,
+ "minLength": 3,
+ "type": "string"
+ },
+ "name": {
+ "description": "Display name.",
+ "maxLength": 255,
+ "type": "string"
+ },
+ "type": {
+ "default": "required",
+ "description": "Attendance type.",
+ "enum": [
+ "required",
+ "optional"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "address"
+ ],
+ "type": "object"
+ },
+ "maxItems": 500,
+ "type": "array"
+ },
+ "body": {
+ "description": "Description.",
+ "maxLength": 100000,
+ "type": "string"
+ },
+ "body_format": {
+ "default": "text",
+ "description": "Format of the body text you supply.",
+ "enum": [
+ "text",
+ "html"
+ ],
+ "type": "string"
+ },
+ "end": {
+ "description": "RFC 3339 date-time with offset, e.g. 2026-10-01T09:00:00+09:30.",
+ "format": "date-time",
+ "type": "string"
+ },
+ "is_all_day": {
+ "description": "All-day event (start and end at midnight in time_zone).",
+ "type": "boolean"
+ },
+ "location": {
+ "description": "Location text.",
+ "maxLength": 255,
+ "type": "string"
+ },
+ "reminder_minutes": {
+ "description": "Reminder before start, in minutes.",
+ "maximum": 40320,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "show_as": {
+ "description": "How the time shows in your calendar.",
+ "enum": [
+ "free",
+ "tentative",
+ "busy",
+ "oof",
+ "workingElsewhere"
+ ],
+ "type": "string"
+ },
+ "start": {
+ "description": "RFC 3339 date-time with offset, e.g. 2026-10-01T09:00:00+09:30.",
+ "format": "date-time",
+ "type": "string"
+ },
+ "subject": {
+ "description": "Title.",
+ "maxLength": 255,
+ "minLength": 1,
+ "type": "string"
+ },
+ "time_zone": {
+ "description": "IANA time-zone name, e.g. Australia/Adelaide. Defaults to the mailbox time zone.",
+ "maxLength": 64,
+ "minLength": 1,
+ "type": "string"
+ }
+ },
+ "type": "object"
+}
addedInput schema / properties / confirm
Added value: +{
+ "default": false,
+ "description": "Must be true to send updates to the attendees; set only after the user approves.",
+ "type": "boolean"
+}
addedInput schema / properties / event_id / description
Added value: +"Event to change."
addedInput schema / properties / event_id / maxLength
Added value: +1024
addedInput schema / properties / event_id / minLength
Added value: +1
removedInput schema / properties / updates
Removed value: -{
- "additionalProperties": true,
- "type": "object"
-}
changedInput schema / required
Previous value: -[
- "event_id",
- "updates",
- "account_id"
-]New value: +[
+ "event_id",
+ "changes"
+]
addedOutput schema / $defs
Added value: +{
+ "attendee": {
+ "additionalProperties": false,
+ "description": "Event attendee and their response.",
+ "properties": {
+ "address": {
+ "type": "string"
+ },
+ "name": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "response": {
+ "enum": [
+ "none",
+ "organizer",
+ "tentativelyAccepted",
+ "accepted",
+ "declined",
+ "notResponded"
+ ]
+ },
+ "type": {
+ "enum": [
+ "required",
+ "optional",
+ "resource"
+ ]
+ }
+ },
+ "required": [
+ "name",
+ "address",
+ "type",
+ "response"
+ ],
+ "type": "object"
+ },
+ "event_detail": {
+ "additionalProperties": false,
+ "description": "Event from m365_get. recurrence is a read-only human summary.",
+ "properties": {
+ "attendee_count": {
+ "minimum": 0,
+ "type": "integer"
+ },
+ "attendees": {
+ "items": {
+ "$ref": "#/$defs/attendee"
+ },
+ "type": "array"
+ },
+ "body": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "body_truncated": {
+ "type": "boolean"
+ },
+ "calendar_id": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "end": {
+ "format": "date-time",
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
+ },
+ "is_all_day": {
+ "type": "boolean"
+ },
+ "is_organizer": {
+ "type": "boolean"
+ },
+ "location": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "my_response": {
+ "enum": [
+ "none",
+ "organizer",
+ "tentativelyAccepted",
+ "accepted",
+ "declined",
+ "notResponded"
+ ]
+ },
+ "organizer": {
+ "anyOf": [
+ {
+ "$ref": "#/$defs/recipient"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "preview": {
+ "anyOf": [
+ {
+ "maxLength": 255,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "recurrence": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "show_as": {
+ "enum": [
+ "free",
+ "tentative",
+ "busy",
+ "oof",
+ "workingElsewhere",
+ "unknown"
+ ]
+ },
+ "start": {
+ "format": "date-time",
+ "type": "string"
+ },
+ "subject": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "time_zone": {
+ "type": "string"
+ },
+ "web_link": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ }
+ },
+ "required": [
+ "id",
+ "subject",
+ "start",
+ "end",
+ "time_zone",
+ "is_all_day",
+ "location",
+ "organizer",
+ "is_organizer",
+ "my_response",
+ "show_as",
+ "attendee_count",
+ "calendar_id",
+ "preview",
+ "body",
+ "body_truncated",
+ "attendees",
+ "web_link",
+ "recurrence"
+ ],
+ "type": "object"
+ },
+ "recipient": {
+ "additionalProperties": false,
+ "description": "A person's name and address.",
+ "properties": {
+ "address": {
+ "type": "string"
+ },
+ "name": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ }
+ },
+ "required": [
+ "name",
+ "address"
+ ],
+ "type": "object"
+ }
+}
addedOutput schema / $schema
Added value: +"https://json-schema.org/draft/2020-12/schema"
changedOutput schema / additionalProperties
Previous value: -trueNew value: +false
addedOutput schema / description
Added value: +"The updated event."
addedOutput schema / properties
Added value: +{
+ "attendees_notified": {
+ "type": "boolean"
+ },
+ "changed_fields": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "event": {
+ "$ref": "#/$defs/event_detail"
+ },
+ "summary": {
+ "description": "One-line human summary. The tool's text content is this result serialized as JSON (summary included), so a client that ignores structuredContent still sees every field.",
+ "type": "string"
+ }
+}
addedOutput schema / required
Added value: +[
+ "event",
+ "attendees_notified",
+ "changed_fields",
+ "summary"
+]