Token导航 LogoToken导航TokenDH.com
MCP Calender Agent logo
AI代理stdio官方级别未说明来源级核验

MCP Calender Agent

MCP Server

一个基于AI代理的macOS日历管理服务器,提供自然语言交互、事件创建、日程查询和智能更新等功能。

工具数

1

提示词数

0

GitHub Stars

1

资源数

0
日程管理PythonClaude自然语言处理Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

kristofferv98

提供方

kristofferv98

最后核验

2026/5/17 20:22

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run pytest tests

详细介绍

MCP iCal服务器

🗓️ 基于代理的macOS日历管理

![MIT License](https://choosealicense.com/licenses/mit/) ![Python 3.12+](https://www.python.org/downloads/) ![MCP Compatible](https://modelcontextprotocol.io)

该项目基于 Omar-V2/mcp 使用基于代理的方法重新实现用户交互层。

🌟 概述

使用专用的AI代理改变您与macOS日历的交互方式!此MCP iCal服务器利用OpenAI Agent SDK为您的所有日历操作提供了一个强大的入口点。

与公开多个工具的传统MCP实现不同,此服务器使用基于代理的方法:

  • 🧠 单工具界面:只需一个MCP工具(send_to_calendar_agent)委托给专门的日历代理
  • 🤖 有状态的对话:代理维护同一会话中请求之间的上下文
  • 🔄 零配置操作:由专业代理自动处理的自然语言处理
You: "What's my schedule for next week?"
Claude: "Let me check that for you..."
[Calendar agent processes request and returns clean schedule]

You: "Add a lunch meeting with Sarah tomorrow at noon"
Claude: "Event created: Lunch with Sarah, tomorrow at 12:00 PM"

✨ 特性

📅 事件创建

立即将自然语言转换为日历事件!

"Schedule a team lunch next Thursday at 1 PM at Bistro Garden"
↓
📎 Created: Team Lunch
   📅 Thursday, 1:00 PM
   📍 Bistro Garden

支持的功能:

  • 自定义日历选择
  • 位置和注意事项
  • 智能提醒
  • 周期性事件

高级用户示例:

🔄 Recurring Events:
"Set up my weekly team sync every Monday at 9 AM with a 15-minute reminder"

📝 Detailed Events:
"Schedule a product review meeting tomorrow from 2-4 PM in the Engineering calendar, 
add notes about reviewing Q1 metrics, and remind me 1 hour before"

📱 Multi-Calendar Support:
"Add a dentist appointment to my Personal calendar for next Wednesday at 3 PM"

🔍 智能日程管理和可用性

通过自然查询快速访问您的日程安排:

"What's on my calendar for next week?"
↓
📊 Shows your upcoming events with smart formatting

"When am I free to schedule a 2-hour meeting next Tuesday?"
↓
🕒 Available time slots found:
   • Tuesday 10:00 AM - 12:00 PM
   • Tuesday 2:00 PM - 4:00 PM

✏️ 智能事件更新

自然地修改事件:

"Move tomorrow's team meeting to 3 PM instead"
↓
✨ Meeting rescheduled to 3:00 PM

更新功能:

  • 时间和日期修改
  • 日历传输
  • 位置更新
  • 注释添加
  • 提醒调整
  • 反复出现的模式变化

📊 日历管理

  • 查看所有可用日历
  • 智能日历建议
  • 使用iCloud配置时,无缝集成Google日历
💡 专业提示:由于您可以在自定义日历中创建事件,如果您的Google日历与iCloud日历同步,您也可以使用此MCP服务器在Google日历中创建活动!只需在创建/更新事件时指定谷歌日历。

🚀 快速开始

💡 备注:虽然这些说明侧重于使用Claude for Desktop设置MCP服务器,但此服务器可以与任何兼容MCP的客户端一起使用。有关使用不同客户端的更多详细信息,请参阅 MCP文件.

先决条件

安装

虽然此MCP服务器可以与任何兼容MCP的客户端一起使用,但以下说明适用于桌面版的Claude。

  1. 克隆和设置
# Clone the repository
git clone https://github.com/yourusername/mcp-ical.git
cd mcp-ical

# Install dependencies
uv sync
  1. 使用API密钥为桌面配置Claude

创建或编辑 ~/Library/Application\ Support/Claude/claude_desktop_config.json 并包含您的OpenAI API密钥作为环境变量:

{
    "mcpServers": {
        "mcp-ical": {
            "command": "uv",
            "args": [
                "--directory",
                "/ABSOLUTE/PATH/TO/PARENT/FOLDER/mcp-ical",
                "run",
                "mcp-ical"
            ],
            "env": {
                "OPENAI_API_KEY": "your-api-key-here"
            }
        }
    }
}
  1. 启动Claude以访问日历
⚠️ 关键的:必须从终端启动Claude才能正确请求日历权限。直接从Finder启动不会触发权限提示。
/Applications/Claude.app/Contents/MacOS/Claude
  1. 开始使用!
Try: "What's my schedule looking like for next week?"
🔑 备注:当您首次使用与日历相关的命令时,macOS将提示您访问日历。只有当您按照上述规定从终端启动Claude时,才会出现此提示。

🧪 测试

⚠️ 警告:测试将创建临时日历和事件。虽然清理是自动的,但只在开发环境中运行测试。
# Install dev dependencies
uv sync --dev

# Run test suite
uv run pytest tests

🧠 运作原理

此实现使用了一种独特的架构:

  1. 一个MCP工具(send_to_calendar_agent)向客户公开
  2. 调用时,此工具将请求传递给使用OpenAI agent SDK构建的专用日历代理
  3. 代理处理自然语言请求并调用相应的日历操作
  4. 结果被格式化并返回给客户端

这种方法有几个优点:

  • 简化客户端集成:只能调用一个工具
  • 改进了上下文处理:代理维护对话状态
  • 更自然的互动:专业代理了解日历特定的术语和意图

❓ 这个项目与原始项目有何不同

此实现维护了来自以下方面的大部分核心日历功能 Omar-V2/mcp 但完全重新实现了用户交互层:

  1. 单一入口点:我们没有将多个MCP工具直接暴露给客户端,而是实现了一个委托给OpenAI驱动的代理的单一入口点
  2. 基于代理的处理:添加了一个OpenAI代理来处理自然语言理解和日历操作的翻译
  3. 有状态的对话:添加了同一会话中请求之间的对话上下文跟踪
  4. 简化客户端集成:客户只需要知道一个工具,而不是多个日历操作

核心日历操作(事件创建、列表等)和macOS集成与原始实现基本保持不变。

🐛 已知问题

重复发生的事件

  • 非标准定期计划可能并不总是设置正确
  • 使用更强大的LLM模型获得更好的结果
  • 全天重复事件的提醒时间可能会关闭一天

🤝 贡献

欢迎反馈和贡献!以下是您可以提供帮助的方式:

  1. 分叉存储库
  2. 创建功能分支
  3. 提交您的更改
  4. 推到分支
  5. 打开拉取请求

📝 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

📝 致谢

目录标签

目录标签

日程管理PythonClaude自然语言处理日历管理本地部署AI代理macOS集成事件调度

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

部署方式(deploymentType,部署类型)

local-only

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononelocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP