关于 crontap-schedule-http-job
面向需要定时调用 HTTP 端点的用户,指导使用 Crontap 创建、更新和检查作业计划。流程包括预览时间、配置请求,以及核对执行历史。
主要功能
- 01预览并确认自然语言频率
- 02创建 HTTP 或 HTTPS 调度
- 03部分更新现有计划
- 04查看分页运行历史
- 05检查状态、耗时与超时记录
适用场景
- 01按时调用每日报告端点
- 02更改现有计划的频率或时区
- 03检查首次运行及请求结果
MCP 相关
通过 Crontap MCP 预览、创建和更新计划,并读取运行历史;REST API 是 Ultra 账户可用的后备方式。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ crontap/ skills --skill crontap-schedule-http-job安装后在 Claude Code 中输入/crontap-schedule-http-job确认已加载。
详细介绍
安排 HTTP 任务
前提条件
使用所需工具前,请检查它们是否可用。如果有任何工具不可用,请停止并向用户提供恰好两个选项:
- 连接 Crontap MCP:
https://mcp.crontap.com/mcp。所有 Crontap 套餐均支持 MCP 访问。 - 为原始 API 配置
$CRONTAP_CLIENT_ID和$CRONTAP_API_KEY。原始 API 访问需要 Ultra 套餐。
在用户选择之前,不要擅自选择路径或继续操作。
- 确认绝对 HTTP 或 HTTPS 端点、方法、执行频率和 IANA 时区。
- 询问端点是否需要请求头、JSON 请求体或幂等键。
- 不要将凭据放入 URL 或日志中。请引用安全存储中的值。
工作流
- 预览通俗易懂的执行频率描述,并解决所有需要澄清的问题。
- 向用户展示确定后的 cron 表达式、时区和后续运行时间。
- 使用
text或cron中的一个创建计划,且只能使用其中一个。 - 修改计划时,先确认现有计划,然后只发送已更改的字段。
- 执行后,检查保留的历史记录并验证端点结果。
MCP 示例
预览但不保存:
{
"tool": "preview_schedule",
"arguments": {
"text": "every weekday at 09:15",
"timezone": "Europe/Copenhagen"
}
}
创建受保护的 JSON 请求:
{
"tool": "create_schedule",
"arguments": {
"url": "https://app.example.com/api/daily-report",
"text": "every weekday at 09:15",
"timezone": "Europe/Copenhagen",
"method": "POST",
"headers": {
"Authorization": "Bearer <secret-from-secure-store>",
"Content-Type": "application/json"
},
"body": {
"source": "crontap"
},
"label": "Daily report"
}
}
部分更新计划:
{
"tool": "update_schedule",
"arguments": {
"scheduleId": "<schedule-id>",
"cron": "30 9 * * 1-5",
"timezone": "Europe/Copenhagen"
}
}
省略的更新字段会保留现有配置,包括隐藏的请求机密信息。空的 headers 对象会替换并清除请求头。
读取近期运行记录:
{
"tool": "get_schedule_history",
"arguments": {
"scheduleId": "<schedule-id>",
"limit": 20
}
}
使用返回的 cursor 原样请求下一页。
REST 备用方案
仅当 MCP 不可用且账户拥有 Ultra API 访问权限时,才使用 REST。
REST 使用 interval、verb 和 data,而不是 MCP 别名。
curl --fail-with-body https://api.crontap.com/v1/schedule \
-X POST \
-H "ClientId: $CRONTAP_CLIENT_ID" \
-H "ApiKey: $CRONTAP_API_KEY" \
-H "Content-Type: application/json" \
--data '{
"url": "https://app.example.com/api/daily-report",
"interval": "30 9 * * 1-5",
"timezone": "Europe/Copenhagen",
"verb": "POST",
"headers": {
"Authorization": "Bearer <secret-from-secure-store>",
"Content-Type": "application/json"
},
"data": {"source": "crontap"},
"label": "Daily report"
}'
验证
- 确认已保存的 URL、方法、cron 表达式、时区和后续运行时间。
- 确认端点支持所选方法并返回成功状态。
- 首次运行后检查历史记录中的状态、耗时、超时和重试情况。
安全与套餐限制
- 创建计划前,预览本地时间计划,尤其要注意夏令时切换。
- 不要在无关的部分更新中覆盖请求头或集成配置。
- 如果可能发生重试或调用重叠,请确保写入端点具有幂等性。
- 如果套餐上限或最低执行频率限制导致无法创建,请说明包含四个选项的升级阶梯,并指出满足需求的最低选项。
故障排除
- 收到需要澄清的回复不代表失败。询问返回的问题,然后再次预览。
- 目标端点返回 401 或 403 通常意味着端点凭据已过期或格式错误。
- 超时意味着 Crontap 未能及时收到响应。提高重试次数前,请先检查端点运行时间和下游调用。
- MCP 返回 404 意味着计划 ID 已失效。重试前请先列出计划。
参考资料
评论
支持 Markdown