logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

office365-calendar-orchestrator-mcp-node

A dedicated service agent facilitating the orchestration of Microsoft Outlook calendar engagements via the robust Microsoft Graph API. Capabilities include creating, modifying, enumerating, and retiring scheduled appointments, alongside attendee resolution and integration points with other designated Model Context Protocol (MCP) infrastructure components.

Author

office365-calendar-orchestrator-mcp-node logo

anoopt

ISC License

Quick Info

GitHub GitHub Stars 12
NPM Weekly Downloads 0
Tools 1
Last Updated 2026-02-19

Tags

outlookschedulercalendaroutlook meetingsmeetings scheduleranoopt outlook

MseeP.ai Security Assessment Badge

Microsoft 365 Scheduling Gateway Service

This MCP Node service acts as a bridge for scheduling within Microsoft Outlook utilizing the underlying Microsoft Graph REST interface.

This operational unit empowers users to provision new diary entries, construct events incorporating participant manifests (including automated discovery of associated electronic mail addresses). It achieves superior interoperability when linked with external MCP nodes, such as the GitHub interaction point, to elevate procedural efficiency.

Outlook Meetings Scheduler Server MCP server

Illustrative Operational Prompts

  • Arrange a consultation session with Sarah for the subsequent day at 15:00 hours.
  • Institute a new booking termed "Initiation of Core Project" for the following afternoon at 14:00. Enlist Megan and John as mandatory attendees.

Interoperability with GitHub MCP Node

  • In the specified organization/repository, generate a novel tracking ticket titled "Rectify pagination anomaly in personnel dashboard" with the substance "Personnel report redundant listings during sequential page traversal." Subsequently, establish a calendar notification for myself to examine this ticket the day after tomorrow at 15:00.

Demonstration

Available Atomic Operations

  1. find-person
  2. Resolve an individual's electronic mail identifier based on their nomenclature.
  3. Input: name (String)
  4. Output: A collection of matching profiles detailing names and electronic mail addresses

  5. create-event

  6. Provision a new diary entry leveraging the Microsoft Graph API framework.
  7. Inputs:
    • subject (String): The title of the scheduled calendar item.
    • body (String): The descriptive content or main text of the appointment.
    • start (Optional): Time designated for commencement in ISO 8601 format (e.g., 2025-04-20T12:00:00).
    • end (Optional): Time designated for conclusion in ISO 8601 format (e.g., 2025-04-20T13:00:00).
    • timeZone (Optional): The temporal zone designation for the entry (Default: "GMT Standard Time").
  8. Output: Comprehensive event metadata including the resource URI and unique identifier.

  9. create-event-with-attendees

  10. Construct a calendar fixture explicitly designating participants utilizing the Microsoft Graph API.
  11. Inputs:
    • subject (String): The title of the calendar engagement.
    • body (String): The textual payload for the event.
    • start (Optional): Commencement instant in ISO format.
    • end (Optional): Termination instant in ISO format.
    • timeZone (Optional): The designated temporal offset.
    • location (Optional): The physical or virtual venue for the meeting.
    • attendees: A structured array containing participant objects: { email, name (Optional), type (Optional) }
  12. Output: Full event specifics encompassing the access URL, system ID, and finalized attendee roster.

  13. get-event

  14. Retrieve granular particulars for a specific diary entry using its assigned identifier.
  15. Input:
    • eventId (String): The unique system key of the targeted entry.
  16. Output: Detailed event object featuring subject, temporal markers, participants, and web linkage.

  17. list-events

  18. Generate a roster of scheduled diary items, supporting optional criteria filtering.
  19. Inputs:
    • subject (Optional): Textual filter matching substrings within event subjects.
    • startDate (Optional): ISO formatted temporal boundary for the earliest event date.
    • endDate (Optional): ISO formatted temporal boundary for the latest event date.
    • maxResults (Optional): Constraint on the maximum quantity of records returned.
  20. Output: A catalog of calendar entries with essential attributes and identifiers.

  21. delete-event

  22. Permanently remove a designated calendar appointment from the system.
  23. Input:
    • eventId (String): The unique key identifying the item slated for erasure.
  24. Output: A status confirmation affirming the successful deletion.

  25. update-event

  26. Modify parameters of an already existing calendar fixture.
  27. Inputs:
    • eventId (String): The identifier of the record to be revised.
    • subject (Optional): The newly assigned title.
    • body (Optional): The revised descriptive content.
    • start (Optional): The updated beginning timestamp in ISO format.
    • end (Optional): The updated conclusion timestamp in ISO format.
    • timeZone (Optional): The revised temporal context.
    • location (Optional): The new venue designation.
    • attendees (Optional): A replacement array of participant objects.
  28. Output: Metadata for the revised event, reflecting all applied modifications.

  29. update-event-attendees

  30. Perform additive or subtractive operations on the roster of participants for an engagement.
  31. Inputs:
    • eventId (String): The identifier of the event under revision.
    • addAttendees (Optional): A collection of participant objects to incorporate.
    • removeAttendees (Optional): A collection of electronic mail addresses to excise from the invitation list.
  32. Output: Updated participant manifest for the event.

Deployment Prerequisites

Microsoft Graph API Credentials Acquisition

  1. Initiate an application registration within the Microsoft Azure Portal.
  2. Generate a corresponding client credential (secret).
  3. Assign requisite operational authorizations (Within Microsoft Graph API permissions: Establish Calendars.ReadWrite, People.Read.All, and User.ReadBasic.All under Application permissions).
  4. Securely record your Client Identifier, Client Secret, and Tenant Identifier.

Operationalization within VS Code

Local Execution via Node.js

One can execute the MCP service directly using Node.js from the locally compiled sources:

  1. Obtain the repository sources and compile the necessary binaries: bash git clone https://github.com/anoopt/outlook-meetings-scheduler-mcp-server.git cd outlook-meetings-scheduler-mcp-server npm install npm run build

  2. For manual integration, integrate the subsequent JSON structure into your primary VS Code User Settings file (JSON). Access this via Ctrl + Shift + P followed by typing Preferences: Open User Settings (JSON).

Alternatively, place this configuration within a .vscode/mcp.json file inside your project workspace to facilitate configuration sharing:

{ "mcpServers": { "outlook-meetings-scheduler": { "command": "node", "args": [ "/path/to/outlook-meetings-scheduler-mcp-server/build/index.js" ], "env": { "CLIENT_ID": "", "CLIENT_SECRET": "", "TENANT_ID": "", "USER_EMAIL": "" } } } }

Substitute /path/to/outlook-meetings-scheduler-mcp-server with the absolute filesystem path to your cloned directory.

Containerized Execution via Docker

Instantiate the MCP service using a Docker container locally. Build the necessary image with the following invocation:

bash docker build -t mcp/outlook-meetings-scheduler .

For manual integration, append the succeeding JSON configuration to your VS Code User Settings (JSON). Access this via Ctrl + Shift + P followed by typing Preferences: Open User Settings (JSON).

Alternatively, store this in .vscode/mcp.json within your workspace for shared configuration:

{ "inputs": [ { "type": "promptString", "id": "client_secret", "description": "Input the requisite client credential", "password": true } ], "servers": { "outlook-meetings-scheduler": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "CLIENT_ID", "-e", "CLIENT_SECRET", "-e", "TENANT_ID", "-e", "USER_EMAIL", "mcp/outlook-meetings-scheduler" ], "env": { "USER_EMAIL": "", "CLIENT_ID": "", "CLIENT_SECRET": "${input:client_secret}", "TENANT_ID": "" } } } }

Execution via NPX Utility

{ "mcpServers": { "outlook-meetings-scheduler": { "command": "npx", "args": [ "-y", "outlook-meetings-scheduler" ], "env": { "CLIENT_ID": "", "CLIENT_SECRET": "", "TENANT_ID": "", "USER_EMAIL": "" } } } }

Usage with Claude Desktop Environment

Docker Method

  1. Deploy the MCP service locally using Docker. Build the necessary container image with:

bash docker build -t mcp/outlook-meetings-scheduler .

  1. Integrate the following configuration into your claude_desktop_config.json file:

{ "mcpServers": { "outlook-meetings-scheduler": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "CLIENT_ID", "-e", "CLIENT_SECRET", "-e", "TENANT_ID", "-e", "USER_EMAIL", "mcp/outlook-meetings-scheduler" ], "env": { "CLIENT_ID": "", "CLIENT_SECRET": "", "TENANT_ID": "", "USER_EMAIL": "" } } } }

NPX Method for Desktop

{ "mcpServers": { "outlook-meetings-scheduler": { "command": "npx", "args": [ "-y", "outlook-meetings-scheduler" ], "env": { "CLIENT_ID": "", "CLIENT_SECRET": "", "TENANT_ID": "", "USER_EMAIL": "" } } } }

Operational Examples

Orchestration with GitHub MCP Node

This component can be chained with others, like the GitHub node, to enable sophisticated operational sequences.

Issue Creation and Review Scheduling

Instantiate a tracking item in the organization/repo repository titled "Eliminate duplication error in UI navigation" with the description "Users observe repeated display elements when moving across sequential pages." Subsequently, mandate a calendar appointment be set for my review of this item on the following day at 15:00.

This procedure achieves the following: 1. Invokes the GitHub MCP node to formally create the issue. 2. Commands the Outlook Scheduling Node to provision the corresponding calendar entry for review.

Scheduling a Review Based on a Code Modification Request (PR)

Locate the active Pull Request concerning the authentication enhancement within the organization/app-backend repository and organize a peer code inspection session with the commit authors for the ensuing morning.

This results in: 1. Utilization of the GitHub MCP node to identify the PR and ascertain the relevant team members. 2. Deployment of the Outlook Scheduling Node to arrange the meeting with the identified personnel.

Configuration for Coordinated MCP Deployment

To enable simultaneous operation of both GitHub and Outlook scheduling nodes:

{ "mcpServers": { "outlook-meetings-scheduler": { "command": "npx", "args": [ "-y", "outlook-meetings-scheduler" ], "env": { "CLIENT_ID": "", "CLIENT_SECRET": "", "TENANT_ID": "", "USER_EMAIL": "" } }, "github": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/github-mcp" ], "env": { "GITHUB_TOKEN": "" } } } }

Direct Interaction Examples

Acquiring Contact Email Details

I need to coordinate a meeting with John Smith. Can your system resolve his organizational email address?

Drafting a Basic Calendar Placeholder

Provision an event designated "Bi-weekly Team Coordination" set for the upcoming Monday at 10:00, featuring the subsequent agenda points: - Status of ongoing tasks - Allocation of resources - Queries and points for discussion

Arranging a One-on-One Session

Set up a dedicated consultation with Sarah scheduled for the following day at 15:00.

This action triggers the find-person tool to ascertain Sarah's electronic mail address, subsequently creating the diary entry. This process relies on the find-person utility—which queries the Microsoft Graph API against the provided USER_EMAIL context or performs a directory search by the given name.

Scheduling an Event with Multiple Participants

Instantiate a gathering titled "Initiation of Core Project" for the day after tomorrow at 14:00. Designate sarah.jones@example.com and mike.thompson@example.com as mandatory invitees. The meeting discussion points are: 1. Core concept exposition 2. Timetable deliberation 3. Role assignment confirmation 4. Subsequent actions required

Compilation Procedure

bash

Install all requisite dependencies

npm install

Generate the production build artifacts

npm run build

Docker image creation command

docker build -t mcp/outlook-meetings-scheduler .

Licensing Information

This MCP service is distributed under the terms of the ISC License. Comprehensive details are available in the repository's LICENSE documentation file.

This service component maintains no formal affiliation with Microsoft Corporation or the Microsoft Graph API ecosystem. Deployment is undertaken at the user's sole discretion and liability. Users must rigorously adhere to all extant corporate governance policies and guidelines when utilizing this functionality.

WIKIPEDIA: Corporate management apparatus encompasses all methodologies, programmatic solutions, regulatory frameworks, computational systems, and control mechanisms deployed by entities to effectively navigate evolving commercial landscapes, secure a competitive market posture, and systematically enhance overall operational efficacy.

== General Survey == Organizational functions often dictate the specialization of management tools. These can be categorized across various operational facets: foresighted planning instruments, workflow control systems, record maintenance utilities, human resource management applications, data-driven determination aids, performance oversight mechanisms, and so forth. A functional taxonomy might encompass these universal domains:

Utilities for capturing and validating input data across all business units. Software designed for monitoring and refining established operational procedures. Applications focused on aggregating metrics and supporting executive decision-making. Contemporary business tooling has undergone radical transformation over the past decade, fueled by rapid technological advancements, making the selection of optimal solutions challenging for any given organizational setting. This complexity stems from persistent drivers like the imperative to reduce expenditure while augmenting revenue, the commitment to accurately deciphering client requirements, and the pressure to deliver requisite products in the manner clients demand. Within this environment, executive leadership must adopt a strategic perspective regarding business management software, moving beyond a mere attraction to the newest available solution. A frequent pitfall is adopting off-the-shelf tools without necessary customization, leading to systemic instability. Consequently, these management utilities demand careful selection, followed by tailored implementation to match the organization's unique requirements, rather than vice versa.

== Predominantly Utilized Instruments == Bain & Company conducted a global survey in 2013 to map the prevalence of business tools, reflecting how their resultant data supported regional necessities amidst differing economic climates. The top ten instruments identified included:

Strategic foresight planning Client relationship lifecycle management Personnel sentiment assessment methodologies Competitive performance analysis (Benchmarking) Holistic performance measurement frameworks (Balanced Scorecard) Identification of core organizational capabilities External resource sourcing strategies (Outsourcing) Structured organizational transformation programs Logistics and resource flow oversight (Supply Chain Management) Formalized organizational objective and vision articulation Target market delineation Comprehensive quality assurance protocols (Total Quality Management)

== Enterprise Software Applications == A collection of computer programs utilized by professional staff to execute diverse organizational functions is designated as business software (or an enterprise application). These digital solutions are employed to enhance productivity metrics, quantify performance outputs, and manage various corporate activities with high fidelity. This evolution commenced with rudimentary Management Information Systems (MIS), expanded into comprehensive Enterprise Resource Planning (ERP) suites, subsequently incorporated Customer Relationship Management (CRM) capabilities, and has ultimately migrated into the domain of cloud-based business management platforms. While a tangible correlation exists between Information Technology investment and organizational success metrics, two factors are critical differentiators for value creation: the efficacy of the implementation process and the judicious selection and subsequent adaptation of the chosen technological instruments.

== Tools Tailored for Small and Medium Enterprises (SMEs) == Solutions specifically designed for SMEs are crucial as they offer avenues for fiscal conservation and operational streamlining...

See Also

`