{"id":"4500f37f-1497-4fdf-ac35-387448d4fd1a","entityType":"agent","slug":"clawhub-leonardoooooo-tuniu-hotel","name":"途牛酒店预订技能","canonicalUrl":"https://www.xpersona.co/agent/clawhub-leonardoooooo-tuniu-hotel","canonicalPath":"/agent/clawhub-leonardoooooo-tuniu-hotel","generatedAt":"2026-10-10T00:20:57.794Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"description":"途牛酒店助手 - 通过 exec + curl 调用 MCP 实现酒店搜索、详情查询、预订下单。适用于用户询问某地酒店、入住日期、查看酒店详情或提交订单时使用。 Skill: 途牛酒店预订技能 Owner: Leonardoooooo Summary: 途牛酒店助手 - 通过 exec + curl 调用 MCP 实现酒店搜索、详情查询、预订下单。适用于用户询问某地酒店、入住日期、查看酒店详情或提交订单时使用。 Tags: latest:1.0.3 Version history: v1.0.3 | 2026-02-28T02:34:15.434Z | user Version 1.0.3 - 增加了对运行环境（需提供 curl）的显式说明 - 明确列出必需环境变量（TUNIU_API_KEY）和所需二进制（curl）于元数据 - 新增“隐私与个人信息说明”，提醒用户预订动作会发送联系人姓名、手机号等至途牛远端服务 - 补充了使用时的隐私注意事项，建议勿在日志或回复中暴露个人信息 - 其它文档结构性优化，无功能变更 v1.0.2 | 2026-02-28T02:28:38.638Z |","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 676 downloads reported by the source. Last updated 4/15/2026.","installCommand":"clawhub skill install kn7bc8chgvfzqsf2s965yfwd4580pdvz:tuniu-hotel","sourceUrl":"https://clawhub.ai/Leonardoooooo/tuniu-hotel","homepage":"https://clawhub.ai/Leonardoooooo/tuniu-hotel","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/Leonardoooooo/tuniu-hotel","kind":"source"}],"safetyScore":84,"overallRank":62,"popularityScore":57,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"途牛酒店助手 - 通过 exec + curl 调用 MCP 实现酒店搜索、详情查询、预订下单。适用于用户询问某地酒店、入住日期、查看酒店详情或提交订单时使用。 Skill: 途牛酒店预订技能 Owner: Leonardoooooo Summary: 途牛酒店助手 - 通过 exec + curl 调用 MCP 实现"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"stars":null,"forks":null,"downloads":676,"packageName":null,"latestVersion":"1.0.3","tractionLabel":"676 downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-03-01T03:17:01.297Z","emptyReason":null},"lastUpdatedAt":"2026-04-15T00:45:39.800Z","lastCrawledAt":"2026-03-01T03:17:01.297Z","lastIndexedAt":null,"nextCrawlAt":"2026-03-02T03:17:01.297Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.3","createdAt":"2026-02-28T02:34:15.434Z","changelog":"Version 1.0.3 - 增加了对运行环境（需提供 curl）的显式说明 - 明确列出必需环境变量（TUNIU_API_KEY）和所需二进制（curl）于元数据 - 新增“隐私与个人信息说明”，提醒用户预订动作会发送联系人姓名、手机号等至途牛远端服务 - 补充了使用时的隐私注意事项，建议勿在日志或回复中暴露个人信息 - 其它文档结构性优化，无功能变更","fileCount":2,"zipByteSize":4738},{"version":"1.0.2","createdAt":"2026-02-28T02:28:38.638Z","changelog":"- 移除了 TUNIU_MEMBER_KEY 相关配置和请求头，仅需配置 TUNIU_API_KEY。 - 调整了密钥注册说明和官方平台链接，统一指向 https://open.tuniu.com/mcp。 - 所有调用示例和请求头中不再包含 Authorization 字段，精简为 apiKey、Content-Type 和 Accept。 - 注意事项、安全提示、示例说明等全部与上述调整一致更新。","fileCount":2,"zipByteSize":4307},{"version":"1.0.1","createdAt":"2026-02-13T03:22:12.618Z","changelog":"- No file changes were detected in this release. - Version number updated to 1.0.1.","fileCount":null,"zipByteSize":null},{"version":"1.0.0","createdAt":"2026-02-11T10:45:56.923Z","changelog":"tuniu-hotel 1.0.0 初始发布 - 新增途牛酒店助手，支持通过 exec + curl 调用 MCP 实现酒店搜索、详情查询、预订下单 - 提供按城市和日期搜索酒店、查看指定酒店详情与房型/报价、创建酒店预订订单等主要功能 - 明确参数要求、请求头配置及响应解析说明 - 包含详细调用示例和常见错误处理指导 - 强化会话参数传递与密钥安全注意事项","fileCount":null,"zipByteSize":null}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install kn7bc8chgvfzqsf2s965yfwd4580pdvz:tuniu-hotel","setupComplexity":"low","setupSteps":["Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-leonardoooooo-tuniu-hotel/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-leonardoooooo-tuniu-hotel/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-leonardoooooo-tuniu-hotel/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-leonardoooooo-tuniu-hotel/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-leonardoooooo-tuniu-hotel/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-leonardoooooo-tuniu-hotel/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T00:20:57.793Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-leonardoooooo-tuniu-hotel/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-leonardoooooo-tuniu-hotel/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-leonardoooooo-tuniu-hotel/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-leonardoooooo-tuniu-hotel/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"readme":"Skill: 途牛酒店预订技能\n\nOwner: Leonardoooooo\n\nSummary: 途牛酒店助手 - 通过 exec + curl 调用 MCP 实现酒店搜索、详情查询、预订下单。适用于用户询问某地酒店、入住日期、查看酒店详情或提交订单时使用。\n\nTags: latest:1.0.3\n\nVersion history:\n\nv1.0.3 | 2026-02-28T02:34:15.434Z | user\n\nVersion 1.0.3\n\n- 增加了对运行环境（需提供 curl）的显式说明\n- 明确列出必需环境变量（TUNIU_API_KEY）和所需二进制（curl）于元数据\n- 新增“隐私与个人信息说明”，提醒用户预订动作会发送联系人姓名、手机号等至途牛远端服务\n- 补充了使用时的隐私注意事项，建议勿在日志或回复中暴露个人信息\n- 其它文档结构性优化，无功能变更\n\nv1.0.2 | 2026-02-28T02:28:38.638Z | user\n\n- 移除了 TUNIU_MEMBER_KEY 相关配置和请求头，仅需配置 TUNIU_API_KEY。\n- 调整了密钥注册说明和官方平台链接，统一指向 https://open.tuniu.com/mcp。\n- 所有调用示例和请求头中不再包含 Authorization 字段，精简为 apiKey、Content-Type 和 Accept。\n- 注意事项、安全提示、示例说明等全部与上述调整一致更新。\n\nv1.0.1 | 2026-02-13T03:22:12.618Z | user\n\n- No file changes were detected in this release.\n- Version number updated to 1.0.1.\n\nv1.0.0 | 2026-02-11T10:45:56.923Z | user\n\ntuniu-hotel 1.0.0 初始发布\n\n- 新增途牛酒店助手，支持通过 exec + curl 调用 MCP 实现酒店搜索、详情查询、预订下单\n- 提供按城市和日期搜索酒店、查看指定酒店详情与房型/报价、创建酒店预订订单等主要功能\n- 明确参数要求、请求头配置及响应解析说明\n- 包含详细调用示例和常见错误处理指导\n- 强化会话参数传递与密钥安全注意事项\n\nArchive index:\n\nArchive v1.0.3: 2 files, 4738 bytes\n\nFiles: _meta.json (130b), SKILL.md (11335b)\n\nFile v1.0.3:SKILL.md\n\n---\nname: tuniu-hotel\ndescription: 途牛酒店助手 - 通过 exec + curl 调用 MCP 实现酒店搜索、详情查询、预订下单。适用于用户询问某地酒店、入住日期、查看酒店详情或提交订单时使用。\nversion: 1.0.3\nmetadata: {\"openclaw\": {\"emoji\": \"🏨\", \"category\": \"travel\", \"tags\": [\"途牛\", \"酒店\", \"预订\", \"搜索\"], \"requires\": {\"bins\": [\"curl\"]}, \"env\": {\"TUNIU_API_KEY\": {\"type\": \"string\", \"description\": \"途牛开放平台 API key，用于 apiKey 请求头\", \"required\": true}}}}\n---\n\n# 途牛酒店助手\n\n当用户询问酒店搜索、详情或预订时，使用此 skill 通过 exec 执行 curl 调用途牛酒店 MCP 服务。\n\n## 运行环境要求\n\n本 skill 通过 **shell exec** 执行 **curl** 向 MCP endpoint 发起 HTTP POST 请求，使用 JSON-RPC 2.0 / `tools/call` 协议。**运行环境必须提供 curl 或等效的 HTTP 调用能力**（如 wget、fetch 等可发起 POST 的客户端），否则无法调用 MCP 服务。\n\n## 隐私与个人信息（PII）说明\n\n预订功能会将用户提供的**个人信息**（联系人姓名、手机号、入住人姓名等）通过 HTTP POST 发送至途牛 MCP 远端服务（`https://openapi.tuniu.cn/mcp/hotel`），以完成酒店预订。使用本 skill 即表示用户知晓并同意上述 PII 被发送到外部服务。请勿在日志或回复中暴露用户个人信息。\n\n## 适用场景\n\n- 按城市、日期搜索酒店（第一页、翻页）\n- 查看指定酒店详情、房型与报价\n- 用户确认后创建酒店预订订单\n\n## 配置要求\n\n### 必需配置\n\n- **TUNIU_API_KEY**：途牛开放平台 API key，用于 `apiKey` 请求头\n\n用户需在[途牛开放平台](https://open.tuniu.com/mcp)注册并获取上述密钥。\n\n### 可选配置\n\n- **TUNIU_MCP_URL**：MCP 服务地址，默认 `https://openapi.tuniu.cn/mcp/hotel`\n\n### 会话说明\n\n## 调用方式\n\n**直接调用工具**：使用以下请求头调用 `tools/call` 即可：\n\n- `apiKey: $TUNIU_API_KEY`\n- `Content-Type: application/json`\n- `Accept: application/json, text/event-stream`\n\n## 可用工具\n\n**重要**：下方示例中的参数均为占位，调用时需**根据用户当前需求**填入实际值（城市、日期、酒店 ID/名称、入住人、联系方式等），勿直接照抄示例值。\n\n### 1. 酒店搜索 (tuniu_hotel_search)\n\n**第一页**：必填 `cityName`，可选 `checkIn`、`checkOut`（格式 YYYY-MM-DD）、`keyword`、`prices` 等。响应会返回 `queryId`、`totalPageNum`、`currentPageNum`，需保留 queryId 供翻页使用。\n\n**翻页**：传 `queryId`（首次搜索返回）和 `pageNum`（2=第二页，3=第三页…），不再传 cityName。用户说「还有吗」「翻页」「下一页」时必须用 queryId + pageNum 再次调用。\n\n**触发词**：某地酒店、某日入住、查酒店、搜酒店\n\n```bash\n# 第一页：cityName/checkIn/checkOut 等按用户说的城市、入住/离店日期填写（日期格式 YYYY-MM-DD）\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_search\",\"arguments\":{\"cityName\":\"<用户指定的城市>\",\"checkIn\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOut\":\"<用户指定的离店日期 YYYY-MM-DD>\"}}}'\n```\n\n```bash\n# 翻页：queryId 用上轮 search 返回的值，pageNum 为 2、3、4…\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":3,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_search\",\"arguments\":{\"queryId\":\"<上轮返回的queryId>\",\"pageNum\":2}}}'\n```\n\n### 2. 酒店详情 (tuniu_hotel_detail)\n\n**入参**：`hotelId`（数字，与搜索结果一致）与 `hotelName` 二选一必填；可选 `checkIn`、`checkOut`（YYYY-MM-DD）、`roomNum`、`adultNum`、`childNum` 等。\n\n当用户说「看一下」「详情」「介绍」某酒店且对话或搜索结果中已有 hotelId 或 hotelName 时，直接传入调用，无需用户再确认。\n\n**触发词**：酒店详情、房型、看一下某某酒店、介绍这家酒店\n\n```bash\n# 按 hotelId：hotelId 从搜索结果或用户指定酒店取，日期按用户需求填\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":4,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_detail\",\"arguments\":{\"hotelId\":<用户/搜索结果中的 hotelId>,\"checkIn\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOut\":\"<用户指定的离店日期 YYYY-MM-DD>\"}}}'\n```\n\n```bash\n# 按 hotelName：酒店名、日期均按用户需求填\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":5,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_detail\",\"arguments\":{\"hotelName\":\"<用户指定的酒店名称>\",\"checkIn\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOut\":\"<用户指定的离店日期 YYYY-MM-DD>\"}}}'\n```\n\n### 3. 创建订单 (tuniu_hotel_create_order)\n\n**前置条件**：必须先调用 `tuniu_hotel_detail` 获取酒店详情；从返回的 `roomTypes[].ratePlans[]` 中选取报价，拿到 `preBookParam`。本工具会自动验价，无需单独验价。\n\n**必填参数**：hotelId（字符串）、roomId（字符串）、preBookParam、checkInDate、checkOutDate（YYYY-MM-DD）、roomCount、roomGuests、contactName、contactPhone。\n\n**roomGuests**：数组长度等于 roomCount；每项为 `{\"guests\":[{\"firstName\":\"名\",\"lastName\":\"姓\"}]}`，至少一位入住人。\n\n**触发词**：预订、下单、订这家、我要订、提交订单\n\n```bash\n# hotelId、roomId、preBookParam 从最近一次 detail 结果取；日期、入住人、联系人按用户需求填\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":6,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_create_order\",\"arguments\":{\"hotelId\":\"<detail 返回的 hotelId>\",\"roomId\":\"<detail 返回的 roomId>\",\"preBookParam\":\"<detail 对应报价的 preBookParam>\",\"checkInDate\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOutDate\":\"<用户指定的离店日期 YYYY-MM-DD>\",\"roomCount\":1,\"roomGuests\":[{\"guests\":[{\"firstName\":\"<入住人名的名>\",\"lastName\":\"<入住人名的姓>\"}]}],\"contactName\":\"<用户提供的联系人姓名>\",\"contactPhone\":\"<用户提供的联系电话>\"}}}'\n```\n\n（hotelId、roomId、preBookParam 必须来自最近一次 tuniu_hotel_detail 的返回，不可用示例值。）\n\n## 响应处理\n\n### 成功响应\n\n```json\n{\n  \"jsonrpc\": \"2.0\",\n  \"result\": {\n    \"content\": [{\"type\": \"text\", \"text\": \"...\"}]\n  },\n  \"id\": 2\n}\n```\n\n- **本项目中** 工具结果统一放在 **`result.content[0].text`** 中。`text` 为 **JSON 字符串**，需先 `JSON.parse(result.content[0].text)` 再使用。\n- 解析后为业务对象，各工具结构不同：\n  - **酒店列表**（tuniu_hotel_search）：`displayHint`、`message`、`success`、`queryId`、`totalPageNum`、`currentPageNum`、`cityInfo`、`hotels`（含 hotelId、hotelName、starName、brandName、commentScore、commentDigest、lowestPrice、address、business 等）。按 `displayHint` 与列表字段整理后回复。\n  - **酒店详情**（tuniu_hotel_detail）：`displayHint`、酒店基础信息、`roomTypes`（房型与报价，含 preBookParam 等）。\n  - **创建订单**（tuniu_hotel_create_order）：`displayHint`、`orderId`、`confirmationNumber`、`paymentUrl`、入住/离店日期等。\n- 错误时 `text` 解析后为 `{ \"error\": \"错误信息\" }`，可从 `error` 字段取提示文案。\n\n### 错误响应\n\n本项目中错误分两类，需分别处理：\n\n**1. 传输/会话层错误**（无 `result`，仅有顶层 `error`，通常伴随 HTTP 4xx/5xx）：\n\n```json\n{\n  \"jsonrpc\": \"2.0\",\n  \"error\": {\"code\": -32000, \"message\": \"...\"},\n  \"id\": null\n}\n```\n- **Method Not Allowed**：GET 等非 POST 请求\n- **Internal server error**（code -32603）：服务内部异常\n\n**2. 工具层错误**（HTTP 仍为 200，有 `result`）：与成功响应结构相同，但 `result.content[0].text` 解析后为 `{ \"error\": \"错误信息\" }`，且可能带 `result.isError === true`。例如参数校验失败、报价失效、下单失败等，从 `error` 字段取文案提示用户或重试。\n\n## 输出格式建议\n\n- **搜索列表**：以表格或清单展示酒店名称、星级、地址、最低价格、queryId（若需翻页可提示「可以说翻页/下一页」）\n- **酒店详情**：房型、报价、设施、政策等分块呈现；若有 preBookParam，可提示用户可预订\n- **预订成功**：明确写出订单号/确认号、入住/离店日期、酒店与房型、联系人信息\n\n## 使用示例\n\n以下示例中，所有参数均从**用户表述或上一轮结果**中解析并填入，勿用固定值。\n\n**用户**：北京 2 月 20 号入住一晚，有什么酒店？\n\n**AI 执行**：按用户意图填参：cityName=北京、checkIn=2026-02-20、checkOut=2026-02-21，调用 tuniu_hotel_search（请求头需带 apiKey、Content-Type、Accept）。解析 result.content[0].text，整理酒店列表回复，并保留 queryId 供翻页。\n\n**用户**：还有吗？/ 下一页\n\n**AI 执行**：用上一轮 search 返回的 queryId 与 pageNum=2（或 3、4…）再次调用 tuniu_hotel_search，不传 cityName。\n\n**用户**：看一下xxx酒店的详情\n\n**AI 执行**：从上一轮列表取xxx酒店的 hotelId（或 hotelName），连同用户之前的入住/离店日期，调用 tuniu_hotel_detail；解析详情后分块展示房型、报价、设施，并提示可预订。\n\n**用户**：就订这个，联系人张三 13800138000\n\n**AI 执行**：从最近一次 detail 结果取 hotelId、roomId、preBookParam；按用户提供的入住/离店日期填 checkInDate/checkOutDate；将「张三」拆为 lastName=张、firstName=三 填入 roomGuests，contactName=张三、contactPhone=13800138000。成功后回复订单号、确认号、入住信息与支付链接。\n\n## 注意事项\n\n1. **密钥安全**：不要在回复或日志中暴露 TUNIU_API_KEY\n2. **PII 安全**：联系人姓名、手机号、入住人姓名等仅在预订时发送至 MCP 服务，勿在日志或回复中暴露\n3. **认证**：若遇协议或认证错误，可重试或检查 TUNIU_API_KEY\n4. **日期格式**：所有日期均为 YYYY-MM-DD\n5. **下单前**：create_order 的 hotelId、roomId、preBookParam 必须来自最近一次 tuniu_hotel_detail 的返回；若间隔较长，建议重新调 detail 刷新报价\n6. **翻页**：用户要「更多」「下一页」时必须用上一轮 search 返回的 queryId 和 pageNum（≥2）调用，不能只传城市名\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn7bc8chgvfzqsf2s965yfwd4580pdvz\",\n  \"slug\": \"tuniu-hotel\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1772246055434\n}\n\nArchive v1.0.2: 2 files, 4307 bytes\n\nFiles: _meta.json (130b), SKILL.md (10317b)\n\nFile v1.0.2:SKILL.md\n\n---\nname: tuniu-hotel\ndescription: 途牛酒店助手 - 通过 exec + curl 调用 MCP 实现酒店搜索、详情查询、预订下单。适用于用户询问某地酒店、入住日期、查看酒店详情或提交订单时使用。\nversion: 1.0.2\nmetadata: {\"openclaw\": {\"emoji\": \"🏨\", \"category\": \"travel\", \"tags\": [\"途牛\", \"酒店\", \"预订\", \"搜索\"]}}\n---\n\n# 途牛酒店助手\n\n当用户询问酒店搜索、详情或预订时，使用此 skill 通过 exec 执行 curl 调用途牛酒店 MCP 服务。\n\n## 适用场景\n\n- 按城市、日期搜索酒店（第一页、翻页）\n- 查看指定酒店详情、房型与报价\n- 用户确认后创建酒店预订订单\n\n## 配置要求\n\n### 必需配置\n\n- **TUNIU_API_KEY**：途牛开放平台 API key，用于 `apiKey` 请求头\n\n用户需在[途牛开放平台](https://open.tuniu.com/mcp)注册并获取上述密钥。\n\n### 可选配置\n\n- **TUNIU_MCP_URL**：MCP 服务地址，默认 `https://openapi.tuniu.cn/mcp/hotel`\n\n### 会话说明\n\n## 调用方式\n\n**直接调用工具**：使用以下请求头调用 `tools/call` 即可：\n\n- `apiKey: $TUNIU_API_KEY`\n- `Content-Type: application/json`\n- `Accept: application/json, text/event-stream`\n\n## 可用工具\n\n**重要**：下方示例中的参数均为占位，调用时需**根据用户当前需求**填入实际值（城市、日期、酒店 ID/名称、入住人、联系方式等），勿直接照抄示例值。\n\n### 1. 酒店搜索 (tuniu_hotel_search)\n\n**第一页**：必填 `cityName`，可选 `checkIn`、`checkOut`（格式 YYYY-MM-DD）、`keyword`、`prices` 等。响应会返回 `queryId`、`totalPageNum`、`currentPageNum`，需保留 queryId 供翻页使用。\n\n**翻页**：传 `queryId`（首次搜索返回）和 `pageNum`（2=第二页，3=第三页…），不再传 cityName。用户说「还有吗」「翻页」「下一页」时必须用 queryId + pageNum 再次调用。\n\n**触发词**：某地酒店、某日入住、查酒店、搜酒店\n\n```bash\n# 第一页：cityName/checkIn/checkOut 等按用户说的城市、入住/离店日期填写（日期格式 YYYY-MM-DD）\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_search\",\"arguments\":{\"cityName\":\"<用户指定的城市>\",\"checkIn\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOut\":\"<用户指定的离店日期 YYYY-MM-DD>\"}}}'\n```\n\n```bash\n# 翻页：queryId 用上轮 search 返回的值，pageNum 为 2、3、4…\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":3,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_search\",\"arguments\":{\"queryId\":\"<上轮返回的queryId>\",\"pageNum\":2}}}'\n```\n\n### 2. 酒店详情 (tuniu_hotel_detail)\n\n**入参**：`hotelId`（数字，与搜索结果一致）与 `hotelName` 二选一必填；可选 `checkIn`、`checkOut`（YYYY-MM-DD）、`roomNum`、`adultNum`、`childNum` 等。\n\n当用户说「看一下」「详情」「介绍」某酒店且对话或搜索结果中已有 hotelId 或 hotelName 时，直接传入调用，无需用户再确认。\n\n**触发词**：酒店详情、房型、看一下某某酒店、介绍这家酒店\n\n```bash\n# 按 hotelId：hotelId 从搜索结果或用户指定酒店取，日期按用户需求填\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":4,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_detail\",\"arguments\":{\"hotelId\":<用户/搜索结果中的 hotelId>,\"checkIn\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOut\":\"<用户指定的离店日期 YYYY-MM-DD>\"}}}'\n```\n\n```bash\n# 按 hotelName：酒店名、日期均按用户需求填\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":5,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_detail\",\"arguments\":{\"hotelName\":\"<用户指定的酒店名称>\",\"checkIn\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOut\":\"<用户指定的离店日期 YYYY-MM-DD>\"}}}'\n```\n\n### 3. 创建订单 (tuniu_hotel_create_order)\n\n**前置条件**：必须先调用 `tuniu_hotel_detail` 获取酒店详情；从返回的 `roomTypes[].ratePlans[]` 中选取报价，拿到 `preBookParam`。本工具会自动验价，无需单独验价。\n\n**必填参数**：hotelId（字符串）、roomId（字符串）、preBookParam、checkInDate、checkOutDate（YYYY-MM-DD）、roomCount、roomGuests、contactName、contactPhone。\n\n**roomGuests**：数组长度等于 roomCount；每项为 `{\"guests\":[{\"firstName\":\"名\",\"lastName\":\"姓\"}]}`，至少一位入住人。\n\n**触发词**：预订、下单、订这家、我要订、提交订单\n\n```bash\n# hotelId、roomId、preBookParam 从最近一次 detail 结果取；日期、入住人、联系人按用户需求填\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":6,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_create_order\",\"arguments\":{\"hotelId\":\"<detail 返回的 hotelId>\",\"roomId\":\"<detail 返回的 roomId>\",\"preBookParam\":\"<detail 对应报价的 preBookParam>\",\"checkInDate\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOutDate\":\"<用户指定的离店日期 YYYY-MM-DD>\",\"roomCount\":1,\"roomGuests\":[{\"guests\":[{\"firstName\":\"<入住人名的名>\",\"lastName\":\"<入住人名的姓>\"}]}],\"contactName\":\"<用户提供的联系人姓名>\",\"contactPhone\":\"<用户提供的联系电话>\"}}}'\n```\n\n（hotelId、roomId、preBookParam 必须来自最近一次 tuniu_hotel_detail 的返回，不可用示例值。）\n\n## 响应处理\n\n### 成功响应\n\n```json\n{\n  \"jsonrpc\": \"2.0\",\n  \"result\": {\n    \"content\": [{\"type\": \"text\", \"text\": \"...\"}]\n  },\n  \"id\": 2\n}\n```\n\n- **本项目中** 工具结果统一放在 **`result.content[0].text`** 中。`text` 为 **JSON 字符串**，需先 `JSON.parse(result.content[0].text)` 再使用。\n- 解析后为业务对象，各工具结构不同：\n  - **酒店列表**（tuniu_hotel_search）：`displayHint`、`message`、`success`、`queryId`、`totalPageNum`、`currentPageNum`、`cityInfo`、`hotels`（含 hotelId、hotelName、starName、brandName、commentScore、commentDigest、lowestPrice、address、business 等）。按 `displayHint` 与列表字段整理后回复。\n  - **酒店详情**（tuniu_hotel_detail）：`displayHint`、酒店基础信息、`roomTypes`（房型与报价，含 preBookParam 等）。\n  - **创建订单**（tuniu_hotel_create_order）：`displayHint`、`orderId`、`confirmationNumber`、`paymentUrl`、入住/离店日期等。\n- 错误时 `text` 解析后为 `{ \"error\": \"错误信息\" }`，可从 `error` 字段取提示文案。\n\n### 错误响应\n\n本项目中错误分两类，需分别处理：\n\n**1. 传输/会话层错误**（无 `result`，仅有顶层 `error`，通常伴随 HTTP 4xx/5xx）：\n\n```json\n{\n  \"jsonrpc\": \"2.0\",\n  \"error\": {\"code\": -32000, \"message\": \"...\"},\n  \"id\": null\n}\n```\n- **Method Not Allowed**：GET 等非 POST 请求\n- **Internal server error**（code -32603）：服务内部异常\n\n**2. 工具层错误**（HTTP 仍为 200，有 `result`）：与成功响应结构相同，但 `result.content[0].text` 解析后为 `{ \"error\": \"错误信息\" }`，且可能带 `result.isError === true`。例如参数校验失败、报价失效、下单失败等，从 `error` 字段取文案提示用户或重试。\n\n## 输出格式建议\n\n- **搜索列表**：以表格或清单展示酒店名称、星级、地址、最低价格、queryId（若需翻页可提示「可以说翻页/下一页」）\n- **酒店详情**：房型、报价、设施、政策等分块呈现；若有 preBookParam，可提示用户可预订\n- **预订成功**：明确写出订单号/确认号、入住/离店日期、酒店与房型、联系人信息\n\n## 使用示例\n\n以下示例中，所有参数均从**用户表述或上一轮结果**中解析并填入，勿用固定值。\n\n**用户**：北京 2 月 20 号入住一晚，有什么酒店？\n\n**AI 执行**：按用户意图填参：cityName=北京、checkIn=2026-02-20、checkOut=2026-02-21，调用 tuniu_hotel_search（请求头需带 apiKey、Content-Type、Accept）。解析 result.content[0].text，整理酒店列表回复，并保留 queryId 供翻页。\n\n**用户**：还有吗？/ 下一页\n\n**AI 执行**：用上一轮 search 返回的 queryId 与 pageNum=2（或 3、4…）再次调用 tuniu_hotel_search，不传 cityName。\n\n**用户**：看一下xxx酒店的详情\n\n**AI 执行**：从上一轮列表取xxx酒店的 hotelId（或 hotelName），连同用户之前的入住/离店日期，调用 tuniu_hotel_detail；解析详情后分块展示房型、报价、设施，并提示可预订。\n\n**用户**：就订这个，联系人张三 13800138000\n\n**AI 执行**：从最近一次 detail 结果取 hotelId、roomId、preBookParam；按用户提供的入住/离店日期填 checkInDate/checkOutDate；将「张三」拆为 lastName=张、firstName=三 填入 roomGuests，contactName=张三、contactPhone=13800138000。成功后回复订单号、确认号、入住信息与支付链接。\n\n## 注意事项\n\n1. **密钥安全**：不要在回复或日志中暴露 TUNIU_API_KEY\n2. **认证**：若遇协议或认证错误，可重试或检查 TUNIU_API_KEY\n3. **日期格式**：所有日期均为 YYYY-MM-DD\n4. **下单前**：create_order 的 hotelId、roomId、preBookParam 必须来自最近一次 tuniu_hotel_detail 的返回；若间隔较长，建议重新调 detail 刷新报价\n5. **翻页**：用户要「更多」「下一页」时必须用上一轮 search 返回的 queryId 和 pageNum（≥2）调用，不能只传城市名\n\nFile v1.0.2:_meta.json\n\n{\n  \"ownerId\": \"kn7bc8chgvfzqsf2s965yfwd4580pdvz\",\n  \"slug\": \"tuniu-hotel\",\n  \"version\": \"1.0.2\",\n  \"publishedAt\": 1772245718638\n}","readmeExcerpt":"Skill: 途牛酒店预订技能 Owner: Leonardoooooo Summary: 途牛酒店助手 - 通过 exec + curl 调用 MCP 实现酒店搜索、详情查询、预订下单。适用于用户询问某地酒店、入住日期、查看酒店详情或提交订单时使用。 Tags: latest:1.0.3 Version history: v1.0.3 | 2026-02-28T02:34:15.434Z | user Version 1.0.3 - 增加了对运行环境（需提供 curl）的显式说明 - 明确列出必需环境变量（TUNIU_API_KEY）和所需二进制（curl）于元数据 - 新增“隐私与个人信息说明”，提醒用户预订动作会发送联系人姓名、手机号等至途牛远端服务 - 补充了使用时的隐私注意事项，建议勿在日志或回复中暴露个人信息 - 其它文档结构性优化，无功能变更 v1.0.2 | 2026-02-28T02:28:38.638Z | ","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"curl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_search\",\"arguments\":{\"cityName\":\"<用户指定的城市>\",\"checkIn\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOut\":\"<用户指定的离店日期 YYYY-MM-DD>\"}}}'"},{"language":"bash","snippet":"# 第一页：cityName/checkIn/checkOut 等按用户说的城市、入住/离店日期填写（日期格式 YYYY-MM-DD）\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_search\",\"arguments\":{\"cityName\":\"<用户指定的城市>\",\"checkIn\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOut\":\"<用户指定的离店日期 YYYY-MM-DD>\"}}}'"},{"language":"bash","snippet":"curl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":3,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_search\",\"arguments\":{\"queryId\":\"<上轮返回的queryId>\",\"pageNum\":2}}}'"},{"language":"bash","snippet":"# 翻页：queryId 用上轮 search 返回的值，pageNum 为 2、3、4…\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":3,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_search\",\"arguments\":{\"queryId\":\"<上轮返回的queryId>\",\"pageNum\":2}}}'"},{"language":"bash","snippet":"curl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":4,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_detail\",\"arguments\":{\"hotelId\":<用户/搜索结果中的 hotelId>,\"checkIn\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOut\":\"<用户指定的离店日期 YYYY-MM-DD>\"}}}'"},{"language":"bash","snippet":"# 按 hotelId：hotelId 从搜索结果或用户指定酒店取，日期按用户需求填\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":4,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_detail\",\"arguments\":{\"hotelId\":<用户/搜索结果中的 hotelId>,\"checkIn\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOut\":\"<用户指定的离店日期 YYYY-MM-DD>\"}}}'"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: tuniu-hotel\ndescription: 途牛酒店助手 - 通过 exec + curl 调用 MCP 实现酒店搜索、详情查询、预订下单。适用于用户询问某地酒店、入住日期、查看酒店详情或提交订单时使用。\nversion: 1.0.3\nmetadata: {\"openclaw\": {\"emoji\": \"🏨\", \"category\": \"travel\", \"tags\": [\"途牛\", \"酒店\", \"预订\", \"搜索\"], \"requires\": {\"bins\": [\"curl\"]}, \"env\": {\"TUNIU_API_KEY\": {\"type\": \"string\", \"description\": \"途牛开放平台 API key，用于 apiKey 请求头\", \"required\": true}}}}\n---\n\n# 途牛酒店助手\n\n当用户询问酒店搜索、详情或预订时，使用此 skill 通过 exec 执行 curl 调用途牛酒店 MCP 服务。\n\n## 运行环境要求\n\n本 skill 通过 **shell exec** 执行 **curl** 向 MCP endpoint 发起 HTTP POST 请求，使用 JSON-RPC 2.0 / `tools/call` 协议。**运行环境必须提供 curl 或等效的 HTTP 调用能力**（如 wget、fetch 等可发起 POST 的客户端），否则无法调用 MCP 服务。\n\n## 隐私与个人信息（PII）说明\n\n预订功能会将用户提供的**个人信息**（联系人姓名、手机号、入住人姓名等）通过 HTTP POST 发送至途牛 MCP 远端服务（`https://openapi.tuniu.cn/mcp/hotel`），以完成酒店预订。使用本 skill 即表示用户知晓并同意上述 PII 被发送到外部服务。请勿在日志或回复中暴露用户个人信息。\n\n## 适用场景\n\n- 按城市、日期搜索酒店（第一页、翻页）\n- 查看指定酒店详情、房型与报价\n- 用户确认后创建酒店预订订单\n\n## 配置要求\n\n### 必需配置\n\n- **TUNIU_API_KEY**：途牛开放平台 API key，用于 `apiKey` 请求头\n\n用户需在[途牛开放平台](https://open.tuniu.com/mcp)注册并获取上述密钥。\n\n### 可选配置\n\n- **TUNIU_MCP_URL**：MCP 服务地址，默认 `https://openapi.tuniu.cn/mcp/hotel`\n\n### 会话说明\n\n## 调用方式\n\n**直接调用工具**：使用以下请求头调用 `tools/call` 即可：\n\n- `apiKey: $TUNIU_API_KEY`\n- `Content-Type: application/json`\n- `Accept: application/json, text/event-stream`\n\n## 可用工具\n\n**重要**：下方示例中的参数均为占位，调用时需**根据用户当前需求**填入实际值（城市、日期、酒店 ID/名称、入住人、联系方式等），勿直接照抄示例值。\n\n### 1. 酒店搜索 (tuniu_hotel_search)\n\n**第一页**：必填 `cityName`，可选 `checkIn`、`checkOut`（格式 YYYY-MM-DD）、`keyword`、`prices` 等。响应会返回 `queryId`、`totalPageNum`、`currentPageNum`，需保留 queryId 供翻页使用。\n\n**翻页**：传 `queryId`（首次搜索返回）和 `pageNum`（2=第二页，3=第三页…），不再传 cityName。用户说「还有吗」「翻页」「下一页」时必须用 queryId + pageNum 再次调用。\n\n**触发词**：某地酒店、某日入住、查酒店、搜酒店\n\n```bash\n# 第一页：cityName/checkIn/checkOut 等按用户说的城市、入住/离店日期填写（日期格式 YYYY-MM-DD）\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_search\",\"arguments\":{\"cityName\":\"<用户指定的城市>\",\"checkIn\":\"<用户指定的入住日期 YYYY-MM-DD>\",\"checkOut\":\"<用户指定的离店日期 YYYY-MM-DD>\"}}}'\n```\n\n```bash\n# 翻页：queryId 用上轮 search 返回的值，pageNum 为 2、3、4…\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"apiKey: $TUNIU_API_KEY\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":3,\"method\":\"tools/call\",\"params\":{\"name\":\"tuniu_hotel_search\",\"arguments\":{\"queryId\":\"<上轮返回的queryId>\",\"pageNum\":2}}}'\n```\n\n### 2. 酒店详情 (tuniu_hotel_detail)\n\n**入参**：`hotelId`（数字，与搜索结果一致）与 `hotelName` 二选一必填；可选 `checkIn`、`checkOut`（YYYY-MM-DD）、`roomNum`、`adultNum`、`childNum` 等。\n\n当用户说「看一下」「详情」「介绍」某酒店且对话或搜索结果中已有 hotelId 或 hotelName 时，直接传入调用，无需用户再确认。\n\n**触发词**：酒店详情、房型、看一下某某酒店、介绍这家酒店\n\n```bash\n# 按 hotelId：hotelId 从搜索结果或用户指定酒店取，日期按用户需求填\ncurl -s -X POST \"${TUNIU_MCP_URL:-https://openapi.tuniu.cn/mcp/hotel}\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/j"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7bc8chgvfzqsf2s965yfwd4580pdvz\",\n  \"slug\": \"tuniu-hotel\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1772246055434\n}"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"途牛酒店助手 - 通过 exec + curl 调用 MCP 实现酒店搜索、详情查询、预订下单。适用于用户询问某地酒店、入住日期、查看酒店详情或提交订单时使用。 Skill: 途牛酒店预订技能 Owner: Leonardoooooo Summary: 途牛酒店助手 - 通过 exec + curl 调用 MCP 实现酒店搜索、详情查询、预订下单。适用于用户询问某地酒店、入住日期、查看酒店详情或提交订单时使用。 Tags: latest:1.0.3 Version history: v1.0.3 | 2026-02-28T02:34:15.434Z | user Version 1.0.3 - 增加了对运行环境（需提供 curl）的显式说明 - 明确列出必需环境变量（TUNIU_API_KEY）和所需二进制（curl）于元数据 - 新增“隐私与个人信息说明”，提醒用户预订动作会发送联系人姓名、手机号等至途牛远端服务 - 补充了使用时的隐私注意事项，建议勿在日志或回复中暴露个人信息 - 其它文档结构性优化，无功能变更 v1.0.2 | 2026-02-28T02:28:38.638Z |","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":515,"uniquenessScore":62,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T00:20:57.794Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}