Token导航 LogoToken导航TokenDH.com
Renfield MCP Calendar logo
日程管理stdio官方级别未说明来源级核验

Renfield MCP Calendar

MCP Server

通过单一接口统一访问Exchange、Google Calendar和CalDAV日历的服务,支持多日历配置和跨日历合并查询。

工具数

6

提示词数

0

GitHub Stars

0

资源数

0
日程管理Python开发工具

安装说明

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

作者 / 组织

ebongard

提供方

ebongard

最后核验

2026/5/17 20:20

快速接入

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

命令预览

pip install renfield-mcp-calendar

详细介绍

伦菲尔德mcp日历

用于日历访问的统一MCP服务器--连接 交易所(EWS), 谷歌日历,以及 CalDAV (Nextcloud、ownCloud、Radical)通过单一 模型上下文协议 界面。

特性

  • 多日历 --通过YAML配置多个日历帐户,单独或一次性查询它们
  • 跨日历合并list_events 如果没有日历参数,则返回按时间顺序排序的所有日历中的事件
  • 三个后端 -Exchange Web服务(EWS)、Google日历API、CalDAV
  • 配置中没有密码 --通过环境变量名引用的凭据
  • 延迟连接 --后端客户端在首次使用时初始化,而不是在启动时初始化
  • 异步就绪 --所有阻塞I/O都用 asyncio.run_in_executor
  • 谷歌OAuth2助手 --内置 --auth google CLI用于初始令牌设置

安装

pip install renfield-mcp-calendar

或者直接从GitHub:

pip install "renfield-mcp-calendar @ https://github.com/ebongard/renfield-mcp-calendar/archive/refs/heads/main.tar.gz"

配置

CALENDAR_CONFIG 指向您的YAML配置文件(默认值: /config/calendar_accounts.yaml).

示例 calendar_accounts.yaml

calendars:
  # Exchange 2019 (on-premise, direct EWS endpoint)
  - name: work
    label: "Work Calendar"
    type: ews
    ews_url: "https://exchange.example.com/EWS/Exchange.asmx"
    username_env: CALENDAR_WORK_USERNAME
    password_env: CALENDAR_WORK_PASSWORD

  # Google Calendar (OAuth2 Desktop Flow)
  - name: family
    label: "Family Calendar"
    type: google
    calendar_id: "primary"
    credentials_file: "/config/google_calendar_credentials.json"
    token_file: "/data/google_calendar_token.json"

  # Nextcloud / CalDAV
  - name: club
    label: "Club Calendar"
    type: caldav
    url: "https://nextcloud.example.com/remote.php/dav/calendars/user/club/"
    username_env: CALENDAR_CLUB_USERNAME
    password_env: CALENDAR_CLUB_PASSWORD

安全: 密码和令牌是 从不 存储在YAML文件中--使用 *_env 引用环境变量名的字段。

后端特定注意事项

后端身份验证注释
早期预警系统交换库NTLM/基本直接EWS URL,无需自动发现
谷歌googleapi-python客户端OAuth2桌面流令牌自动刷新,一次性浏览器身份验证
CalDAV卡尔达夫基本授权适用于Nextcloud、ownCloud、Radical等。

谷歌日历设置(一次性)

  1. Google 云控制台 → 创建项目→ 启用 谷歌日历API
  2. 创建 OAuth2凭据 (桌面应用程序)→ 下载 credentials.json
  3. 地点为 google_calendar_credentials.json 在您的配置目录中
  4. 运行身份验证流:
   python -m renfield_mcp_calendar --auth google --calendar family
  1. 完成基于浏览器的授权——令牌会自动保存

MCP工具

工具参数说明
list_calendars--列出所有已配置的日历帐户
list_eventscalendar?, start, end一个或所有日历中的事件。空 calendar =从所有中合并。
create_eventcalendar, title, start, end, description?, location?创建新事件
update_eventcalendar, event_id, title?, start?, end?, ...更新事件的特定字段
delete_eventcalendar, event_id删除事件
get_eventcalendar, event_id获取一个包含完整细节的单一活动

示例查询(通过LLM)

  • *“今天怎么样?”* → list_events() (所有日历,今天)
  • *“本周公司日历上有什么?”* → list_events(calendar="work", start="...", end="...")
  • *“明天下午2点做一个家庭约会:牙医”* → create_event(calendar="family", ...)
  • *“明天下午我有空吗?”* → list_events(start="...", end="...")

用法

# Run as MCP server (stdio transport)
python -m renfield_mcp_calendar

# Or via entry point
renfield-mcp-calendar

# Google OAuth2 setup (one-time)
python -m renfield_mcp_calendar --auth google --calendar family

克劳德桌面/MCP客户端配置

{
  "mcpServers": {
    "calendar": {
      "command": "python",
      "args": ["-m", "renfield_mcp_calendar"],
      "env": {
        "CALENDAR_CONFIG": "/path/to/calendar_accounts.yaml",
        "CALENDAR_WORK_USERNAME": "user@example.com",
        "CALENDAR_WORK_PASSWORD": "secret"
      }
    }
  }
}

发展

# Install with dev dependencies
pip install -e ".[dev]"

# Run tests (29 tests)
pytest tests/ -v

许可证

麻省理工学院

目录标签

目录标签

日程管理Python开发工具日历管理本地部署多平台集成日程同步企业协作

接入字段

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

stdio

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

none

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP