Skip to main content
Glama
shadowfax92

MCP Apple Reminders

by shadowfax92

MCP 苹果提醒事项

用于与 macOS 上的 Apple Reminders 交互的模型上下文协议 (MCP) 服务器。

特征

  • 列表管理:查看 Apple 提醒事项应用中的所有提醒事项列表

  • 提醒检索:从特定列表中获取所有提醒

  • 创建提醒:创建带有标题、截止日期和注释的新提醒

  • 完成提醒:将提醒标记为已完成

  • 删除提醒:从列表中删除提醒

  • 日期处理:正确处理到期日的 ISO 日期格式

Related MCP server: Apple Reminders MCP Server

配置

与 Claude Desktop 一起使用

将其添加到您的claude_desktop_config.json中:

{
  "mcpServers": {
    "apple-reminders": {
      "command": "node",
      "args": [
        "/path/to/mcp-apple-reminders/dist/index.js"
      ]
    }
  }
}

NPX(即将推出)

{
  "mcpServers": {
    "apple-reminders": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-apple-reminders"
      ]
    }
  }
}

API

服务器公开了以下 MCP 工具用于与 Apple 提醒事项进行交互:

获取列表

返回所有提醒列表。

获取提醒

从特定列表返回提醒。

  • 参数:

    • listName (必填):提醒列表的名称

创建提醒

创建新的提醒。

  • 参数:

    • listName (必填):提醒列表的名称

    • title (必填):提醒的标题

    • dueDate (可选):提醒的截止日期(ISO 格式:“YYYY-MM-DDTHH:MM:SS.sssZ”)

    • notes (可选):提醒的注释

完成提醒

将提醒标记为已完成。

  • 参数:

    • listName (必填):提醒列表的名称

    • reminderName (必填):需要完成的提醒的名称

删除提醒

删除提醒。

  • 参数:

    • listName (必填):提醒列表的名称

    • reminderName (必填):要删除的提醒的名称

工作原理

该 MCP 服务器使用 AppleScript 与 macOS 上的 Apple 提醒事项应用进行交互。它通过模型上下文协议 (MCP) 为 AI 助手管理提醒事项提供了标准化接口。

发展

该项目使用 TypeScript 和 MCP SDK。如需扩展功能,请修改src/index.ts中的工具以及src/reminders.ts中的 AppleScript 函数。

要求

  • macOS(Apple Reminders 集成所需)

  • Node.js 16+

  • Apple 提醒事项应用至少配置了一个列表

执照

麻省理工学院

Available Tools

5 tools
completeReminderD
ParametersJSON Schema
NameRequiredDescriptionDefault
listNameYes
reminderNameYes

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

createReminderD
ParametersJSON Schema
NameRequiredDescriptionDefault
listNameYes
titleYes
dueDateNo
notesNo

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

deleteReminderD
ParametersJSON Schema
NameRequiredDescriptionDefault
listNameYes
reminderNameYes

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

getListsD
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

getRemindersD
ParametersJSON Schema
NameRequiredDescriptionDefault
listNameYes

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev1.0.0
    • ChangedgetLists1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
  2. 5 tool updates
    • First observedcompleteReminder
    • First observedcreateReminder
    • First observeddeleteReminder
    • First observedgetLists
    • First observedgetReminders

TDQS

C2/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: completeReminder, createReminder, and deleteReminder handle different lifecycle actions on reminders, while getLists and getReminders are distinct read operations for lists and reminders respectively. The naming makes it immediately clear what each tool does without ambiguity.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with camelCase styling: completeReminder, createReminder, deleteReminder, getLists, getReminders. The naming is perfectly predictable and follows the same convention throughout the entire set.

Tool Count4/5

Five tools is a reasonable number for a reminders server, covering core CRUD operations and list management. It's slightly lean but appropriate for the domain, though an updateReminder tool would make it more complete. The count is well-scoped without being excessive.

Completeness3/5

The tool set covers create, read (getReminders), and delete operations for reminders, plus list management (getLists) and completion (completeReminder). However, there's a notable gap: no updateReminder tool to modify existing reminders, which is a common operation in reminder systems. This missing functionality could cause agent workarounds.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers