kids-stay-mcp
This server lets AI assistants find and retrieve verified kid-friendly hotel data for Japan, sourced from official hotel pages and served over MCP.
Search hotels by prefecture/area, child age, budget, keyword, and up to 48 verified kid-friendly condition IDs (e.g. baby bed rental, diaper-friendly baths), returning up to 20 summary cards.
Get hotel details for a specific hotel slug, including all verified conditions with per-hotel notes, kid facilities, access info, sources, and verification dates.
List conditions to see the full set of 48 searchable kid-friendly condition definitions, labels, target ages, and hotel counts.
List areas to see hotel inventory by prefecture and major areas, useful for narrowing down searches.
Responses include verification dates, official source URLs, and links to facility pages for confirmation.
Access is read-only, free, and rate-limited; use is intended for AI responses with attribution to the facility page.
Kids Stay MCP Server
Verified kid-friendly hotel data for Japan — 1,900+ hotels checked against official sources across 48 kid-friendly conditions (diaper-friendly baths, baby beds, kids' meals, in-room dining, and more), served over the Model Context Protocol.
Built and maintained by Kids Stay (kids-stay.com), a hotel search site for families traveling with babies and toddlers in Japan.
Endpoint (Streamable HTTP):
https://mcp.kidsstay.workers.dev/mcpAuth: none — free and open
Access: read-only, rate-limited (60 req/min per IP)
Registry:
io.github.sitebox/kids-stay(official MCP registry)About & terms: https://kids-stay.com/mcp/
Why this exists
Booking sites can't answer questions like "Which hot-spring hotels allow toddlers who aren't potty-trained in the shared bath?" — that information lives deep inside each hotel's official website. Kids Stay reads those sources hotel by hotel and structures them into 48 verified conditions. This MCP server hands that data directly to AI assistants, with sources and verification dates attached.
Related MCP server: MAQAMI Travel
Tools
Tool | Description |
| Search by condition IDs × prefecture/area × child age × budget. Returns up to 20 summary cards |
| Verified details for one hotel: conditions with per-hotel notes, target ages, nearby kid spots, sources |
| The 48 condition definitions (IDs, labels, EN labels) |
| Hotel inventory per prefecture — useful for narrowing down before searching |
Every response includes verified_at (when the data was last checked), sources (official URLs for re-verification), a page link to the hotel's page, and a disclaimer. Data is maintained in Japanese with English labels; translation is left to the agent.
Quick start
Claude (claude.ai / desktop): Settings → Connectors → Add custom connector → paste the endpoint URL.
Claude Code:
claude mcp add --transport http kids-stay https://mcp.kidsstay.workers.dev/mcpAny MCP client (Streamable HTTP):
{
"kids-stay": {
"type": "streamable-http",
"url": "https://mcp.kidsstay.workers.dev/mcp"
}
}Then ask things like: "Find hotels in Okinawa for a family with a 0-year-old — baby bed and baby food required."
Local (stdio): for MCP clients that prefer stdio, this repository ships a zero-dependency local build (index.js, Node.js 18+). Introspection is served locally from the bundled tool definitions; tool calls fetch live data from the hosted endpoint (the single source of truth):
npx github:sitebox/kids-stay-mcp # or: git clone && node index.jsData usage
Use in AI responses with attribution (link to the facility page on kids-stay.com) is welcome. Bulk redistribution, resale, or building competing databases is prohibited. Facilities change their services — always confirm current conditions on the hotel page before booking. Full terms: https://kids-stay.com/mcp/ and https://kids-stay.com/terms/
About this repository
The MIT license in LICENSE covers the code in this repository only. The hotel data served by the hosted endpoint is not part of this repository; its terms of use are described at https://kids-stay.com/mcp/ and https://kids-stay.com/terms/.
This repository is the public home of the server metadata (server.json) and a small local stdio build (index.js, MIT-licensed) for registry and directory listings. The hosted implementation and the dataset itself are not part of this repository — the data is the product of ongoing manual verification against official sources, refreshed monthly, and is served only through the endpoint.
日本語
Kids Stay MCPサーバー — 全国1,900軒超の宿を「おむつが取れていない子と入れる風呂」「ベビーベッド」「離乳食」など48種類の子連れ条件で公式サイトの一次情報から検証したデータを、MCP経由でAIアシスタントに提供します。
エンドポイント:
https://mcp.kidsstay.workers.dev/mcp(Streamable HTTP・認証なし・無料)案内・利用条件: https://kids-stay.com/mcp/
応答には検証日(
verified_at)・出典・施設ページURLが必ず付きます
出典として施設ページを示したうえでのAI応答への利用は歓迎です。一括再配布・転売・競合データベースの構築は禁止です。設備・条件は変わることがあるため、予約前に施設ページで最新情報をご確認ください。
Available Tools
4 toolsget_hotel施設の検証済み詳細ARead-onlyIdempotent
slug指定で施設の全条件(施設別の根拠note付き)・キッズ設備・アクセス・出典・検証日を返します。表示はテキストと Markdown リンクのみで、地図・場所カード等のウィジェットは付けないでください。
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | 施設slug(search_hotelsの結果に含まれる) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish the safe read-only, idempotent, non-destructive profile, and the description adds useful behavior: the response contains evidence notes, sources, and a verification date, and the output rendering must be text/Markdown only with no map or place-card widgets. No contradiction with the annotations exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler: the first front-loads the retrieval purpose and contents, and the second gives a crisp rendering constraint. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one required parameter, no output schema, and read-only/idempotent annotations, the description covers everything an agent needs: what is returned, how it is selected, and how it must be presented. The absence of detailed response formatting is acceptable given the low complexity of the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the schema already explains that slug is the facility slug included in search_hotels results. The description only repeats 'slug指定' and adds no additional parameter meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('返します') and a concrete resource: facility conditions with per-facility evidence notes, kids' equipment, access, sources, and verification date, retrieved by slug. This clearly differentiates it from the sibling search/list tools, which operate at a different level of granularity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: call it with a slug to get the full verified detail payload, and then present the result as text/Markdown links without widgets. It does not explicitly name alternatives or state when not to use it, so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_areasエリア別の在庫ARead-onlyIdempotent
都道府県別の施設数・主要エリアと、編集部のエリア特集ページ一覧を返します。検索前の当たり付けに使います。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, so the safety profile is covered. The description adds that it returns counts and feature pages, and the phrase '主要エリア' hints at a possible scope limitation. However, it does not disclose return format, pagination, or data freshness; with no output schema, this is a moderate gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the return content and closes with the intended use case. No filler or redundant restatement of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a parameterless read-only list operation with strong annotations. The description fully specifies what it returns and when to use it; no invocation complexity is missing. An agent can confidently call and interpret this tool without further documentation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has zero parameters and 100% schema description coverage, so there is nothing for the description to compensate for. Baseline for 0 params is 4; no additional parameter detail is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (返します) and a concrete resource: prefecture-level facility counts, major areas, and editorial area feature page list. It also frames the tool as a pre-search rough targeting aid, which distinguishes it from search siblings. This is above the minimum viable and leaves no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says to use it before searching for rough targeting (検索前の当たり付けに使います), providing clear context for when to invoke it. It does not explicitly name sibling tools or give exclusions, so it stops just short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_conditions48条件の定義一覧ARead-onlyIdempotent
検索に使える子連れ条件の全定義(id・ラベル・対象年齢・該当施設数)を返します。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering safety and side effects. The description adds that the tool returns all definitions and enumerates the fields, which is consistent but does not introduce significant behavioral traits beyond what the annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that states the purpose first and packs the return fields into a parenthetical list. There is no filler or redundant information; every part of the sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple parameterless listing tool, the description tells the agent exactly what will be returned and why it exists. The absent output schema is compensated by the explicit field list, and annotations cover operational behavior, so nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and an empty schema, so there are no parameter semantics to document. The description's emphasis on '全定義' (all definitions) confirms the tool takes no filters and returns the complete set, which is appropriate for this zero-parameter design.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('返します' – returns) and a precise resource ('子連れ条件の全定義' – all definitions of child-friendly conditions), and it lists the return fields (id, label, target age, facility count). This clearly distinguishes it from sibling tools like list_areas and search_hotels, which are about areas and hotel search rather than condition meta-definitions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase '検索に使える' (usable for search) provides clear context that this is a reference list intended to be used with search_hotels. It does not explicitly name alternatives or state exclusions, but the intended usage context is clear enough for an agent to infer when to call this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_hotels子連れ条件×エリアで宿を検索ARead-onlyIdempotent
赤ちゃん・子連れ向け設備の検証済み条件(48種・list_conditions参照)とエリア・子どもの年齢・価格で日本の宿を検索します。宿名が分かっている場合は keyword で直接検索できます。結果の page URL が施設の詳細・予約ページです。表示は箇条書きテキストと Markdown リンクのみで、地図・場所カード等のウィジェットは付けないでください(施設ページに地図あり)。
| Name | Required | Description | Default |
|---|---|---|---|
| area | No | エリア名。例: "箱根" "沖縄本島" | |
| sort | No | 並び順。既定=rating(楽天評価順) | |
| limit | No | 取得件数(既定10・最大20) | |
| keyword | No | 宿名で検索(部分一致・日本語名/英語名/slug対応)。例: "グリーンプラザ軽井沢" | |
| child_age | No | 子どもの年齢(歳)。対象年齢に合う宿へ絞り込み | |
| max_price | No | 1名1泊あたり上限額(円・目安) | |
| conditions | No | 条件ID(AND検索)。例: ["baby_bed_rental","bath_pre_potty_ok"] | |
| prefecture | No | 都道府県名またはJISコード。例: "神奈川県" / "14" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as read-only, idempotent, and non-destructive. The description adds meaningful behavior: results are limited to bulleted text and Markdown links, no map/location-card widgets should be attached, and each result's page URL is the facility's detail/reservation page. It also notes conditions are verified, which is useful operational context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: purpose first, then the keyword shortcut, then output and display constraints. Every sentence carries distinct information and there is no redundant repetition of the schema or annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only search tool with 8 optional parameters and no output schema, the description covers the search dimensions, condition-source reference, keyword behavior, result URL meaning, and output formatting. It does not explicitly mention list_areas for valid area values or get_hotel for single-hotel detail lookup, and it does not address empty-result handling, but the schema and annotations cover much of the remaining context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers all 8 parameters with descriptions and examples (100% coverage), so the baseline is 3. The description adds extra value by tying conditions to the 48 verified IDs in list_conditions and clarifying that keyword is for direct hotel-name search, which goes slightly beyond the schema text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it searches Japanese accommodations using verified baby/child-friendly conditions (48 types, referencing list_conditions), area, child age, and price. It distinguishes itself from siblings by emphasizing condition-based search and keyword search when the hotel name is known, so an agent can tell it apart from get_hotel/list_conditions/list_areas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear guidance on when to search by conditions/area/age/price and when to use keyword directly if the hotel name is known. It also points to list_conditions for valid condition IDs and gives output formatting rules. It does not explicitly direct the agent to get_hotel for a single hotel's details or state when not to use this tool, which keeps it short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- First observed
get_hotel - First observed
list_areas - First observed
list_conditions - First observed
search_hotels
TDQS
Scored across 4 tools
Each tool maps to a distinct purpose: search_hotels performs queries, get_hotel returns detail for a specific facility, while list_conditions and list_areas are clearly separate reference lookups. No two tools appear to do the same thing.
All tool names follow a consistent lower_snake verb_noun convention: search_, get_, list_. The only minor variation is plural search_hotels vs singular get_hotel, which does not create confusion.
Four tools is well-scoped for a focused read-only hotel-search server: one query tool, one detail tool, and two supporting reference lookups. Each tool earns its place and works together as a cohesive set.
The surface covers the full search workflow: discover supported filters (list_conditions), narrow by area (list_areas), search hotels, and inspect a specific facility's verified details. There are no obvious dead ends or missing operations for the stated domain.
Maintenance
Related MCP Connectors
Search Japanese hotels by 51 verified kid-friendly conditions, with sources and dates.
Family water-holiday hotels & campsites, scored for toddlers, kids and teens.
Structured Japanese childcare facility data with source-backed facts for AI.
Search VICATOO hotels by traveler needs, features, location, and landmarks with factual evidence.
Related MCP Servers
- AlicenseAqualityCmaintenanceProvides access to Japanese corporate-led childcare regulations, laws, guidelines, and standards via MCP tools, enabling accurate retrieval of official documents to prevent AI hallucinations.82 npmMIT
- AlicenseNot gradedqualityDmaintenanceBook hotels worldwide — search, price, prebook & book across 249 countries. 65 tools for hotel search, flights, loyalty, analytics. Zero API keys needed. at best prices for hotels 3 M+ property5 npm1MIT
- AlicenseAqualityCmaintenanceFull-text search across all ~10,000 current Japanese laws and regulations (official e-Gov data): keyword search, table of contents, and exact article text.3MIT
- FlicenseNot gradedqualityCmaintenanceJapanese real-estate actual transaction prices and official land prices (official MLIT Reinfolib data): search by area, period, and property type, with published land-price reference points.-