mcpField
J
juggle-mcp

juggle-mcp

本地服务
github.com/chrischall生产力01 天前更新

关于 juggle-mcp

juggle-mcp 将家庭账户连接到 Juggle 保姆和宠物照看平台。它提供预订、照看者和对话信息,并要求确认后才能管理工作或与照看者沟通。

主要功能

  1. 01查看预订和照看者申请
  2. 02搜索照看者资料与评价
  3. 03读取对话和消息
  4. 04发布、接受、拒绝或取消工作
  5. 05写入操作需确认并应用隐私过滤

适用场景

  1. 01查看家庭照看工作的申请者
  2. 02按可用时间或服务查找照看者
  3. 03阅读或发送照看者消息
  4. 04预览操作后管理预订

MCP 相关

MCP 服务提供经身份验证的家庭资料、预订、照看者、评价和对话读取功能,以及需确认的预订管理和消息操作。每个家庭账户分别提供登录凭据。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"chrischall-juggle": {
"command": "npx",
"args": [
"-y",
"@chrischall/juggle-mcp"
],
"env": {
"JUGGLE_EMAIL": "<JUGGLE_EMAIL>",
"JUGGLE_PASSWORD": "<JUGGLE_PASSWORD>",
"JUGGLE_BASE_URL": "<JUGGLE_BASE_URL>",
"MCP_CONFIRM_MODE": "<MCP_CONFIRM_MODE>",
"MCP_CONFIRM_ELICITATION": "<MCP_CONFIRM_ELICITATION>",
"MCP_CONFIRM_TTL_SECONDS": "<MCP_CONFIRM_TTL_SECONDS>"
}
}
}
}
启动命令npx -y @chrischall/juggle-mcp
需要配置的环境变量
JUGGLE_EMAILThe email address you sign in to whyjuggle.com with (a family account). Needed by every tool except juggle_list_locations; the server starts without it.
JUGGLE_PASSWORD密钥Your whyjuggle.com password. Google/Facebook-only sign-ins are not supported. Needed by every tool except juggle_list_locations; the server starts without it.
JUGGLE_BASE_URLSite origin override, for tests or a local stub only. Defaults to https://whyjuggle.com; must be https (loopback http allowed).
MCP_CONFIRM_MODEConfirm-gated writes on clients without prompts: ask-user (default), auto, or refuse.
MCP_CONFIRM_ELICITATIONSet to off to skip the confirmation prompt even on clients that declare elicitation support.
MCP_CONFIRM_TTL_SECONDSHow long a write's confirmToken stays valid, in seconds (default 600).

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@chrischall/juggle-mcp0.2.0

工具

20

收录的工具列表 · 更新于 1 周前

此工具无需参数。

详细介绍

juggle-mcp

面向家庭账户的 Juggle MCP 服务。Juggle 是保姆和宠物看护服务平台。可查看您的看护需求及申请者、看护人员资料和评价、消息,还可进行需确认的预订变更。

由 AI(Claude Code)开发和维护。与 Juggle 无关联。 该网站没有公开 API;此服务会使用您的电子邮件和密码登录,并调用与网站相同的路由。这些路由根据网站的 JavaScript 映射而来。所有读取工具以及收藏 / 取消收藏操作均已通过已登录的家庭账户验证(2026-11-03);其他写入操作(发布看护需求、接受 / 拒绝看护人员、取消、发送消息、评价)会影响他人,尚未在实际环境中验证——请参阅 docs/JUGGLE-API.md。

设置

npx -y @chrischall/juggle-mcp
变量必填说明
JUGGLE_EMAIL是您用于登录 whyjuggle.com 的电子邮件地址(家庭账户)。
JUGGLE_PASSWORD是您的 whyjuggle.com 密码。暂不支持仅使用 Google / Facebook 登录的账户——请先在网站上设置密码。
JUGGLE_BASE_URL否覆盖网站源地址,仅用于测试 / 本地存根。默认为 https://whyjuggle.com;必须使用 https(允许回环地址使用 http)。
MCP_CONFIRM_MODE否在不支持提示词的客户端(claude.ai、Claude Desktop)上控制需确认的写入操作:ask-user(默认)——首次调用不会发送任何内容,而是返回预览和 confirmToken;模型必须先获得您的批准,再携带该令牌重新调用;auto——模型查看预览后可使用该令牌;refuse——拒绝写入操作。
MCP_CONFIRM_ELICITATION否设置为 off 时,即使客户端声明支持征询,也会跳过确认提示。
MCP_CONFIRM_TTL_SECONDS否confirmToken 的有效时长(默认 600 秒)。

服务无需凭据即可启动(以便宿主列出其工具);首次调用工具时会报告缺少哪些内容。密码被拒绝后不会自动重试。

工具

读取
工具功能说明
juggle_healthcheck检查 Juggle 登录是否已配置并通过验证,以及是否可以成功读取已验证页面
juggle_get_profile你的家庭资料:账户、城市、会员资格、工作统计数据、已保存地址(发布一次临时看护的地址 ID)、宠物;仅在请求时返回孩子的信息
juggle_get_payments_summary你的城市费率、已保存的银行卡(品牌/末 4 位)、会员资格、促销抵扣额和近期交易,金额以美元计
juggle_list_bookings列出你的临时看护/工作:状态、服务、开始时间、已预约的临时看护人员、待处理申请;可按进行中、过往或状态筛选
juggle_get_booking查看一项预约的详细信息:时间、孩子/宠物、备注、申请者和已预约的临时看护人员、付款总额、你可以执行的操作
juggle_list_sitters按可服务时间段、服务、关键词或姓名搜索你所在城市的临时看护人员
juggle_list_favorites列出你标记为收藏的临时看护人员。返回 returned(收藏人数);如果 Juggle 的 200 人上限可能导致列表不完整,还会返回 note;从 0.1.1 起不再返回 totalNumSitters,因为它统计的是全市临时看护人员,而不是你的收藏
juggle_get_sitter临时看护人员的公开资料:评分、经验、学校、认证、简介——绝不包含私人详情
juggle_get_reviews其他家庭为某位临时看护人员留下的评价,以及评价总数和平均评分
juggle_list_conversations你与临时看护人员的消息会话:最近一条消息、时间、未读数
juggle_get_conversation读取一个会话中的消息,先显示最新的一页
juggle_list_locationsJuggle 提供服务的城市及公布的婴幼儿看护/宠物看护费率(无需登录)

读取工具接受 view 参数:compact(默认值)返回精简投影,full 和 raw 则返回更多上游字段。juggle_list_bookings 和 juggle_list_conversations 还接受 brief 参数(每项显示一行,供 mcp-host 的上下文分组使用;参见技能中的“In context groups”)。对于资料、临时看护人员和付款工具, 即使使用 raw,返回内容仍受隐私允许列表限制。临时看护人员资料行中的私人字段(电话、出生日期、紧急联系人、背景调查回答、社交账号)、家庭电话号码和房屋说明,以及付款页面上的 Stripe 密钥都不会返回。唯一的例外是预约:其中会显示已预约该次临时看护的人员的电话号码,与网站上的显示相同。只有使用 include_kids 时才会返回孩子的详细信息。返回他人文本的工具(消息、 评价、临时看护人员简介、预约备注)会将其标记为不可信内容。

写入(需确认)
工具功能说明
juggle_post_job发布一次性婴幼儿看护/宠物看护/在家辅导工作(临时看护),可选择邀请一位临时看护人员
juggle_accept_sitter接受(预约)申请了你某项工作的临时看护人员
juggle_decline_sitter拒绝申请你某项工作的临时看护人员
juggle_cancel_booking取消预约;逾期取消只能接受一星评价的处罚,绝不支付费用
juggle_send_message在你与临时看护人员的会话中发送文本消息
juggle_favorite_sitter将一位临时看护人员添加到收藏
juggle_unfavorite_sitter将一位临时看护人员从收藏中移除
juggle_leave_review为已完成的预约中的临时看护人员留下 0–5 星(半星制)评价

每项写入操作的首次调用都不会发送任何内容。它会重新读取数据并返回 预览和 confirmToken。使用该令牌再次调用后,请求只会发送一次(参见上文的 MCP_CONFIRM_MODE)。发送后若发生 5xx 错误或连接中断,则会报告 status: "unknown",且绝不重试。本工具范围不包括任何涉及资金的操作(小费、付款、取消费用、 订阅、礼品卡),逾期取消也绝不会支付费用。

技能(无需服务)

skills/juggle 是一个 curl + jq 辅助工具 (skills/juggle/scripts/juggle),可在 shell 中执行相同的读取操作。它可在 bash 或 zsh 下运行,会将自己的会话文件以 0600 权限保存在 ~/.config/juggle/session,并应用相同的隐私允许列表。它仅支持只读;写入操作仍由 MCP 处理。将此仓库安装为插件后,Claude Code 会自动发现它。

托管

可在 mcp-host(claude.ai 远程 MCP)上作为每位用户的连接器托管,无需 浏览器桥接,因为登录只需在服务器端通过 POST 提交电子邮件和密码。 mint.yaml 声明了 identity.perUserChild,并要求每位用户在授权页面输入 自己的 JUGGLE_EMAIL / JUGGLE_PASSWORD,因此不会涉及共享密钥。出站连接仅限 whyjuggle.com。此技能仅在本地运行:只要安装了 curl 和 jq,就可以在相应环境中运行。

开发

npm install
npm run build
npm test        # both typechecks + vitest (no network)

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。