日历工具服务器

提供日历和日期实用工具,帮助AI模型进行时间推理的协议服务器。

  • by mrpear
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 mrpear/calendar-mcp

使用说明

日历MCP服务器

模型上下文协议服务器提供日历和日期实用程序,以帮助人工智能模型进行时间推理。

特性

  • get_current _日期 -返回今天的日期和元数据(日期名称、周号等)
  • 每周一天 -获取任何日期的日期名称
  • get_week_range -获取日期周的周一至周日范围
  • 计算日期偏移 -从日期中添加/减去天数
  • is_same_week -检查两个日期是否在同一周
  • get_week_number -获取日期的ISO周数
  • 两天之间 -计算两个日期之间的天数

所有日期均采用ISO格式: YYYY-MM-DD

设置

1.安装uv

curl -LsSf https://astral.sh/uv/install.sh | sh

2.创建虚拟环境并安装依赖项

cd /path/to/calendar-mcp
uv venv --python 3.14
source .venv/bin/activate
uv sync

3.测试公用设施

python main.py

Claude代码配置

将此添加到您的 ~/.claude.json 文件:

{
  "mcpServers": {
    "calendar": {
      "type": "stdio",
      "command": "/path/to/uv",
      "args": [
        "--directory",
        "/path/to/calendar-mcp",
        "run",
        "--with",
        "mcp[cli]",
        "mcp",
        "run",
        "/path/to/calendar-mcp/src/calendar_mcp_server/server.py"
      ]
    }
  }
}

笔记:

  • 替换 /path/to/calendar-mcp 使用您的实际日历mcp目录路径
  • 替换 /path/to/uv 使用您的紫外二元路径(使用以下命令查找: which uv)
  • 配置后重新启动Claude代码

用法示例

User: "What is today's date and what week is it?"

Claude calls: mcp__calendar__get_current_date()
Server returns: {"date": "2026-02-18", "day_name": "Wednesday", "week_number": 8, ...}

Claude responds: "Today is Wednesday, February 18th, 2026 (week 8)."

可用工具

所有工具都以前缀 mcp__calendar__:

  • mcp__calendar__get_current_date() → 返回当前日期信息
  • mcp__calendar__get_day_of_week(date) → 日期名称(例如“星期三”)
  • mcp__calendar__get_week_range(date) → 周界限
  • mcp__calendar__calculate_date_offset(date, days) → 新日期
  • mcp__calendar__is_same_week(date1, date2) → 布尔
  • mcp__calendar__get_week_number(date) → 周数和年份
  • mcp__calendar__days_between(start_date, end_date) → 整数

发展

核心逻辑在于 src/calendar_mcp_server/date_utils.py 作为简单的Python函数。 MCP服务器包装器位于 src/calendar_mcp_server/server.py.

许可证

麻省理工学院