ai-furniture-hub
The AI Furniture & Home Product Hub MCP server gives AI agents 15 tools to search, compare, coordinate, and recommend furniture and home products (355+ products, 31 categories, 90+ brands), plus structured prompts and AI visibility diagnostics.
Search & Discovery
search_products: Search by keyword, dimensions (mm), price, color, category, or brandget_product_detail: Full specs — inner dimensions, materials, stock status, consumables, affiliate linkssearch_rakuten_products: Real-time Rakuten Ichiba listings with live prices, reviews, and imagessearch_amazon_products: Generate Amazon affiliate search URLs with automatic category selectionsuggest_by_space: Input room/space dimensions and get all fitting products (rotation-aware)identify_product: Describe visual features to identify model numbers, inner dimensions, and compatible accessories
Coordination & Comparison
coordinate_storage: Propose shelf + storage box combinations with quantity-per-tier and total cost calculationscompare_products: Side-by-side comparison of 2–5 products on price, size, reviews, and load capacityfind_replacement: Find successors/alternatives for discontinued products with afit_score(0–100)calc_room_layout: Simulate furniture placement in a room with coordinates via rectangle packingget_related_items: Discover accessory chains — required accessories, protection materials, and consumables
Curation & Intelligence
get_curated_sets: Browse bundles, room presets, influencer picks, and budget hack sets filtered by type, scene, or budgetget_popular_products: Trending products by category or brand, including Rakuten ranking datalist_categories: All 31 categories with product counts, brand lists, and sample itemsdiagnose_ai_visibility: Audit any website's AI discoverability (checks llms.txt, robots.txt, JSON-LD, OGP tags) — returns a score (0–100), grade (A–F), and recommendations
Structured Prompts
room_coordinator: Full room setup (shelf, boxes, protection) based on space dimensionsmoving_checklist: Room-by-room purchasing checklist based on floor plan typeproduct_showdown: Detailed comparison including accessories and running costs
All results include affiliate URLs for monetization. The server supports MCP (stdio/HTTP), OpenAPI 3.1, Japanese UI, and cross-border readiness checks.
Provides Amazon affiliate search URL generation with auto SearchIndex through the search_amazon_products tool, enabling AI agents to find and recommend Amazon products with affiliate tracking.
Available as an npm package (ai-furniture-hub) for local installation and execution via npx, providing easy distribution and version management through the npm registry.
Enables real-time Rakuten Ichiba search through the search_rakuten_products tool, providing access to 200K+ listings with prices and reviews, and supports Rakuten affiliate integration for revenue attribution.
Supports deployment on Render platform with a hosted endpoint available at https://ai-furniture-hub.onrender.com/mcp for remote MCP connections without local installation.
AI Furniture & Home Product Hub - MCP Server
15 tools | 355+ curated products | 31 categories | 90+ brands Millimeter-precision search, curated sets, AI visibility diagnosis, OpenAPI 3.1 schema. Built for ChatGPT, Claude, Gemini, Cursor, Perplexity, and any MCP-compatible AI agent.
Discovery & Install
MCP Registry name:
io.github.ONE8943/ai-furniture-hubRemote MCP endpoint:
https://ai-furniture-hub.onrender.com/mcpWell-known discovery:
https://ai-furniture-hub.onrender.com/.well-known/mcp.jsonnpm package:
ai-furniture-hub
If your MCP client supports registry search, search for io.github.ONE8943/ai-furniture-hub or AI Furniture & Home Product Hub.
If your client supports direct remote MCP, connect it to https://ai-furniture-hub.onrender.com/mcp.
Related MCP server: KaliCart Global
Why This Exists
AI agents need structured, machine-optimized product data to make useful recommendations. This MCP server provides:
Exact-fit search: "Find a shelf that fits a 425mm gap" returns products with 1mm accuracy
Complete solutions: One search returns the shelf + matching storage boxes + floor protection + cable organizers
Curated by experts: Influencer picks, room presets, bundle deals, and budget hack alternatives
Replacement intelligence: Discontinued product? Get successors ranked by dimension compatibility (fit_score 0-100)
AI visibility consulting: Diagnose any website's AI discoverability with a single tool call
Quick Start
Option 1: Remote (Cursor / Claude / VS Code / ChatGPT)
Connect directly to the hosted server:
{
"mcpServers": {
"furniture-hub": {
"url": "https://ai-furniture-hub.onrender.com/mcp"
}
}
}Works in any MCP client that accepts a remote Streamable HTTP URL.
Option 2: npx (local)
npx ai-furniture-hubOption 3: Clone & Run
git clone https://github.com/ONE8943/ai-furniture-hub.git
cd ai-furniture-hub
npm install
cp .env.example .env # API keys optional - works with mock data
npm start # stdio mode
npm run start:http # HTTP mode at localhost:3000/mcpTools (15)
Search & Discovery
Tool | What It Does |
| Search 300+ products by keyword, dimensions (mm), price, color, category, brand |
| Full specs: inner dimensions, consumables, compatible storage, curations |
| Real-time Rakuten Ichiba search (200K+ listings with prices & reviews) |
| Amazon affiliate search URL generation with auto SearchIndex |
| "I have a 600x400mm space" -> everything that fits, rotation-aware |
| Visual description -> product candidates with model numbers |
Coordination & Comparison
Tool | What It Does |
| Shelf + storage box set proposals: quantity per tier, total cost |
| Side-by-side comparison (2-5 products) on price, size, load, reviews |
| Discontinued model -> successors + dimension-compatible alternatives with |
| Floor-plan rectangle packing with placement coordinates |
| Accessory chains: required items, protection, consumables, hack substitutes (depth 1-2) |
Curation & Intelligence
Tool | What It Does |
| Bundles, room presets, influencer picks, hack sets. Filter by type/scene/budget |
| Trending products by category with Rakuten data |
| Browse 31 categories with counts, brands, samples |
| AI visibility audit: llms.txt, robots.txt, JSON-LD, OGP, score 0-100 |
Prompt Workflows (3)
Prompt | Flow |
| Space dimensions -> shelf + boxes + protection with quantities & cost |
| Floor plan type -> room-by-room purchasing checklist with budget |
| Two products -> full comparison including accessories & running costs |
Product Categories (31)
Area | Categories |
Storage | Shelves, Color boxes, Storage cases, Clothing storage, Steel racks, Closet storage, File storage |
Furniture | Desks, TV stands, Bookshelves, Dining, Sofas & chairs, Bedding |
Room-specific | Kitchen, Laundry, Bath, Entrance, Baby safety |
Hardware | Tension rods, Protection materials, Parts & accessories, Wagons |
Appliances | Home appliances, Kitchen appliances, Air quality, Smart home |
Tech & Lifestyle | PC peripherals, Beauty devices, Gadgets, Health & fitness |
Decor | Curtains & blinds |
Key Features
Cinderella-Fit Search
All dimensions in millimeters - outer AND inner. Find products that fit a specific space with 1mm tolerance. Rotation-aware: automatically checks if swapping width/depth creates a fit.
Related-Item Chains
Every product links to 3-5 related items: required accessories (HEPA filters for air purifiers), protection materials (floor mats for heavy shelves), consumables (vacuum bags), compatible storage boxes.
Curated Sets
Bundles: "New Life Starter Kit", "Work From Home Set"
Room Presets: IKEA-style complete room configurations
Influencer Picks: Real recommendations from YouTubers and magazines
Hack Sets: Budget alternatives (100-yen substitutes for 1000-yen accessories)
Dimension-Compatible Replacement
Discontinued product? find_replacement returns:
DB-registered successors
Dimension-compatible alternatives with
fit_score(0-100)Live Rakuten search results
AI Visibility Diagnosis (AIO)
diagnose_ai_visibility audits any URL:
llms.txt presence
robots.txt AI crawler access
Structured data (JSON-LD, Schema.org)
OGP tags
Cross-border readiness (English metadata, multi-currency)
Returns score (0-100), grade (A-F), actionable recommendations
Attribution & Analytics
Every API response includes _attribution metadata with a unique attribution_id, enabling:
Per-call tracking for pay-per-call monetization
Source detection (Apify, RapidAPI, direct)
Contribution logging for revenue attribution
API & Integration
OpenAPI 3.1 Schema
Full OpenAPI spec available at /openapi.yaml for RapidAPI and marketplace integration.
AI Discovery Endpoints
File | URL | Purpose |
llms.txt | AI agent overview | |
llms-full.txt | Full tool schemas & examples | |
OpenAPI | REST API specification | |
Server Card | Machine-readable metadata | |
context.md | Structured AI context | |
robots.txt | AI crawler permissions |
MCP Resources
furniture-hub://llms.txt
furniture-hub://llms-full.txtArchitecture
AI Agent (ChatGPT, Claude, Gemini, Cursor, Perplexity, ...)
| MCP (stdio or Streamable HTTP)
v
+-----------------------------------------------------------+
| 15 Tools + 3 Prompts |
+-----------------------------------------------------------+
| 355+ Products | 31 Categories | 90+ Brands |
| Curated Sets: bundles, room presets, influencer picks |
| Compatibility DB: dimension-based fit scoring |
| Attribution: per-request tracking with attribution_id |
+-----------------------------------------------------------+
| Adapters: Rakuten API / Amazon URL / Nitori |
| Affiliate Engine + Gap Detector + Analytics |
+-----------------------------------------------------------+
|
v
/llms.txt /llms-full.txt /openapi.yaml
/context.md /.well-known/mcp/ /robots.txtEnvironment Variables
Variable | Required | Description |
| No |
|
| No | Comma-separated free-tier API keys for higher rate limits + curated inner dimensions |
| No | Comma-separated pro-tier API keys for unlimited access |
| Render only | Hidden curated inner-dimension DB injected at build time |
| No | Amazon Associate tag |
| No | Rakuten Affiliate ID |
| No | Rakuten API Application ID |
| No |
|
All environment variables are optional. The server works out of the box with mock data.
Deployment
Platform | URL |
MCP Registry |
|
Render |
|
npm |
|
Testing
npm run test:ci # Vitest
npm run test:all # Full legacy suiteContributing
Issues and PRs welcome. See GitHub Issues.
License
MIT
Japanese / 日本語
AI Furniture & Home Product Hub は家具・家電・ガジェット等のAIエージェント向けMCPサーバーです。
MCP Registry名:
io.github.ONE8943/ai-furniture-hubリモート接続URL:
https://ai-furniture-hub.onrender.com/mcpwell-known:
https://ai-furniture-hub.onrender.com/.well-known/mcp.json355+商品、31カテゴリ、90+ブランド のキュレーション済みカタログ
mm精度の寸法検索 - 「幅425mmの隙間にぴったり収まる棚」を即座に発見
関連アイテムチェーン - 1商品から3-5個の関連商品(必須アクセサリ、保護材、消耗品)
キュレーション - バンドル提案、ルームプリセット、インフルエンサーおすすめ、100均代用ハック
後継品検索 - 廃番商品から寸法互換の代替品をfit_scoreで提案
AI可視性診断(AIO) - Webサイトの「AIからの見え方」を0-100でスコアリング
OpenAPI 3.1 - RapidAPI等のマーケットプレイス連携対応
運営
ONE, Inc.
Available Tools
15 toolscalc_room_layout部屋の床面に家具が収まるか簡易シミュレーションA
「この部屋にベッドとデスクは入る?」のように家具の配置可否を確認するときに呼ぶ。部屋の有効寸法(mm)と家具リスト(幅/奥行/個数)からグリッド配置シミュレーションを実行。座標と回転有無を返す。扉・動線は未考慮のため目安として扱うこと。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】部屋の用途・制約 | |
| room_width_mm | Yes | 部屋の有効幅(mm) | |
| room_depth_mm | Yes | 部屋の有効奥行き(mm) | |
| items | Yes | ||
| margin_between_mm | No | ||
| wall_clearance_mm | No | ||
| grid_step_mm | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes the tool's behavior: grid-based simulation, returns coordinates and rotation status, and explicitly states limitations (doesn't consider doors/circulation). However, it doesn't mention performance characteristics, error conditions, or what happens with impossible configurations.
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 perfectly concise with three sentences that each earn their place: first establishes use case with example, second explains inputs and simulation method, third provides crucial limitations. No wasted words, front-loaded with the primary purpose.
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 complex simulation tool with 7 parameters, no annotations, and no output schema, the description does well by explaining the simulation approach, inputs, outputs, and limitations. However, it could provide more detail about the output format and what constitutes success/failure in the simulation to be fully complete.
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?
With only 43% schema description coverage, the description adds significant value by explaining the core parameters: room dimensions in mm, furniture list with width/depth/count, and the simulation approach. While it doesn't detail all 7 parameters, it provides essential context about what the simulation does with these inputs, compensating well for the low schema coverage.
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 clearly states the tool's purpose: performing a grid-based simulation to check furniture placement feasibility in a room. It specifies the input (room dimensions and furniture list) and output (coordinates and rotation status), distinguishing it from siblings like search_products or get_product_detail which handle product information rather than spatial simulation.
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 states when to use this tool ('家具の配置可否を確認するときに呼ぶ' - call when checking furniture placement feasibility) and provides important limitations: it doesn't consider doors or circulation paths, and should be treated as a rough guide. This gives clear context for when to use it versus more detailed alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_products製品比較(価格・サイズ・レビュー・耐荷重を並列比較)A
「NクリックとKALLAXどっちがいい?」のように2〜5製品を比較するときに呼ぶ。価格・サイズ・レビュー・耐荷重を並列比較表で返す。カタログ一致時は内寸・互換収納・buy_guide(best_for/avoid_if)も付加。buy_guideのdecision_hintは比較recommendationにも反映済み。各商品のaffiliate_urlをユーザーに提示すること。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】なぜ比較したいか | |
| keywords | Yes | 比較したい製品の検索キーワード(2〜5件) | |
| compare_aspects | No | 比較したい観点(省略時はデフォルト全項目) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries full behavioral disclosure. It explains conditional behavior (catalog matches add inner dimensions, compatible storage, buy_guide), how buy_guide's decision_hint is reflected in the comparison recommendation, and instructs presenting affiliate_url to the user. This goes beyond a simple statement and gives actionable behavioral context.
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, starting with the primary usage condition and example. Each sentence provides distinct information (output, conditional add-ons, recommendation logic, user instruction) without fluff or redundancy. The structure is logical and easy to parse for an AI agent.
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?
Given no output schema and no annotations, the description needs to explain return values and behaviors. It does so: describing the parallel comparison table, default and conditional fields, and the affiliate_url presentation directive. It covers the tool's main behavior and expectations sufficiently for an agent to invoke and interpret results.
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 description coverage is 100%, so baseline is 3. The description does not add substantial meaning to the parameters beyond the schema; it mentions default comparison aspects (price, size, reviews, load capacity) but does not elaborate on the intent, keywords, or compare_aspects parameters themselves. It neither compensates nor hurts.
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 clearly states the tool's purpose: comparing 2-5 products, with a concrete example ('NクリックとKALLAXどっちがいい?'). It names the specific resources compared (price, size, reviews, load capacity), and the title reinforces '並列比較' (parallel comparison). This distinguishes it from siblings like get_product_detail (single product) and search_products (searching).
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 provides clear when-to-use guidance: '2〜5製品を比較するときに呼ぶ' (call when comparing 2-5 products), with an example query. However, it does not explicitly mention when not to use this tool or point to alternatives, so it lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
coordinate_storage棚+収納ボックスのコーディネート提案(個数計算付き)A
「この棚に合うボックスは?」「カラーボックスの整理方法」のときに呼ぶ。棚の内寸から収納ボックスの入り数を計算し、1段あたり何個×全段=合計個数・合計金額を算出。設置場所(押入れ/洗面所/キッチン等)に応じたコーディネートのコツ+ペルソナ別推薦(persona_hints)も提供。persona_hintsには予算・おすすめブランド・タイプ別アドバイスが含まれるのでユーザーに合った提案に活用。各商品のaffiliate_urlをユーザーに提示すること。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】設置場所・用途・状況を詳細に | |
| keyword | Yes | 棚の検索キーワード(例: 'カラーボックス 3段') | |
| price_max | No | 棚の予算上限(円) | |
| storage_keyword | No | 収納ボックスの検索キーワード(省略時は自動推定) | |
| scene | No | 設置場所ヒント('押入れ','洗面所','キッチン'等) | |
| shelf_count | No | 提案する棚の件数(1〜5) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses key behaviors: calculates box quantities and total costs, provides coordination tips based on location, includes persona-based advice with budget/brand recommendations, and requires affiliate URL presentation. However, it doesn't mention rate limits, error handling, or data sources.
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 appropriately sized and front-loaded with the primary use case. Every sentence adds value: first establishes when to use, second explains core calculations, third adds coordination advice, fourth details persona hints, fifth specifies affiliate requirement. Minor redundancy exists in mentioning persona_hints twice.
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 complex tool with 6 parameters, no annotations, and no output schema, the description provides good coverage of what the tool does, when to use it, and key behavioral aspects. It explains the calculation logic, recommendation approach, and output requirements (affiliate URLs). The main gap is lack of information about return format or error cases.
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 description coverage is 100%, so the baseline is 3. The description adds meaningful context beyond the schema by explaining how parameters relate to the tool's functionality: '設置場所(押入れ/洗面所/キッチン等)に応じた' clarifies the 'scene' parameter's purpose, and 'persona_hints' connects to the broader recommendation system. However, it doesn't provide additional syntax or format details for individual parameters.
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 clearly states the tool's purpose with specific verbs ('計算し' for calculation, '算出' for computation, '提供' for provision) and resources (shelves, storage boxes). It distinguishes from siblings by focusing on coordination advice with quantity calculations, unlike general search or comparison tools in the sibling list.
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 states when to use this tool with example user queries ('「この棚に合うボックスは?」「カラーボックスの整理方法」のときに呼ぶ'). It also distinguishes usage context by mentioning specific scenarios like storage locations (押入れ/洗面所/キッチン) and persona-based recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
diagnose_ai_visibilityAI可視性診断(AIO診断)A
URLを指定すると、そのサイトがAIエージェント(GPT/Claude/Gemini等)からどの程度「見えている」かを診断する。llms.txt、robots.txt(AIクローラー許可)、構造化データ(JSON-LD)、OGPメタタグ、寸法データ表記、越境対応度をチェックし、0-100のスコアとA-Fグレードを返す。越境対応度(cross_border_readiness)は海外AIエージェントへの可視性を評価。AIOエージェンシーのデモとして「御社の商品、AIからこう見えています」と提示できる。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】なぜ診断が必要か | |
| url | Yes | 診断対象のURL |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of explaining behavior. It does so by enumerating the checks performed and the output format. However, it does not disclose potential side effects (e.g., whether the tool fetches the URL, handles errors, or requires network access), which is a minor gap but not severe.
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 front-loaded with the main verb 'diagnose' and then efficiently lists checks and output. The final demo sentence adds context without excess. It is slightly longer than absolutely necessary but every sentence contributes value.
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?
Since there is no output schema, the description appropriately explains the return format (score and grade) and the key checks performed. The tool's complexity is moderate, and the description covers the essentials well, though it could note potential limitations (e.g., invalid URLs, network failures).
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 already describes both parameters with 100% coverage ('url' and 'intent'), so the baseline is 3. The description does not add extra meaning to the parameters beyond the tool's overall purpose; for example, it does not clarify what should go in 'intent' beyond the schema's vague 'why diagnosis 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 clearly states a specific action: diagnosing how visible a website is to AI agents given a URL. It lists concrete checks (llms.txt, robots.txt, structured data, OGP, etc.) and the output (0-100 score, A-F grade). It is distinct from sibling tools, which focus on physical products, measurements, or searches.
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 provides a clear use context: it can be used as an AIO agency demo to show clients how AI sees their products. However, it does not explicitly state when not to use the tool or mention alternative tools, so it stops short of a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_replacement廃番・旧型の後継・代替品を探すA
「この型番が売ってない」「生産終了した棚の代わり」のときに呼ぶ。カタログの後継候補(successors)と楽天の「後継」「新型」検索結果を返す。最終確認はメーカー公式で。楽天候補のaffiliate_urlをユーザーに提示すること。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】なぜ代替が必要か | |
| query | Yes | 型番または商品名・特徴テキスト |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description carries the full burden. It discloses that the tool returns two types of results (catalog successors and Rakuten search results) and instructs presenting affiliate URLs. However, it does not mention any potential side effects, authentication needs, or failure scenarios, which would be useful for a read/search tool without annotation support.
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 front-loaded with a clear trigger phrase, followed by output details and a critical instruction about affiliate URLs. Every sentence adds value, though it is slightly longer than the minimal two-sentence ideal. No redundancy.
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 no output schema and no annotations, the description should explain return values and handling. It mentions the two result sources and explicitly instructs presenting affiliate_url. However, it leaves out details like result format, limits, or error handling, which would make the tool easier to use correctly.
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 already provides descriptions for both required parameters (query and intent), covering model number/product name and the reason for replacement. The description adds no extra parameter-level context, so baseline 3 is appropriate.
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 clearly defines the tool's role: finding successor/alternative products for discontinued or unavailable model numbers. It explicitly specifies it returns catalog successors and Rakuten search results, which distinguishes it from generic product search siblings like search_products or get_related_items.
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 states when to call the tool: when a model number is not available or a shelf is discontinued. It also advises final confirmation via the manufacturer's official website. It does not mention when not to use it or alternative tools, but the trigger scenarios are clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_curated_setsキュレーション済みセット提案(バンドル/ルームプリセット/インフルエンサーPick/ハックセット)A
「新生活に必要なもの一式」「YouTuberのデスクツアーで紹介された商品」「予算5万で書斎を作りたい」のようなセット提案・キュレーション情報を返す。バンドル(まとめ買いセット)、ルームプリセット(IKEA式ルームセット)、インフルエンサーPick(専門家・YouTuber・雑誌編集部のおすすめ)、ハックセット(代用品セット)の4種類。各商品のproduct_idsでget_product_detailやsearch_rakuten_productsを呼べば詳細と購入リンクが得られる。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】なぜこの提案が必要か | |
| type | No | 絞り込み: bundle / room_preset / influencer_pick / hack_set | |
| scene | No | シーン(書斎、キッチン、リビング等) | |
| occasion | No | オケージョン(新生活、引越し、出産準備等) | |
| budget_max | No | 予算上限(円) | |
| keyword | No | フリーワード検索 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose safety, permissions, and response traits. It does mention that the tool returns product_ids for each product and that further details can be fetched via other tools, but it does not explicitly state it is read-only or describe the full response structure (e.g., set metadata, pagination). It adds behavioral context (four types, follow-up usage) but has gaps.
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, with three sentences covering examples, type definitions, and integration with other tools. Every sentence provides useful information without fluff, and the structure is front-loaded with relatable examples.
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?
Given the tool's 6 parameters and absence of annotations or an output schema, the description should explain return structure thoroughly. It states that product_ids are included and that other tools can be used for details, but it does not describe the overall response shape (e.g., list of sets, fields like set name/description) or any pagination/sorting. The examples and type definitions make it minimally viable but with these gaps.
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 100% of parameters, so the baseline is 3. The description adds value by explaining the 'type' enum with examples (IKEA-style for room_preset, substitute for hack_set) and by showing how intent, scene, and budget combine in a query like 'budget 50k to build a study'. This enriches parameter semantics beyond the schema's one-line descriptions.
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 explicitly states it returns curated set proposals and names four types (bundle, room preset, influencer pick, hack set). It provides concrete example queries and distinguishes from sibling tools by noting that product_ids can be used with get_product_detail or search_rakuten_products for details.
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 on when to use: when the user asks for a set of items like 'everything needed for a new life' or 'YouTuber desk tour products'. It also explains the four subtypes, helping the agent select the right type. It does not explicitly say when not to use alternative search tools, but the examples imply it is for curated bundles rather than individual product search.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_popular_products人気・おすすめ製品(カテゴリ/ブランド別)A
「おすすめの棚は?」「人気のキッチン家電は?」のときに呼ぶ。カテゴリ/ブランドで絞って、互換収納・消耗品情報が充実したおすすめ製品を返す。楽天のレビュー数トレンドも付加。各商品のaffiliate_urlをユーザーに提示すること。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】おすすめを見る目的 | |
| category | No | カテゴリで絞り込み(例: 'デスク', 'キッチン収納') | |
| brand | No | ブランドで絞り込み(例: 'ニトリ', 'IKEA') | |
| limit | No | 取得件数 | |
| include_rakuten_trending | No | 楽天人気ランキングも含めるか |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must carry behavioral disclosure. It states the tool returns recommended products, adds Rakuten review trends, and instructs that affiliate_url must be presented to the user. This is useful but doesn't mention read-only behavior, limits, or error handling. It adds some behavioral context but not comprehensive.
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?
Two sentences, front-loaded with usage triggers, and no redundant information. Every phrase 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?
No output schema exists, so description is responsible for return expectations. It covers the key output elements (product recs, category/brand filtering, Rakuten trends, affiliate URL). However, it doesn't specify response structure or edge cases, and there are no annotations, so it's not fully complete. A 4 reflects sufficient information without being exhaustive.
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%, so baseline is 3. Description adds context by showing sample intents ('Which shelf?') and clarifying that category/brand filter results and include_rakuten_trending relates to the Rakuten trends. It adds small value beyond the schema, but not enough to raise above 3.
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 clearly states the tool returns recommended/popular products filtered by category/brand, with extra info like compatible storage/consumables and Rakuten review trends. It gives usage trigger examples ('おすすめの棚は?', '人気のキッチン家電は?'), making the purpose specific. However, it doesn't explicitly distinguish itself from sibling search tools like search_products, so it stops short of a 5.
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?
Provides explicit trigger contexts ('おすすめの棚は?', '人気のキッチン家電は?') indicating when to invoke. It explains filtering by category/brand but does not mention alternatives or exclusions, so it gets a 4 rather than 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_product_detail家具・収納商品の詳細情報を取得A
商品IDを指定して、特定の家具・収納商品のフルスペック(寸法・価格・在庫・素材など)を取得します。【重要】intentには、なぜこの詳細が必要か(例:購入前の最終確認、サイズの詳細確認、他商品との比較)を記述してください。【収益化】返却される affiliate_url をユーザーへの購入リンクとして使用してください。関連商品(同シリーズ・近いサイズ)も自動で提案されます。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | 商品ID | |
| intent | Yes | 【必須】詳細を見る理由 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden. It discloses useful behavioral traits: the response includes an affiliate_url for purchase links, and related products are automatically suggested. It does not mention read-only status or error behavior, but for a 'get' tool this is less critical and the provided details exceed the bare minimum.
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 well-structured with clear markers (【重要】,【収益化】) and front-loads the primary purpose. Each sentence adds distinct value, though the monetization instruction is perhaps extra; however, it is still concise and not redundant.
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 tool with only 2 parameters, no output schema, and no annotations, the description covers the essential purpose, highlights key return elements (affiliate_url, related products), and explains the intent requirement. It lacks explicit error handling or full response details, but is sufficient for a simple detail-fetch 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%, so the baseline is 3. The description adds meaningful guidance for the intent parameter, specifying it should contain the reason (e.g., '購入前の最終確認') and giving examples. It also explains the purpose of id (商品ID), which aligns with the schema and enhances usability.
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 clearly states the verb+resource: '商品IDを指定して、特定の家具・収納商品のフルスペック(寸法・価格・在庫・素材など)を取得します'. It specifies exactly what the tool does (retrieve full specs by product ID) and distinguishes from siblings like search_products or get_related_items by focusing on a single product's detailed data.
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 tool's usage is implied: it is for when you have a product ID and need full details. However, it does not explicitly state when to use it over sibling tools (e.g., search_products to find IDs first) or provide exclusions, leaving some ambiguity for the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identify_product写真・特徴テキストから製品を特定(型番・内寸・消耗品情報付き)A
「この写真の棚は何?」「持ってる棚に合うボックスを知りたい」のときに呼ぶ。Vision AIで画像から抽出した特徴テキスト(ブランド/色/段数/素材/推定サイズ)を渡すと、カタログ+楽天から候補を返す。型番特定時は内寸・消耗品・互換ボックス情報付き。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】なぜ特定したいか | |
| features | Yes | 画像から読み取った特徴テキスト(ブランド、色、段数、素材、推定サイズ、形状特徴等) | |
| brand_hint | No | ブランド名ヒント(ロゴが見えた場合) | |
| dimensions_hint | No | 推定寸法(mm)分かる範囲で | |
| include_compatible | No | 互換収納・消耗品情報も含めるか(デフォルト: true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool expects pre-extracted feature text (not raw images), searches catalog + Rakuten, and returns candidates conditionally (with extra info when model number is identified). However, it does not mention any limitations, error handling, or side effects, and since it's a quest-like operation, the lack of explicit read-only confirmation is a minor 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?
The description is highly concise, consisting of two sentences that pack in the trigger scenarios, input format, data sources, and output characteristics. It is front-loaded with usage examples and avoids unnecessary fluff, making it easy to scan and understand quickly.
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?
The tool has no output schema, so the description must explain return values. It does mention that candidates are returned and that internal dimensions, consumables, and compatible box info are included when model number is identified. However, it lacks details on the structure of the response or how to interpret multiple candidates, which is a minor gap given the tool's complexity.
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 description coverage is 100%, so the baseline is 3. The description adds context that the 'features' parameter should contain brand/color/number of shelves/material/estimated size, aligning with the schema. It does not provide additional syntax or format details beyond what the schema already documents, but it reinforces the intended usage of the parameters.
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 clearly states the tool's purpose: identifying a product from photo-derived feature text, with specific example queries ('この写真の棚は何?'). It specifies the resource (products from catalog + Rakuten) and distinguishes itself from generic search tools by focusing on image-based identification. The addition of model number, internal dimensions, and consumables info further clarifies its specialized role.
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 when to call it ('「この写真の棚は何?」「持ってる棚に合うボックスを知りたい」のときに呼ぶ'), providing clear use cases. It does not explicitly mention alternatives or when not to use it, but the context is specific enough that an agent can infer differentiation from sibling search tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_categories製品カテゴリ一覧A
「何が検索できる?」「どんなカテゴリがある?」のときに呼ぶ入口ツール。全31カテゴリと製品数・取扱ブランドを返す。カテゴリ名指定でそのカテゴリの製品一覧も取得可能。まずこのツールでカテゴリを把握→ユーザーに提示→選んだカテゴリでsearch_productsに進む。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】カテゴリを見る目的 | |
| category_filter | No | 特定カテゴリに絞る(例: 'キッチン収納', 'デスク') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the output type (all 31 categories, product counts, brands) and the filtering capability, but does not explicitly state that it is a read-only operation, nor does it mention any limitations, error behavior, or rate limits. For a list tool, this is adequate but not rich.
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 three short sentences, front-loaded with the main purpose and usage trigger. Every sentence earns its place: it states the trigger, the return value, and the workflow. No redundant or vague information.
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?
The tool is simple (2 parameters, no output schema), and the description covers the key context: what it returns, how to use it, and how it fits into the larger workflow. It does not explain the exact structure of the returned data, but since no output schema exists, the description does its job adequately.
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%, so the baseline is 3. The description adds meaning by explaining that the category_filter parameter allows retrieving a product list for a specific category. It does not elaborate on the 'intent' parameter, but the schema already describes it as 'the purpose of viewing categories'. The added value slightly exceeds baseline.
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 clearly states the tool's purpose: to list all 31 categories with product counts and brands, and to serve as an entry point for category exploration. It distinguishes itself from search_products by positioning itself as the first step before using that tool. The verb '返す' (return) and specific resources (categories, counts, brands) make it unambiguous.
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 states when to use it: when the user asks what can be searched or what categories exist. It also provides a clear usage flow: first understand categories, present to user, then proceed to search_products. However, it does not explicitly mention when not to use it or alternative tools beyond search_products, which would make it a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_amazon_productsAmazonで家具・収納商品を検索(URL生成)A
ユーザーがAmazonで買いたい場合や楽天で見つからない場合に呼ぶ。Amazonの検索結果ページへのアフィリエイトURLを生成する(商品データは返さない)。SearchIndexはカテゴリから自動選択。affiliate_urlをユーザーに提示すること。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】検索目的 | |
| keyword | Yes | Amazon検索キーワード | |
| price_min | No | 最低価格(円) | |
| price_max | No | 最高価格(円) | |
| sort | No | 並び順 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool returns a URL only, not product data, and that SearchIndex is auto-selected. It also instructs presenting the URL. However, it does not mention potential error cases or behavior for invalid parameters, which would add more transparency. Overall, good but not exhaustive.
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 three concise sentences: when to use, what it does (URL generation, no data), and an instruction. No filler, front-loaded purpose. Every sentence contributes meaning.
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?
The description covers the essential purpose, usage context, and expected output (affiliate_url), which is sufficient for selecting and invoking the tool. However, it does not mention that the tool is specifically for furniture/storage products (though the title does), and it lacks edge-case guidance for empty search results. Minor gaps but overall complete.
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 100% of parameters with descriptions, so the baseline is 3. The description adds context about SearchIndex auto-selection from category, but does not explain sort or price parameters beyond the schema. It does not need to repeat schema details, so it meets the baseline.
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 clearly states the tool generates an affiliate URL for Amazon search results and explicitly notes it does not return product data. This distinguishes it from sibling tools like search_products or search_rakuten_products. The verb 'generate' and resource 'Amazon search results page URL' are specific.
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 when to use this tool: 'when the user wants to buy on Amazon or when not found on Rakuten'. It also provides an alternative (Rakuten) and instructs to present the affiliate_url to the user. This is clear guidance for selection and invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_products家具・家電・ガジェット商品を検索A
ユーザーが「棚が欲しい」「Dysonのドライヤー」「幅40cmに入るもの」と言ったときに呼ぶ。31カテゴリ・80+ブランドのカタログをキーワード・サイズ(mm)・価格・色・ブランドで横断検索。結果にrelated_items_hintがある場合はget_related_itemsで付属品チェーンを取得できる。buy_guideがある場合はbest_for/avoid_ifをユーザーに伝えて購入判断を助けること。seasonal_hints/active_salesがある場合はセール情報を伝えること。色はエイリアス対応(白→ホワイト/アイボリー等)。各商品のaffiliate_urlをユーザーに提示すること。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】検索目的 | |
| keyword | No | キーワード(商品名・ブランド・タグで部分一致、スペース区切りでAND検索) | |
| width_mm_min | No | 幅の最小値(mm) | |
| width_mm_max | No | 幅の最大値(mm) | |
| height_mm_min | No | 高さの最小値(mm) | |
| height_mm_max | No | 高さの最大値(mm) | |
| depth_mm_min | No | 奥行きの最小値(mm) | |
| depth_mm_max | No | 奥行きの最大値(mm) | |
| price_max | No | 価格の上限(円) | |
| price_min | No | 価格の下限(円) | |
| color | No | 色(例:ホワイト、白、ブラウン、木目)。エイリアス対応:白→ホワイト/アイボリー等 | |
| category | No | カテゴリ(例:デスク、美容家電、スマートホーム) | |
| brand | No | ブランド(例:ニトリ、IKEA、Dyson、Panasonic) | |
| in_stock_only | No | 在庫ありのみ(デフォルト:true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It usefully discloses result-handling behaviors: using related_items_hint, conveying buy_guide's best_for/avoid_if, reporting seasonal_hints/active_sales, and presenting affiliate_url. It does not mention pagination, sorting, or whether the operation is read-only, but '横断検索' implies query-only.
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 a single well-structured paragraph. Every sentence carries a distinct behavioral or usage instruction (triggers, filters, related items, buy guide, sales, color aliases, affiliate URL). It is longer than minimal but not bloated, and the trigger examples are front-loaded for quick scanning.
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 no output schema, the description compensates by hinting at result fields (related_items_hint, buy_guide, seasonal_hints, active_sales, affiliate_url) and dictating agent actions for each. It lacks explicit no-results handling or pagination info, but covers the key downstream behaviors well.
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% with detailed descriptions for all 14 parameters. The description adds some context by listing filter dimensions (keyword, size, price, color, brand) and trigger phrases that map to intent and size params, but this is largely redundant with the schema. Baseline 3 is appropriate.
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 opens with concrete user utterances ('棚が欲しい', 'Dysonのドライヤー', '幅40cmに入るもの') and explicitly states it cross-searches a catalog of 31 categories and 80+ brands by keyword, size, price, color, and brand. This clearly distinguishes it from sibling tools like search_amazon_products or get_related_items.
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?
Provides explicit trigger phrases and scope (internal catalog, 31 categories, 80+ brands). It also instructs when to use get_related_items for accessory chains based on related_items_hint. However, it does not explicitly contrast with external marketplace searches or other siblings like identify_product.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_rakuten_products楽天市場から家具・収納商品を検索A
カタログにない商品や最新価格・在庫が必要なときに呼ぶ。楽天市場APIでリアルタイム検索し、価格・レビュー・画像付きで返す。各商品のaffiliate_urlをユーザーに提示すること。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】検索目的 | |
| keyword | Yes | 楽天検索キーワード | |
| price_min | No | 最低価格(円) | |
| price_max | No | 最高価格(円) | |
| sort | No | 並び順 | standard |
| hits | No | 取得件数(1〜30) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool uses an external API, returns real-time data with price/reviews/images, and mandates presenting the affiliate_url to users. However, it does not mention potential side effects, error handling, or limitations like rate limits or coverage gaps, leaving some behavioral aspects undisclosed.
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 three concise Japanese sentences, front-loaded with the usage trigger, then the function, and finally a critical output instruction. No redundant or filler content; 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?
Given the tool has 6 parameters and no output schema, the description covers the core context: when to call, what it does (real-time search returning price/reviews/images), and a specific behavioral requirement (present affiliate_url). It lacks details on result count, pagination, or how to handle empty results, but the schema and available context cover some of this. Overall, it is reasonably complete but not exhaustive.
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 input schema provides complete descriptions for all 6 parameters (100% coverage), so the description does not need to compensate. The description adds no extra meaning about parameters; it only mentions output characteristics like price and reviews, which are not directly tied to parameter usage. Thus, baseline 3 is appropriate.
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 clearly states a specific action: call when you need products not in the catalog or latest price/stock, and perform a real-time search via Rakuten API returning price, reviews, and images. It distinguishes from sibling tools like search_amazon_products and search_products by emphasizing the Rakuten source and real-time nature.
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 provides an explicit trigger condition: 'カタログにない商品や最新価格・在庫が必要なとき' (when you need products not in catalog or latest price/stock). This clearly implies when to use, but it does not explicitly name alternative tools or state when not to use it, so it falls short of a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
suggest_by_space空きスペースに入る製品をカテゴリ横断で提案A
「洗面所の幅45cm×奥行30cmの隙間に何か置きたい」のようにスペース起点で探すときに呼ぶ。寸法(mm)を指定すると、そこに収まる製品をカテゴリ横断で返す。回転フィット対応(幅と奥行を入れ替えても判定)。棚+ボックスの両方が見つかればコーディネーションプランも自動生成。各商品のaffiliate_urlをユーザーに提示すること。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | 【必須】設置場所・用途・状況を詳細に | |
| width_mm | Yes | 空きスペースの幅(mm) | |
| depth_mm | Yes | 空きスペースの奥行き(mm) | |
| height_mm | Yes | 空きスペースの高さ(mm) | |
| price_max | No | 予算上限(円) | |
| categories | No | 探したいカテゴリ(省略時は自動推定) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses several behavioral traits: rotation-fit handling ('回転フィット対応'), automatic coordination plan generation ('コーディネーションプランも自動生成'), and affiliate URL presentation ('affiliate_urlをユーザーに提示'). However, it doesn't mention rate limits, authentication needs, or error conditions.
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 perfectly front-loaded and efficient. The first sentence establishes the use case with an example, the second explains core functionality, and subsequent sentences add important behavioral details. Every sentence earns its place with zero wasted words.
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 tool with 6 parameters, no annotations, and no output schema, the description does well to explain the tool's unique behaviors (rotation-fit, coordination plans, affiliate URLs). However, it doesn't describe the return format or what happens when no products are found, which would be helpful given the lack of output schema.
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 description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal parameter semantics beyond the schema - it mentions dimensions ('寸法(mm)を指定') and cross-category search ('カテゴリ横断で返す'), but these are already implied in the schema descriptions. Baseline 3 is appropriate when schema does the heavy lifting.
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 clearly states the tool's purpose: suggesting products that fit a given space across categories. It uses specific verbs ('探す', '返す', '生成') and resources ('製品', 'コーディネーションプラン'), and distinguishes itself from siblings by focusing on space-first search rather than product-first or layout tools.
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 states when to use this tool: 'スペース起点で探すときに呼ぶ' (call when searching based on space). It provides a concrete example ('洗面所の幅45cm×奥行30cmの隙間に何か置きたい') and implicitly distinguishes from siblings like search_products or get_popular_products by emphasizing space-first rather than product-first queries.
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.
15 tool updates
v6.1.0- First observed
calc_room_layout - First observed
compare_products - First observed
coordinate_storage - First observed
diagnose_ai_visibility - First observed
find_replacement - First observed
get_curated_sets - First observed
get_popular_products - First observed
get_product_detail - First observed
get_related_items - First observed
identify_product - First observed
list_categories - First observed
search_amazon_products - First observed
search_products - First observed
search_rakuten_products - First observed
suggest_by_space
TDQS
Scored across 15 tools
The tools have distinct primary purposes, but there is notable overlap in search and recommendation functions. For example, search_products, search_rakuten_products, and search_amazon_products all handle product searches across different platforms, while get_popular_products and get_curated_sets both provide recommendations, which could cause confusion in tool selection. Descriptions help clarify, but the boundaries are not always sharp.
Most tools follow a consistent verb_noun naming pattern (e.g., calc_room_layout, compare_products, get_product_detail), which aids predictability. However, there are minor deviations like diagnose_ai_visibility and identify_product, which use different verb styles or compound terms, slightly breaking the pattern but remaining readable overall.
With 15 tools, the server is well-scoped for its furniture and home goods domain, covering aspects like layout calculation, product search, comparison, recommendations, and diagnostics. Each tool appears to serve a specific function without redundancy, making the count appropriate for the intended purpose.
The toolset provides comprehensive coverage for furniture and home goods, including search, comparison, recommendations, layout planning, and product identification. Minor gaps exist, such as no explicit tools for user account management or order tracking, but these are not core to the domain, and agents can work around them with the available tools.
Maintenance
Related MCP Connectors
Hosted MCP for e-commerce: live product catalog, stock, and pricing for AI agents.
AI-agent product catalog: search, lookup & purchase routing over verified merchant data.
An MCP server that audits the fairness of construction and renovation estimates in Japan. Provides fair-price ranges, overcharge detection, and verifiable unit-cost data based on JCCDB (65,520 items across 402 categories, CC BY 4.0, DOI-backed).
Pocket Agent (aipocketagent.com) MCP server — read tools for personas, apps, and product info.
Related MCP Servers
- FlicenseNot gradedqualityBmaintenanceMCP server to search Rakuten Ichiba (Japan's largest e-commerce platform) for products, returning names, prices, URLs, shop info, reviews, and images via the official Rakuten API.-
- FlicenseNot gradedqualityCmaintenanceFederated commerce search MCP server enabling AI agents to query real product offers, prices, and availability across independent WooCommerce stores without API keys or registration.-
- AlicenseNot gradedqualityBmaintenanceMCP server that enables AI shopping assistants to understand customer needs, search products using visual and semantic queries, apply metadata filters, and recommend relevant products from an inventory.Apache 2.0
- FlicenseAqualityCmaintenanceA local AI shopping MCP server for Amazon.co.jp that searches products, adds them to cart, and opens the review page without automating purchase confirmation. It keeps your Amazon login confined to your machine's Chrome profile.5-