Token导航 LogoToken导航

MCP Server · 搜索检索

cal2prompt MCP

✨ Fetches your schedule (Google Calendar) and outputs it as a single LLM prompt, with an optional MCP server mode.

HTTP官方级别未说明来源级核验工具 0
日程管理命令行工具RustClaudeClaude Desktop

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
shuntaka9576
提供方
shuntaka9576

工具数量

0

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

15

仓库热度

收录来源

3 个

MCP.so

选型结论

cal2prompt MCP 属于搜索检索类 MCP Server,公开资料标注 0 个工具,通过HTTP 远程服务接入,适配 Claude Desktop、Claude,没有现成的安装命令;接入前先确认权限范围。

分类

搜索检索

传输方式

HTTP

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

远程服务不用写启动命令,在客户端 MCP 配置里填服务地址即可,具体字段按官方文档填写。

上手步骤

  1. 1

    确认访问方式

    这是HTTP 远程服务,本地不用装依赖;先确认服务地址、账号归属和额度,再决定接哪个客户端。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填服务地址;需要授权的先完成登录,再回到客户端刷新。

  4. 4

    验证是否可用

    连接成功后客户端会列出 0 个工具,随便调一个只读工具确认能返回结果。

接入前确认

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

公开资料仍需确认:安装命令

详细介绍

*⚠️ 这个项目仍处于试验阶段。功能可能会更改,恕不另行通知。小心使用! ⚠️*

cal2prompt

cal2prompt是一个命令行工具,可以获取您的日程安排(例如,从谷歌日历),并通过模板引擎将其转换为自定义提示或文本片段。它可以直接输出到stdout,也可以作为实验性的MCP(模型上下文协议)服务器运行。

cal2prompt使用 谷歌日历API第3版.

*CLI示例*

*模型上下文协议(MCP)示例(实验)*

特性

  • 🚀 谷歌日历集成\

利用 谷歌日历API v3 获取您的日程安排。

  • 📄 使用模板引擎进行灵活的LLM提示定制\

使用自定义生成的提示 Jinja2 模板引擎。

  • ⚡️ 快速燃烧\

Rust生态系统支持的高速处理。

  • 🔧 实验MCP模式\

运行cal2prompt作为 模型上下文协议 服务器。

安装

Brew(MacOS)

brew install shuntaka9576/tap/cal2prompt

货物(吉)

git clone https://github.com/shuntaka9576/cal2prompt
cd cal2prompt
cargo install --path .

用法

$ cal2prompt --help
✨ Fetches your schedule (e.g., from Google Calendar) and converts it into a single LLM prompt. It can also run as an MCP (Model Context Protocol) server.

Usage: cal2prompt [OPTIONS] [COMMAND]

Commands:
  mcp   Launch cal2prompt as an MCP server (experimental).
  help  Print this message or the help of the given subcommand(s)

Options:
      --since   Start date (YYYY-MM-DD). Requires --until.
      --until   End date (YYYY-MM-DD). Requires --since.
      --today         Fetch events for today only.
      --this-week     Fetch events for the current week (Mon-Sun).
      --this-month    Fetch events for the current month (1st - end).
      --next-week     Fetch events for the upcoming week (Mon-Sun).
  -h, --help          Print help
  -V, --version       Print version

初始设置

1.设置谷歌OAuth2.0客户端

我们使用OAuth2对您的Google帐户进行身份验证。身份验证后,生成的令牌将存储在 oauth 位于平台数据目录中的文件(例如。, ~/.local/share/cal2prompt/oauth 在Linux上)。当您首次启动cal2prompt时,身份验证过程将自动开始——只需按照屏幕上的说明进行操作。

目前,您必须使用自己的日历API令牌。日历API令牌只授予有限数量的用户,需要谷歌的批准。即使我作为项目所有者提供谷歌批准的客户,也不可避免地会存在安全风险。因此,您需要创建和管理自己的令牌。

请按照以下步骤操作 docs/setup oauth 创建自己的Google“项目”并获得OAuth令牌。

2.设置配置

配置是用Lua编写的。下面是一个配置示例。如果你愿意,你可以将公共和私人信息分开到单独的文件中——只需对其进行自定义以满足你的需求。

创建 ~/.config/cal2prompt/secrets.lua 并添加以下内容。文件名可以是任何名称,只要它与后面提到的config.lua中的require语句匹配。

请指定您之前创建的clientID、clientSecret和日历ID。您可以在Google日历web UI中找到日历ID。

local M = {}

M.google = {
  clientID = "***.apps.googleusercontent.com",
  clientSecret = "***",
  calendarIDs = {
    "example@gmail.com"
  },
}

return M

创建 ~/.config/cal2prompt/config.lua 并增加以下内容:

local cal2prompt = require("cal2prompt") -- builtin module
local os = require("os") -- stdlib
local secrets = require("secrets")

return {
  settings = {
    -- see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
    -- TZ = "Etc/UTC",
    TZ = "Asia/Tokyo",
    -- TZ = "America/Los_Angeles"
    -- TZ - "Asia/Shanghai"
  },
  source = {
    google = {
      oauth2 = {
        clientID = secrets.google.clientID,
        clientSecret = secrets.google.clientSecret,
      },
      calendar = {
        getEvents = {
          calendarIDs = secrets.google.calendarIDs,
        },
      },
    },
  },
  output = {
    -- template = cal2prompt.template.google.standard
    template = [[
Here is your schedule summary. Please find the details below:
{% for day in days %}
## Date: {{ day.date }}
--------------------------------------

### All-Day Events:
{% if day.all_day_events|length == 0 %}
  (No all-day events)
{% else %}
  {% for ev in day.all_day_events %}
  - {{ ev.summary }}
    - (All Day)
    - Location: {{ ev.location or "N/A" }}
    - Description: {{ ev.description or "No description." }}
    - Attendees:
      {% if ev.attendees|length > 0 %}
        {% for a in ev.attendees %}
        - {{ a }}
        {% endfor %}
      {% else %}
      - (No attendees)
      {% endif %}
  {% endfor %}
{% endif %}

### Timed Events:
{% if day.timed_events|length == 0 %}
  (No timed events)
{% else %}
  {% for ev in day.timed_events %}
  - {{ ev.summary }}
    - Start: {{ ev.start }}
    - End:   {{ ev.end }}
    - Location: {{ ev.location or "N/A" }}
    - Description: {{ ev.description or "No description." }}
    - Attendees:
      {% if ev.attendees|length > 0 %}
        {% for a in ev.attendees %}
        - {{ a }}
        {% endfor %}
      {% else %}
      - (No attendees)
      {% endif %}
  {% endfor %}
{% endif %}
{% endfor %}
]],
  },
}
3.CLI身份验证

cal2prompt执行OAuth 2.0流以获取身份验证凭据。有关详细的分步流程说明,请参阅 docs/setup-cli-auth

cal2prompt

将Claude Desktop与MCP集成

请将以下配置添加到 ~/Library/Application\ Support/Claude/claude_desktop_config.json:

  • 对于 mcpServers.cal2prompt.command:您必须指定通过运行以下命令获得的完整路径 which cal2prompt.
  • 对于 mcpServers.cal2prompt.env.HOME:由于Claude Desktop可能不会继承HOME环境变量,因此需要显式设置。
{
  "mcpServers": {
    "cal2prompt": {
      "command": "/Users/username/.cargo/bin/cal2prompt",
      "args": ["mcp"],
      "env": {
        "HOME": "/Users/username"
      }
    }
  }
}

配置

配置选项

变量名称必填描述默认值
settings.TZ真的安娜 时区格式。(例如。 America/Los_Angeles Asia/Tokyo)UTC
settings.oauthFilePathfalse临时存储OAuth2.0令牌的路径。通常,除非用户有自定义设置,否则不需要更改此设置~/.local/share/cal2prompt/oauth
source.google.oauth2.clientIDtrue用于使用Google日历API进行身份验证的Google OAuth2客户端ID。*(无默认值;必须指定)*
source.google.oauth2.clientSecrettrue用于使用Google日历API进行身份验证的Google OAuth2客户端机密。*(无默认值;必须指定)*
source.google.oauth2.scopesfalse授予Google OAuth 2.0客户端的范围。请参考 这里 对于范围的类型。\[https://www.googleapis.com/auth/calendar.events\]
source.google.oauth2.redirectURLfalse谷歌将向其发送响应的OAuth2回调URL"http://127.0.0.1:9004"
source.google.calendar.getEvents.calendarIDstrue一个或多个谷歌日历ID的列表,cal2prompt将从中获取事件。每个ID通常都可以在您的Google日历设置中找到。如果提供了多个ID,则将按时间顺序提取和组合每个日历中的事件。*(无默认值;必须指定)*
output.templatetrue一个字符串,定义获取的日历数据应如何格式化/输出。*(无默认值;必须指定)*
experimental.mcp.insertCalendarEvent.calendarIDfalse使用实验性MCP功能时将插入新事件的Google日历的ID。没有

环境

变量名称描述默认值
CAL2_PROMPT_CONFIG_FILE_PATH如果不想使用默认值,则指向自定义Lua配置文件的路径。~/.config/cal2prompt/config.lua

工具与能力

工具数量

0

资源数量

0

提示词数量

0

能力标签

research-and-data日程管理Rust本地部署GoogleCalendar集成命令行工具模板引擎Rust开发

支持客户端

Claude DesktopClaude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

查资料带出处

把网页、论文和文档的检索结果连同链接一起带回对话。

站内知识检索

在自己的文档库里做语义搜索,比关键词更贴题。

事实核对

交叉多个来源确认一条信息,减少模型凭记忆作答。

选择建议

值得选的地方

  • 只提供 0 个工具,职责集中,接入后不容易误操作。
  • 已经适配 Claude Desktop、Claude,换客户端不用重新研究配置。
  • 3 个目录同时收录,信息可以交叉核对。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在搜索检索场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
cal2prompt MCP

MCP.so · 本页

0HTTP未标注3 个2026-05-17
Baidu Netdisk

MCP World

未标注未说明未标注1 个2026-05-17
Sequentialthinking

MCP.so

1SSE有2 个2026-05-17
Brave Search 433812ff

MCP World

2未说明未标注1 个2026-05-17
mindsdb (430e18)

MCP World

0未说明有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

cal2prompt MCP 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

cal2prompt MCP 怎么在 Claude Desktop、Cursor 里配置?

它是HTTP 远程服务,在客户端的 MCP 配置里填服务地址即可,不用本地装依赖;需要授权或 API Key 的,先在官方页面拿到凭据再填。

cal2prompt MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

cal2prompt MCP 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

cal2prompt MCP 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP