参赛项目名称
美食管家 MCP:米其林餐厅智能预约助手
团队 / 作者
飞猪-高乐融(花名:晋梁)
我做了什么
我基于 OpenWork、百炼模型能力和 MCP 协议,开发了一套米其林餐厅智能预约助手。
用户只需要说出餐厅名称、城市、日期、人数和时间偏好,系统即可自动完成:
识别目标餐厅及其米其林信息。
查找餐厅官网和真实预约入口。
判断官网、第三方平台、电话、邮件等预约渠道。
查询可预约日期和时间段。
根据用户条件发起多轮预约流程。
在提交订单、支付和外呼前要求用户确认。
遇到登录、短信验证码、信用卡、CAPTCHA 等敏感步骤时,安全地交还用户本人处理。
官网无法直接预约时,可通过 Xbot 电话机器人进行测试外呼。
项目同时支持本地 Stdio 和线上 Streamable HTTP 接入,并在 Aone MCP 市场完成发布。针对远程 MCP 调用超时、运行进程被回收等问题,我增加了任务状态管理、异步轮询、持久化存储和长期运行的 HTTP 部署方案
使用的工具
-OpenWork / 百炼 CLI
-百炼能力 / 模型:通义千问,用于自然语言理解、预约意图识别、任务拆解和工具编排
-Skill 名称:米其林餐厅预约 Skill / 美食管家 MCP
-其他:Model Context Protocol(MCP)
-Python
-Playwright / Chromium
-Aone MCP 开放市场
-Streamable HTTP
-SQLite
-Xbot 电话机器人
-GitLab / Aone PyPI
效果展示
用户可以直接用自然语言提出预约需求,例如:
帮我查询京都菊乃井本店 8 月适合两个人用餐的可预约时间。
美食管家会自动拆解任务,依次识别餐厅官网、判断预约渠道、查询可约日期与时段,并根据结果继续推进预约。
当前 MCP 提供餐厅查询、可约时间查询、预约创建、预约确认、支付确认、登录协助、人机验证协助、电话预约和任务状态查询等工具。用户在 QoderWork 等支持 MCP 的客户端中一键接入后,即可通过对话调用这些能力。
建议在此处粘贴以下截图:
Aone 市场中的“美食管家 MCP”详情页。
MCP 成功加载全部工具的页面。
查询菊乃井可预约日期的对话过程。
Xbot 电话预约或人工接管提示页面。
项目链接(可选)
Aone MCP 市场:https://open.aone.alibaba-inc.com/market
Aone PyPI 项目:https://cd.aone.alibaba-inc.com/unite/micro/pkg/1006416
代码仓库:git@gitlab.alibaba-inc.com:gaolerong.glr/michelin-restaurant-reservations.git
踩坑记录(可选)
开发过程中最大的挑战,是本地 MCP 和线上 MCP 的运行环境并不相同。
本地使用 Stdio 时,MCP 进程可以持续运行,耗时较长的餐厅官网识别和日历抓取通常能够正常完成;但发布到线上 Command 沙箱后,远程客户端存在调用超时,沙箱进程也可能被回收,导致后台任务长时间停留在 processing 状态。
为解决这些问题,我进行了以下改造:
为长任务增加 operation_id 和状态查询工具。
使用 SQLite 持久化预约任务和执行状态。
增加明确的任务进度、失败状态和重试指引。
将线上部署方案从临时 Command 进程调整为长期运行的 Streamable HTTP 服务。
增加 /healthz 健康检查和可配置的 HTTP 监听地址。
调整网关与工具调用超时时间,避免复杂查询在执行过程中被提前终止。
将登录、验证码、支付和真人验证设计为安全的用户接管流程,而不是尝试绕过平台安全机制。
这次实践让我认识到,开发一个可以本地运行的 MCP 并不困难,真正有挑战的是让它在线上环境中稳定运行,并让其他用户能够一键接入、连续调用和安全地完成完整任务。?
##演示视频
网页预约演示视频:https://cloud.video.taobao.com/vod/qvsxiq_ad7ArRgD14LsCbhNU-aPICOI0rih2Z5Y7tKQ.mp4
电话预约演示视频:https://cloud.video.taobao.com/vod/WfFdVBs_gjm_PeNQkA2wX2sItY2VTYYHcd1tGAICr3Q.mp4
参赛项目名称
美食管家 MCP:米其林餐厅智能预约助手
团队 / 作者
飞猪-高乐融(花名:晋梁)
我做了什么
我基于 OpenWork、百炼模型能力和 MCP 协议,开发了一套米其林餐厅智能预约助手。
用户只需要说出餐厅名称、城市、日期、人数和时间偏好,系统即可自动完成:
识别目标餐厅及其米其林信息。
查找餐厅官网和真实预约入口。
判断官网、第三方平台、电话、邮件等预约渠道。
查询可预约日期和时间段。
根据用户条件发起多轮预约流程。
在提交订单、支付和外呼前要求用户确认。
遇到登录、短信验证码、信用卡、CAPTCHA 等敏感步骤时,安全地交还用户本人处理。
官网无法直接预约时,可通过 Xbot 电话机器人进行测试外呼。
项目同时支持本地 Stdio 和线上 Streamable HTTP 接入,并在 Aone MCP 市场完成发布。针对远程 MCP 调用超时、运行进程被回收等问题,我增加了任务状态管理、异步轮询、持久化存储和长期运行的 HTTP 部署方案
使用的工具
-OpenWork / 百炼 CLI
-百炼能力 / 模型:通义千问,用于自然语言理解、预约意图识别、任务拆解和工具编排
-Skill 名称:米其林餐厅预约 Skill / 美食管家 MCP
-其他:Model Context Protocol(MCP)
-Python
-Playwright / Chromium
-Aone MCP 开放市场
-Streamable HTTP
-SQLite
-Xbot 电话机器人
-GitLab / Aone PyPI
效果展示
用户可以直接用自然语言提出预约需求,例如:
帮我查询京都菊乃井本店 8 月适合两个人用餐的可预约时间。
美食管家会自动拆解任务,依次识别餐厅官网、判断预约渠道、查询可约日期与时段,并根据结果继续推进预约。
当前 MCP 提供餐厅查询、可约时间查询、预约创建、预约确认、支付确认、登录协助、人机验证协助、电话预约和任务状态查询等工具。用户在 QoderWork 等支持 MCP 的客户端中一键接入后,即可通过对话调用这些能力。
建议在此处粘贴以下截图:
Aone 市场中的“美食管家 MCP”详情页。
MCP 成功加载全部工具的页面。
查询菊乃井可预约日期的对话过程。
Xbot 电话预约或人工接管提示页面。
项目链接(可选)
Aone MCP 市场:https://open.aone.alibaba-inc.com/market
Aone PyPI 项目:https://cd.aone.alibaba-inc.com/unite/micro/pkg/1006416
代码仓库:git@gitlab.alibaba-inc.com:gaolerong.glr/michelin-restaurant-reservations.git
踩坑记录(可选)
开发过程中最大的挑战,是本地 MCP 和线上 MCP 的运行环境并不相同。
本地使用 Stdio 时,MCP 进程可以持续运行,耗时较长的餐厅官网识别和日历抓取通常能够正常完成;但发布到线上 Command 沙箱后,远程客户端存在调用超时,沙箱进程也可能被回收,导致后台任务长时间停留在 processing 状态。
为解决这些问题,我进行了以下改造:
为长任务增加 operation_id 和状态查询工具。
使用 SQLite 持久化预约任务和执行状态。
增加明确的任务进度、失败状态和重试指引。
将线上部署方案从临时 Command 进程调整为长期运行的 Streamable HTTP 服务。
增加 /healthz 健康检查和可配置的 HTTP 监听地址。
调整网关与工具调用超时时间,避免复杂查询在执行过程中被提前终止。
将登录、验证码、支付和真人验证设计为安全的用户接管流程,而不是尝试绕过平台安全机制。
这次实践让我认识到,开发一个可以本地运行的 MCP 并不困难,真正有挑战的是让它在线上环境中稳定运行,并让其他用户能够一键接入、连续调用和安全地完成完整任务。?
##演示视频
网页预约演示视频:https://cloud.video.taobao.com/vod/qvsxiq_ad7ArRgD14LsCbhNU-aPICOI0rih2Z5Y7tKQ.mp4
电话预约演示视频:https://cloud.video.taobao.com/vod/WfFdVBs_gjm_PeNQkA2wX2sItY2VTYYHcd1tGAICr3Q.mp4