Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ENABLE_EMAILNo是否启用邮件模块true
ENABLE_TASKSNo是否启用待办模块true
ENABLE_CALENDARNo是否启用日历模块true
MS_GRAPH_CLIENT_IDYesAzure 应用客户端 ID (必填)
MS_GRAPH_TOKEN_PATHNoToken 缓存文件的绝对路径graph_token.json
MS_GRAPH_REDIRECT_URINo注册时填写的重定向 URIhttps://login.microsoftonline.com/common/oauth2/nativeclient

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{
  "tasks": {
    "list": {},
    "cancel": {},
    "requests": {
      "tools": {
        "call": {}
      },
      "prompts": {
        "get": {}
      },
      "resources": {
        "read": {}
      }
    }
  }
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_calendar_eventsA

列出用户主日历中的事件。 [注意] 调用前请务必先执行 get_current_time 获取当前时间。 [时区] 所有日期字符串必须使用本地时间 (UTC+8)。

参数: start_date (str, 可选): 查询范围的开始时间。ISO 8601 格式 (如 '2025-12-23T00:00:00')。必须是本地时间。 end_date (str, 可选): 查询范围的结束时间。ISO 8601 格式 (如 '2025-12-23T23:59:59')。必须是本地时间。

create_calendar_eventA

在主日历中创建新日程 (UTC+8)。

参数: subject (str): 日程标题。 start (str): 开始时间。ISO 8601 格式 (如 '2025-12-25T09:00:00')。必须是本地时间。 end (str): 结束时间。ISO 8601 格式 (如 '2025-12-25T10:00:00')。必须是本地时间。 body (str, 可选): 日程内容描述。 body_type (str, 可选): 内容类型,可选 'Text' 或 'HTML'。默认为 'HTML'。 location (str, 可选): 地点名称。 is_all_day (bool, optional): 是否为全天事件。默认为 False。 importance (str, optional): 重要程度:'low' (低), 'normal' (普通), 'high' (高)。默认为 'normal'。 categories (List[str], optional): 关联的分类名称列表。 is_reminder_on (bool, optional): 是否设置提醒。默认为 True。 reminder_minutes (int, optional): 开始前多少分钟发出提醒。默认为 15。

update_calendar_eventA

更新现有的日历事件 (UTC+8)。仅更新提供的字段。

参数: event_id (str): 待更新事件的唯一 ID。 subject (str, 可选): 新标题。 start (str, 可选): 新开始时间 (ISO 8601)。必须是本地时间。 end (str, 可选): 新结束时间 (ISO 8601)。必须是本地时间。 body (str, 可选): 新内容描述。 body_type (str, 可选): 'Text' 或 'HTML'。 location (str, 可选): 新地点。 is_all_day (bool, 可选): 是否更新为全天事件。 importance (str, 可选): 重要程度:'low', 'normal', 'high'。 categories (List[str], 可选): 新的分类列表。 is_reminder_on (bool, 可选): 是否开启提醒。 reminder_minutes (int, 可选): 提醒提前分钟数。

delete_calendar_eventC

删除日历事件。

参数: event_id (str): 待删除事件的唯一 ID。

get_user_schedulesA

[首选] 检查当前用户在特定时间段内是否有空 (UTC+8)。 当用户询问“我是否有空?”、“是否有冲突?”或“检查我的忙闲”时,请务必【优先】使用此工具而非 list_calendar_events。 它能更高效、更直观地提供时间段的占用情况。

参数: start (str): 查询范围的开始时间。ISO 8601 格式 (如 '2025-12-23T00:00:00')。必须是本地时间。 end (str): 查询范围的结束时间。ISO 8601 格式 (如 '2025-12-23T23:59:59')。必须是本地时间。 availability_view_interval (int, 可选): 响应中每个时间槽的持续分钟数。默认为 30。

list_tasksB

列出用户默认待办事项列表中的任务。

create_taskA

在 Microsoft To Do 中创建新任务 (UTC+8)。

参数: title (str): 任务标题。 body (str, 可选): 任务内容描述。 body_type (str, 可选): 'text' (纯文本) 或 'html'。默认为 'text'。 categories (List[str], 可选): 任务关联的分类。 due_date (str, 可选): 截止日期。ISO 8601 格式 (如 '2025-12-31T23:59:59')。必须是东八区本地时间 (UTC+8)。 start_date (str, 可选): 开始日期。ISO 8601 格式。必须是东八区本地时间 (UTC+8)。 reminder_date (str, 可选): 提醒日期/时间。ISO 8601 格式。必须是东八区本地时间 (UTC+8)。 importance (str, 可选): 重要程度:'low' (低), 'normal' (普通), 'high' (高)。 status (str, 可选): 任务状态:'notStarted', 'inProgress', 'completed', 'waitingOnOthers', 'deferred'。 completed_date (str, 可选): 任务完成日期。ISO 8601 格式。必须是东八区本地时间 (UTC+8)。

update_taskB

更新 Microsoft To Do 中现有的任务 (UTC+8)。

参数: task_id (str): 待更新任务的唯一 ID。 title (str, 可选): 新标题。 body (str, 可选): 新内容描述。 body_type (str, 可选): 'text' 或 'html'。 categories (List[str], 可选): 新分类列表。 due_date (str, 可选): 新截止日期 (ISO 8601)。必须是东八区本地时间 (UTC+8)。 start_date (str, 可选): 新开始日期 (ISO 8601)。必须是东八区本地时间 (UTC+8)。 reminder_date (str, 可选): 新提醒日期 (ISO 8601)。必须是东八区本地时间 (UTC+8)。 importance (str, 可选): 'low', 'normal', 'high'。 status (str, 可选): 'notStarted', 'inProgress', 'completed' 等。 completed_date (str, 可选): 新完成日期 (ISO 8601)。必须是东八区本地时间 (UTC+8)。

complete_taskC

将任务标记为已完成。

参数: task_id (str): 待完成任务的唯一 ID。

delete_taskC

删除任务。

参数: task_id (str): 待删除任务的唯一 ID。

list_emailsB

列出收件箱中的最近邮件 (UTC+8)。

参数: limit (int, 可选): 返回邮件的最大数量。默认为 10。

send_emailC

发送电子邮件。

参数: to (str): 收件人邮箱地址。 subject (str): 邮件主题。 body (str): 邮件正文内容。

delete_emailC

删除电子邮件。

参数: message_id (str): 待删除邮件的唯一 ID。

get_current_timeA

获取当前本地时间 (UTC+8)。处理相对时间请求时,请【必须】先调用此工具以获取参考时间。

Prompts

Interactive templates invoked by user choice

NameDescription
m365-assistant在调用本MCP的任何工具或资源前先阅读以下须知内容

Resources

Contextual data attached and managed by the client

NameDescription
get_time_resource获取当前的系统时间与时区信息 (UTC+8)。

TDQS

B3.3/5.0

Scored across 14 tools

Disambiguation4/5

Calendar and task CRUD tools are clearly separated by resource and action. However, complete_task overlaps with update_task (which can set status to completed), and list_calendar_events overlaps with get_user_schedules for schedule queries, creating minor ambiguity.

Naming Consistency5/5

All tool names use consistent snake_case verb_noun patterns (list_*, create_*, update_*, delete_*, get_*). Minor pluralization differences (list_calendar_events vs update_calendar_event) follow common conventions.

Tool Count5/5

14 tools cover calendar, tasks, email, and time, which is well within the ideal 3-15 range. No tool appears redundant or trivial.

Completeness3/5

Calendar and task surfaces provide create/list/update/delete, but lack get-by-id. Email coverage is notably thin: only list, send, and delete; missing read/get by ID, reply, forward, mark read, and update operations, which are core to an email domain.

Maintenance

ActivityInactive
ResponsivenessNo issues