使用 Microsoft Graph API 在 Microsoft Outlook 中安排会议的 MCP 服务器。
此 MCP 服务器允许您创建日历事件,并与参与者(包括查找他们的电子邮件地址)一起创建事件。它无缝集成其他 MCP 服务器,如 GitHub MCP 服务器,以增强您的工作流程。
<a href="https://glama.ai/mcp/servers/@anoopt/outlook-meetings-scheduler-mcp-server"> <img width="380" height="200" src="https://gips3.baidu.com/it/u=3611983996,2647732500&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Outlook 会议调度器 MCP 服务器" /> </a>
find-person
name(字符串)create-event
subject(字符串):日历事件的主题body(字符串):日历事件的内容/正文start(可选):ISO 格式日期时间(例如,2025-04-20T12:00:00)end(可选):ISO 格式日期时间(例如,2025-04-20T13:00:00)timeZone(可选):事件的时间区域(默认:“GMT Standard Time”)create-event-with-attendees
subject(字符串):日历事件的主题body(字符串):日历事件的内容/正文start(可选):ISO 格式日期时间(例如,2025-04-20T12:00:00)end(可选):ISO 格式日期时间(例如,2025-04-20T13:00:00)timeZone(可选):事件的时间区域(默认:“GMT Standard Time”)location(可选):事件地点attendees:包含 { email, name(可选),type(可选)} 的数组get-event
eventId(字符串):要检索的事件 IDlist-events
subject(可选):按包含此文本的主题筛选事件startDate(可选):ISO 格式的开始日期(例如,2025-04-20T00:00:00)用于筛选事件endDate(可选):ISO 格式的结束日期(例如,2025-04-20T23:59:59)用于筛选事件maxResults(可选):返回的最大事件数delete-event
eventId(字符串):要删除的事件 IDupdate-event
eventId(字符串):要更新的事件 IDsubject(可选):日历事件的新主题body(可选):日历事件的新内容/正文start(可选):新的开始时间,ISO 格式(例如,2025-04-20T12:00:00)end(可选):新的结束时间,ISO 格式(例如,2025-04-20T13:00:00)timeZone(可选):事件的新时间区域location(可选):事件的新地点attendees(可选):包含 { email, name(可选),type(可选)} 的数组update-event-attendees
eventId(字符串):要更新的事件 IDaddAttendees(可选):要添加的参与者数组:{ email, name(可选),type(可选)}removeAttendees(可选):要从事件中移除的电子邮件地址数组此 MCP 服务器支持三种认证模式:
感谢 Lokka
最佳用途:模拟用户场景,访问特定用户的资料
最佳用途:服务器到服务器场景,自动化过程
最佳用途:自定义令牌管理,预获取的令牌
http://localhost(移动和桌面应用程序平台)注意:服务器默认使用内置的多租户应用程序,因此自定义应用程序设置是可选的。当需要身份验证时,设备代码和登录 URL 将直接出现在您的 MCP 客户端聊天界面中。
MCP 服务器通过 AUTH_MODE 环境变量支持不同的认证模式:
interactive(默认) - 浏览器或设备代码流的用户认证client_credentials - 使用客户端密钥的应用程序认证client_provided_token - 使用预获取的令牌向后兼容性:如果未指定 AUTH_MODE,服务器会自动检测模式:
CLIENT_SECRET → client_credentials 模式ACCESS_TOKEN → client_provided_token 模式interactive 模式(默认)您可以直接使用 Node.js 从本地构建运行 MCP 服务器:
git clone https://github.com/anoopt/outlook-meetings-scheduler-mcp-server.git
cd outlook-meetings-scheduler-mcp-server
npm install
npm run build
Ctrl + Shift + P 并键入“Preferences: Open User Settings (JSON)”来完成此操作。可选地,您可以将其添加到工作区中的 .vscode/mcp.json 文件中。这将允许您与其他用户共享配置:
交互模式(默认 - 零配置):
{
"mcpServers": {
"outlook-meetings-scheduler": {
"command": "node",
"args": [
"/path/to/outlook-meetings-scheduler-mcp-server/build/index.js"
]
}
}
}
交互模式,使用自定义应用程序:
{
"mcpServers": {
"outlook-meetings-scheduler": {
"command": "node",
"args": [
"/path/to/outlook-meetings-scheduler-mcp-server/build/index.js"
],
"env": {
"AUTH_MODE": "interactive",
"CLIENT_ID": "<YOUR_CLIENT_ID>",
"TENANT_ID": "<YOUR_TENANT_ID>"
}
}
}
}
客户端凭据模式:
{
"mcpServers": {
"outlook-meetings-scheduler": {
"command": "node",
"args": [
"/path/to/outlook-meetings-scheduler-mcp-server/build/index.js"
],
"env": {
"AUTH_MODE": "client_credentials",
"CLIENT_ID": "<YOUR_CLIENT_ID>",
"CLIENT_SECRET": "<YOUR_CLIENT_SECRET>",
"TENANT_ID": "<YOUR_TENANT_ID>",
"USER_EMAIL": "<YOUR_EMAIL>"
}
}
}
}
客户端提供的令牌模式:
{
"mcpServers": {
"outlook-meetings-scheduler": {
"command": "node",
"args": [
"/path/to/outlook-meetings-scheduler-mcp-server/build/index.js"
],
"env": {
"AUTH_MODE": "client_provided_token",
"ACCESS_TOKEN": "<YOUR_ACCESS_TOKEN>",
"TOKEN_EXPIRES_ON": "2025-10-03T12:00:00Z",
"USER_EMAIL": "<YOUR_EMAIL>"
}
}
}
}
注意:
- 使用内置的多租户 Azure AD 应用程序(适用于任何组织)
- USER_EMAIL 会根据已登录用户自动确定
- 用户将看到一次性同意提示(无需管理员批准)
- 零配置要求 - 开箱即用
交互模式,使用自定义应用程序:
{
"mcpServers": {
"outlook-meetings-scheduler": {
"command": "node",
"args": [
"/path/to/outlook-meetings-scheduler-mcp-server/build/index.js"
],
"env": {
"AUTH_MODE": "interactive",
"CLIENT_ID": "<YOUR_CLIENT_ID>",
你的租户ID
}
}
}
}
如果需要特定的品牌或租户限制,请使用自定义应用程序。
将 /path/to/outlook-meetings-scheduler-mcp-server 替换为您克隆的存储库的绝对路径。
使用 Docker 在本地运行 MCP 服务器。使用以下命令构建 Docker 镜像:
docker build -t mcp/outlook-meetings-scheduler .
手动安装,将以下 JSON 块添加到 VS Code 的用户设置(JSON)文件中。可以通过按 Ctrl + Shift + P 并键入“Preferences: Open User Settings (JSON)”来完成此操作。
可选地,您可以将其添加到工作区中的 .vscode/mcp.json 文件中。这将允许您与其他用户共享配置。
{
"inputs": [
{
"type": "promptString",
"id": "client_secret",
"description": "输入客户端密钥",
"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": "<YOUR_EMAIL>",
"CLIENT_ID": "<YOUR_CLIENT_ID>",
"CLIENT_SECRET": "${input:client_secret}",
"TENANT_ID": "<YOUR_TENANT_ID>"
}
}
}
}
交互模式(默认 - 零配置):
{
"mcpServers": {
"outlook-meetings-scheduler": {
"command": "npx",
"args": [
"-y",
"outlook-meetings-scheduler"
]
}
}
}
交互模式,使用自定义应用程序:
{
"mcpServers": {
"outlook-meetings-scheduler": {
"command": "npx",
"args": [
"-y",
"outlook-meetings-scheduler"
],
"env": {
"AUTH_MODE": "interactive",
"CLIENT_ID": "<YOUR_CLIENT_ID>",
"TENANT_ID": "<YOUR_TENANT_ID>"
}
}
}
}
客户端凭据模式:
{
"mcpServers": {
"outlook-meetings-scheduler": {
"command": "npx",
"args": [
"-y",
"outlook-meetings-scheduler"
],
"env": {
"AUTH_MODE": "client_credentials",
"CLIENT_ID": "<YOUR_CLIENT_ID>",
"CLIENT_SECRET": "<YOUR_CLIENT_SECRET>",
"TENANT_ID": "<YOUR_TENANT_ID>",
"USER_EMAIL": "<YOUR_EMAIL>"
}
}
}
}
客户端提供的令牌模式:
{
"mcpServers": {
"outlook-meetings-scheduler": {
"command": "npx",
"args": [
"-y",
"outlook-meetings-scheduler"
],
"env": {
"AUTH_MODE": "client_provided_token",
"ACCESS_TOKEN": "<YOUR_ACCESS_TOKEN>",
"TOKEN_EXPIRES_ON": "2025-10-03T12:00:00Z",
"USER_EMAIL": "<YOUR_EMAIL>"
}
}
}
}
docker build -t mcp/outlook-meetings-scheduler .
claude_desktop_config.json 中:{
"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": "<YOUR_CLIENT_ID>",
"CLIENT_SECRET": "<YOUR_CLIENT_SECRET>",
"TENANT_ID": "<YOUR_TENANT_ID>",
"USER_EMAIL": "<YOUR_EMAIL>"
}
}
}
}
交互模式(默认 - 零配置):
{
"mcpServers": {
"outlook-meetings-scheduler": {
"command": "npx",
"args": [
"-y",
"outlook-meetings-scheduler"
]
}
}
}
交互模式,使用自定义应用程序:
{
"mcpServers": {
"outlook-meetings-scheduler": {
"command": "npx",
"args": [
"-y",
"outlook-meetings-scheduler"
],
"env": {
"AUTH_MODE": "interactive",
"CLIENT_ID": "<YOUR_CLIENT_ID>",
"TENANT_ID": "<YOUR_TENANT_ID>"
}
}
}
}
客户端凭据模式:
{
"mcpServers": {
"outlook-meetings-scheduler": {
"command": "npx",
"args": [
"-y",
"outlook-meetings-s