daolv-hotel-search
Hotel search and shortlist comparison using the ai-go-hotel MCP server (getHotelSearchTags, searchHotels). Use when users need fast hotel discovery by city/POI/date/budget/amenities/brand, but do not yet need full booking-room confirmation.
Packaged view
This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.
Install command
npx @skill-hub/cli install openclaw-skills-daolv-hotel-search
Repository
Skill path: skills/cnchenkai/daolv-hotel-search
Hotel search and shortlist comparison using the ai-go-hotel MCP server (getHotelSearchTags, searchHotels). Use when users need fast hotel discovery by city/POI/date/budget/amenities/brand, but do not yet need full booking-room confirmation.
Open repositoryBest for
Primary workflow: Research & Ops.
Technical facets: Full Stack, Backend, Data / AI, Designer, Integration.
Target audience: everyone.
License: Unknown.
Original source
Catalog source: SkillHub Club.
Repository owner: openclaw.
This is still a mirrored public skill entry. Review the repository before installing into production workflows.
What it helps with
- Install daolv-hotel-search into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
- Review https://github.com/openclaw/skills before adding daolv-hotel-search to shared team environments
- Use daolv-hotel-search for development workflows
Works across
Favorites: 0.
Sub-skills: 0.
Aggregator: No.
Original source / Raw SKILL.md
---
name: daolv-hotel-search
description: Hotel search and shortlist comparison using the ai-go-hotel MCP server (getHotelSearchTags, searchHotels). Use when users need fast hotel discovery by city/POI/date/budget/amenities/brand, but do not yet need full booking-room confirmation.
---
# Daolv Hotel Search
Focus on fast discovery and clean shortlist output.
## Workflow
1. Capture search intent
- Extract destination, check-in date, nights, guests, budget, star range, distance preference, amenities, brand preferences.
- Ask only minimal missing questions.
2. Prime tags once
- Call `ai-go-hotel.getHotelSearchTags` once per task.
- Map user intent into `hotelTags.requiredTags` / `preferredTags` / `excludedTags`.
3. Run hotel search
- Call `ai-go-hotel.searchHotels` with required fields:
- `originQuery`, `place`, `placeType`
- Include optional fields when available:
- `checkInDate`, `stayNights`, `adultCount`, `countryCode`, `starRatings`, `distanceInMeter`, `size`, `hotelTags`
- Prefer `size=10` first, then narrow to top 3-5.
4. Return shortlist only
- Output: 1 recommended + 2 alternatives.
- Include quick trade-off: price / location / amenities / star.
- Do not deep-dive room plans unless user asks to proceed to booking.
## Output Template
- **搜索条件**:地点 / 日期 / 人数 / 预算 / 偏好
- **首选酒店**:价格区间、位置、标签命中、推荐理由
- **备选 1-2**:同结构
- **下一步**:是否进入“房型与退改细节”阶段
## Quality Bar
- Use concrete numbers when available.
- Use `price.lowestPrice` + `price.currency` (price is object).
- If price missing/null, mark as “需二次查价”.
- Keep output concise and decision-oriented.
## MCP Preset Config
- Embedded preset: `references/mcp-client-config.json`
- Endpoint: `https://mcp.aigohotel.com/mcp` (`streamable_http` + prefilled Authorization header)
---
## Referenced Files
> The following files are referenced in this skill and included for context.
### references/mcp-client-config.json
```json
{
"mcpServers": {
"aigohotel-mcp": {
"url": "https://mcp.aigohotel.com/mcp",
"type": "streamable_http",
"headers": {
"Authorization": "Bearer mcp_171e1ffa7da343faa4ec43460c52b13f",
"Content-Type": "application/json"
}
}
}
}
```
---
## Skill Companion Files
> Additional files collected from the skill directory layout.
### _meta.json
```json
{
"owner": "cnchenkai",
"slug": "daolv-hotel-search",
"displayName": "Daolv Hotel Search",
"latest": {
"version": "0.1.0",
"publishedAt": 1771992312801,
"commit": "https://github.com/openclaw/skills/commit/3dd1edc004b754c654b91ffb7846886a629eda47"
},
"history": []
}
```
### references/aigohotel-mcp-spec.md
```markdown
# AIGoHotel MCP Live Spec (2026-02-11)
Source snapshot provided by user.
## Tools
1. `searchHotels`
2. `getHotelDetail`
3. `getHotelSearchTags`
## Key Compatibility Notes
- `searchHotels.price` is an object (not a scalar number).
- Prefer: `price.lowestPrice`, `price.currency`, `price.hasPrice`.
- `searchHotels` may return nullable or missing fields by supplier.
- `getHotelDetail` may fail with plain text error (e.g. “获取价格失败,请稍后重试”).
- `roomRatePlans` can be large; clients should cap displayed rows.
- Date defaults/fallbacks are server-side tolerant:
- `checkInDate` invalid/past/empty → tomorrow
- `checkOutDate` invalid/non-later → `checkInDate + 1 day`
## searchHotels required fields
- `originQuery` (string)
- `place` (string)
- `placeType` (string)
`placeType` supports:
- 城市, 机场, 景点, 火车站, 地铁站, 酒店, 区/县, 详细地址
## searchHotels optional highlights
- `queryParsing` (default true)
- `checkInDate` (`YYYY-MM-DD`)
- `stayNights` (default 1)
- `adultCount` (default 2)
- `countryCode` (ISO 3166-1 alpha-2)
- `distanceInMeter` (POI scenario)
- `starRatings` (default `[0.0,5.0]`, step 0.5)
- `size` (default 5, max 20)
- `withHotelAmenities`
- `language` (default `zh_CN`)
- `hotelTags`
- `preferredTags`
- `requiredTags`
- `excludedTags`
- `preferredBrands`
- `maxPricePerNight`
- `minRoomSize`
## getHotelDetail input highlights
- one of: `hotelId` or `name` (hotelId wins)
- `checkInDate`, `checkOutDate`
- `adultCount`, `childCount`, `childAgeDetails`
- `roomCount`
- `countryCode` (default CN)
- `currency` (default CNY)
## getHotelSearchTags output use
- fetch once and cache per task
- map intent to:
- `hotelTags.preferredTags`
- `hotelTags.requiredTags`
- `hotelTags.excludedTags`
## Embedded Client Preset
- See `references/mcp-client-config.json` for the prefilled server config and Authorization header.
## Links
- Source repo: https://github.com/longcreat/aigohotel-mcp
- API key apply: https://mcp.agentichotel.cn/apply
- MCP spec: https://modelcontextprotocol.io/
```
### references/distribution.md
```markdown
# Distribution Checklist (ClawHub + awesome-openclaw-skills)
## 1) Preflight
- Ensure skill folder name equals frontmatter `name`.
- Validate frontmatter has only `name` and `description`.
- Remove placeholders/TODO text.
- Run package command:
```bash
python3 /usr/lib/node_modules/openclaw/skills/skill-creator/scripts/package_skill.py \
/root/.openclaw/workspace/skills/daolv-hotel-booking \
/root/.openclaw/workspace/dist
```
## 2) Publish to ClawHub
```bash
clawhub login
clawhub publish /root/.openclaw/workspace/skills/daolv-hotel-booking
```
If not logged in, complete browser login first, then rerun publish.
## 3) Publish to awesome-openclaw-skills (GitHub)
1. Fork `awesome-openclaw-skills`.
2. Add one concise entry under the relevant category (travel/hospitality if present).
3. Include:
- Skill name + 1-line value proposition
- ClawHub link (or repo link if pending)
4. Open PR with title:
- `Add daolv-hotel-booking skill`
Recommended commit message:
- `feat: add daolv-hotel-booking to travel skills`
## 4) Post-publish verification
- Install from registry in a clean path and verify:
```bash
mkdir -p /tmp/skill-smoke && cd /tmp/skill-smoke
clawhub install <published-slug>
```
- Run one smoke query:
- “帮我找下周武汉出差酒店,预算 500/晚,靠近地铁,含早餐。”
## 5) Changelog discipline
For every update, note:
- What changed (workflow, parameters, output format)
- Why it changed (bugfix, better ranking, better UX)
- Compatibility impact (if any)
```
### references/promo-copy.md
```markdown
# Promo Copy Templates
## A) ClawHub short description
面向酒店预订与旅行规划的实战 Skill:基于道旅 MCP 自动完成“需求澄清 → 酒店筛选 → 房型比价 → 决策建议 → 下单前确认”,输出可直接执行的预订方案。
## B) Social / group announcement
🚀 新技能上线:`daolv-hotel-booking`
如果你在 OpenClaw 里经常遇到“找酒店、比价格、选房型、做决策”这类任务,这个 Skill 可以直接用:
- 基于道旅 MCP(酒店搜索 + 详情)
- 自动提取预算/位置/人群/设施偏好
- 输出“首选 + 两个备选”并附带取舍理由
- 给出最终下单前 2-4 条关键确认项
适用场景:出差、亲子游、自由行、临时改签住宿。
## C) awesome-openclaw-skills PR body
### What this adds
Add `daolv-hotel-booking`, a travel/hotel planning skill powered by ai-go-hotel MCP.
### Why it is useful
- Turns ambiguous booking requests into structured constraints
- Produces shortlist + room-level detail comparison
- Reduces decision latency with explicit trade-off guidance
### Typical user request
“下周去上海出差,预算每晚 700,地铁步行 10 分钟内,帮我选 3 家并说明推荐理由。”
```