OpenDealer MCP Server

Automotive inventory search for AI assistants: vehicles, dealers, deals, and market data.

使うべきか

品質と安全性

A
説明の品質
98%
スキーマの完全性
90%
命名の品質
94%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(2)

  • LOWTool 'get_market_trends' description lacks action verbget_market_trends 内
  • LOWTool 'compare_market' description lacks action verbcompare_market 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~10,620トークン数(ツール定義)
~3.0 KB一般的なレスポンスサイズ
注意への影響は大きい(128k コンテキストの 8.30%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "mcp": {
      "url": "https://mcp.opendealer.app/rpc"
    }
  }
}

リモートエンドポイント

https://mcp.opendealer.app/rpcstreamable-http

できること

ツール一覧

ツール(27)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢search_vehicles(q, zip, lat, lng, city, ...)

Search for vehicles across dealerships (Meilisearch-backed NL + structured filters). Preferred tool order for assistants: 1. list_facets or list_research_makes/list_research_models to discover valid values 2. filter_vehicles (map shopper intent onto labeled hard filters) 3. get_vehicle / get_deal_score / research_model for depth When the ask implies analysis (good deal?, safety, budget, timing, dealer plan), continue with a shopping playbook from initialize instructions or resource opendealer://assistant/shopping-playbooks — do not stop at raw search results. Location modes (choose ONE): zip+radius, lat+lng+radius, city+state+radius, county+state+radius — or embed location in q. Forgiving matching: model variants, color families, typo tolerance. Hard caps (price_max, year, radius) are never relaxed. Prefer filter_vehicles; do not dump shopper prose into q. CRITICAL: CITE: Each vehicle's cite object is `vin` + `url` (canonical opendealer.shop VDP). Cite only `url` to shoppers. Never invent VDP URLs. Never cite `detailsUrl` (dealer/LotLinx). Never send shoppers to `/llm/*` HTML or `/v1/llm/*` as the human listing URL.

入力スキーマ

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "minLength": 1,
      "description": "Free-text natural-language query. You can pass a whole sentence (e.g. \"new black Honda Civic sedan under $45k within 150 miles of 92672\"): price/mileage/year/condition and zip+radius are parsed out as hard constraints, while make/model/color/body words are matched forgivingly. Explicit structured params override anything parsed from the sentence."
    },
    "zip": {
      "type": "string",
      "pattern": "^[0-9]{5}$",
      "description": "5-digit US ZIP code (e.g., 92688)"
    },
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude coordinate"
    },
    "lng": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude coordinate"
    },
    "city": {
      "type": "string",
      "minLength": 1,
      "description": "City name"
    },
    "state": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "2-letter US state code (e.g., CA, TX)"
    },
    "county": {
      "type": "string",
      "minLength": 1,
      "description": "County name"
    },
    "radius": {
      "type": "integer",
      "minimum": 1,
      "maximum": 250,
      "default": 50,
      "description": "Search radius in miles (1-250, default: 50)"
    },
    "make": {
      "type": "string",
      "minLength": 1,
      "description": "Vehicle make (e.g., Honda, Toyota, Tesla)"
    },
    "model": {
      "type": "string",
      "minLength": 1,
      "description": "Vehicle model (e.g., Civic, Camry, Model 3). Broad terms match all variants (Civic -> Civic Sedan/Si/Hatchback) unless narrowed by trim."
    },
    "trim": {
      "type": "string",
      "minLength": 1,
      "description": "Trim level (e.g., EX, Limited, Performance)"
    },
    "color": {
      "type": "string",
      "minLength": 1,
      "description": "Exterior color (e.g., black, white). Resolved to color families, so \"black\" matches \"Crystal Black Pearl\"."
    },
    "year_min": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030,
      "description": "Minimum model year"
    },
    "year_max": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030,
      "description": "Maximum model year"
    },
    "price_min": {
      "type": "integer",
      "minimum": 0,
      "description": "Minimum price in USD"
    },
    "price_max": {
      "type": "integer",
      "minimum": 0,
      "description": "Maximum price in USD"
    },
    "mileage_max": {
      "type": "integer",
      "minimum": 0,
      "description": "Maximum mileage"
    },
    "body_type": {
      "type": "string",
      "enum": [
        "Sedan",
        "SUV",
        "Truck",
        "Coupe",
        "Van",
        "Wagon",
        "Convertible",
        "Hatchback"
      ],
      "description": "Vehicle body style"
    },
    "fuel_type": {
      "type": "string",
      "enum": [
        "Gasoline",
        "Diesel",
        "Electric",
        "Hybrid",
        "Plug-in Hybrid"
      ],
      "description": "Fuel type"
    },
    "transmission": {
      "type": "string",
      "enum": [
        "Automatic",
        "Manual",
        "CVT"
      ],
      "description": "Transmission type"
    },
    "drivetrain": {
      "type": "string",
      "enum": [
        "FWD",
        "RWD",
        "AWD",
        "4WD"
      ],
      "description": "Drivetrain configuration"
    },
    "condition": {
      "type": "string",
      "enum": [
        "New",
        "Used",
        "Certified"
      ],
      "description": "Vehicle condition"
    },
    "certified": {
      "type": "boolean",
      "description": "Filter for Certified Pre-Owned vehicles only"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of results to return (1-100, default: 25)"
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of results to skip for pagination"
    },
    "sort": {
      "type": "string",
      "enum": [
        "relevance",
        "price_asc",
        "price_desc",
        "year_desc",
        "mileage_asc",
        "distance_asc"
      ],
      "description": "Sort order for results",
      "default": "relevance"
    },
    "view": {
      "type": "string",
      "enum": [
        "llm",
        "standard",
        "minimal"
      ],
      "description": "Response format: llm (optimized for AI), standard (full details), minimal (compact)",
      "default": "llm"
    },
    "mode": {
      "type": "string",
      "enum": [
        "keyword",
        "hybrid"
      ],
      "description": "Search mode. Use hybrid for conceptual queries with little keyword overlap (e.g. \"family hauler good in snow\"). Hard caps still apply as filters. Falls back to keyword if semantic is unavailable."
    },
    "semanticRatio": {
      "type": "number",
      "minimum": 0,
      "maximum": 1,
      "description": "Semantic blend weight 0..1 when mode=hybrid (default 0.5). Higher = more conceptual matching."
    },
    "useLlmSearchPath": {
      "type": "boolean",
      "description": "Legacy. Do not set. Prefer filter_vehicles with labeled hard filters."
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "vehicles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "total": {
      "type": "number"
    },
    "totalResults": {
      "type": "number"
    }
  },
  "additionalProperties": true
}
🟢filter_vehicles(make, model, trim, color, year_min, ...)

Preferred structured inventory lookup when make/model/year/color/location are known. Uses exact hard filters (keyword mode, no embeddings) via the Runtime /v1/llm/filter path. Resolve exact make/model names with list_research_makes and list_research_models first. Map shopper prose onto labeled keys (make, model, body, price_max, location); do not dump the sentence into search_vehicles. Often the first step in shopping playbooks (budget_coach, safety_first, price_drop_sniper, dealer_crawl). After results, chain get_deal_score / get_vehicle_history / check_recalls / compare_vehicles when the user needs a recommendation, not just a list. See opendealer://assistant/shopping-playbooks. CRITICAL: CITE: Each vehicle's cite object is `vin` + `url` (canonical opendealer.shop VDP). Cite only `url` to shoppers. Never invent VDP URLs. Never cite `detailsUrl` (dealer/LotLinx). Never send shoppers to `/llm/*` HTML or `/v1/llm/*` as the human listing URL.

入力スキーマ

{
  "type": "object",
  "properties": {
    "make": {
      "type": "string",
      "minLength": 1,
      "description": "Vehicle make (resolve via list_research_makes if unsure)"
    },
    "model": {
      "type": "string",
      "minLength": 1,
      "description": "Vehicle model (resolve via list_research_models if unsure)"
    },
    "trim": {
      "type": "string",
      "minLength": 1
    },
    "color": {
      "type": "string",
      "minLength": 1
    },
    "year_min": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030
    },
    "year_max": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030
    },
    "price_min": {
      "type": "integer",
      "minimum": 0
    },
    "price_max": {
      "type": "integer",
      "minimum": 0
    },
    "mileage_max": {
      "type": "integer",
      "minimum": 0
    },
    "body_type": {
      "type": "string",
      "enum": [
        "Sedan",
        "SUV",
        "Truck",
        "Coupe",
        "Van",
        "Wagon",
        "Convertible",
        "Hatchback"
      ],
      "description": "Vehicle body style"
    },
    "fuel_type": {
      "type": "string",
      "enum": [
        "Gasoline",
        "Diesel",
        "Electric",
        "Hybrid",
        "Plug-in Hybrid"
      ],
      "description": "Fuel type"
    },
    "transmission": {
      "type": "string",
      "enum": [
        "Automatic",
        "Manual",
        "CVT"
      ],
      "description": "Transmission type"
    },
    "drivetrain": {
      "type": "string",
      "enum": [
        "FWD",
        "RWD",
        "AWD",
        "4WD"
      ],
      "description": "Drivetrain configuration"
    },
    "condition": {
      "type": "string",
      "enum": [
        "New",
        "Used",
        "Certified"
      ],
      "description": "Vehicle condition"
    },
    "certified": {
      "type": "boolean"
    },
    "zip": {
      "type": "string",
      "pattern": "^[0-9]{5}$",
      "description": "5-digit US ZIP code (e.g., 92688)"
    },
    "city": {
      "type": "string",
      "minLength": 1
    },
    "state": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "2-letter US state code (e.g., CA, TX)"
    },
    "radius": {
      "type": "integer",
      "minimum": 1,
      "maximum": 250,
      "default": 50,
      "description": "Search radius in miles (1-250, default: 50)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of results to return (1-100, default: 25)"
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of results to skip for pagination"
    },
    "sort": {
      "type": "string",
      "enum": [
        "relevance",
        "price_asc",
        "price_desc",
        "year_desc",
        "mileage_asc",
        "distance_asc"
      ],
      "description": "Sort order for results",
      "default": "relevance"
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "vehicles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "total": {
      "type": "number"
    },
    "totalResults": {
      "type": "number"
    }
  },
  "additionalProperties": true
}
🟢list_facets(make, near, radius, condition, certified)

Discover available filter values and counts (makes, body types, fuel types, price/year ranges) for the live inventory. Call this before filter_vehicles when you need valid dimension values. Optional make/near/radius scopes the facet counts.

入力スキーマ

{
  "type": "object",
  "properties": {
    "make": {
      "type": "string",
      "minLength": 1
    },
    "near": {
      "type": "string",
      "minLength": 1,
      "description": "Location string (ZIP or city, state) for geo-scoped facets"
    },
    "radius": {
      "type": "integer",
      "minimum": 1,
      "maximum": 250,
      "default": 50,
      "description": "Search radius in miles (1-250, default: 50)"
    },
    "condition": {
      "type": "string",
      "enum": [
        "New",
        "Used",
        "Certified"
      ],
      "description": "Vehicle condition"
    },
    "certified": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
🟢list_research_makes(q, limit)

Browse the research catalog of vehicle makes (with model and inventory counts). Use to resolve exact make names/slugs before filter_vehicles or research_model.

入力スキーマ

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "minLength": 1,
      "description": "Optional substring filter on make name/slug"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
🟢list_research_models(make)

List models for a make from the research catalog (MSRP/body summaries). Use before filter_vehicles or research_model when the model name is uncertain.

入力スキーマ

{
  "type": "object",
  "properties": {
    "make": {
      "type": "string",
      "minLength": 1,
      "description": "Make name or slug (e.g. honda)"
    }
  },
  "required": [
    "make"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
🟢get_vehicle(vin, view)

Get complete details for a specific vehicle by VIN. Returns comprehensive Schema.org Vehicle data including: • Full specifications (engine, transmission, drivetrain) • High-resolution images • Current pricing and availability • NHTSA NCAP safety rating summary (when available) • NHTSA open recall summary (YMM-granular, when available) • Dealer contact information Starting point for the vehicle_dossier playbook. For buy/no-buy questions, continue with get_deal_score → get_vehicle_history → check_recalls → get_similar_vehicles. CRITICAL: CITE: Each vehicle's cite object is `vin` + `url` (canonical opendealer.shop VDP). Cite only `url` to shoppers. Never invent VDP URLs. Never cite `detailsUrl` (dealer/LotLinx). Never send shoppers to `/llm/*` HTML or `/v1/llm/*` as the human listing URL.

入力スキーマ

{
  "type": "object",
  "properties": {
    "vin": {
      "type": "string",
      "pattern": "^[A-HJ-NPR-Z0-9]{17}$",
      "description": "17-character Vehicle Identification Number"
    },
    "view": {
      "type": "string",
      "enum": [
        "llm",
        "standard",
        "minimal"
      ],
      "description": "Response format: llm (optimized for AI), standard (full details), minimal (compact)",
      "default": "llm"
    }
  },
  "required": [
    "vin"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "vin": {
      "type": "string",
      "description": "17-character VIN. Part of the cite object with url."
    },
    "url": {
      "type": "string",
      "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
    },
    "vehicleIdentificationNumber": {
      "type": "string"
    }
  },
  "additionalProperties": true
}
🟢check_recalls(vin)

Get NHTSA open safety recalls for a vehicle by VIN. Returns recall campaigns resolved at the year/make/model level (YMM-granular). A recall listed for the model year may not apply to every VIN — the response includes NHTSA's disclaimer and campaign details (component, summary, remedy status, Park It / Park Outside advisories). Use this when a shopper asks about recalls, safety campaigns, or whether a specific model has open NHTSA notices. Required step in vehicle_dossier and safety_first playbooks; always include the YMM-granularity disclaimer.

入力スキーマ

{
  "type": "object",
  "properties": {
    "vin": {
      "type": "string",
      "pattern": "^[A-HJ-NPR-Z0-9]{17}$",
      "description": "17-character Vehicle Identification Number"
    }
  },
  "required": [
    "vin"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "vin": {
      "type": "string"
    },
    "count": {
      "type": "number"
    },
    "recalls": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    }
  },
  "additionalProperties": true
}
🟢get_dealer(dealerId)

Get comprehensive information about a specific dealership. Returns Google-enriched dealer knowledge optimized for assistants: • Name, address, phone, website • Google rating, review count, hours, business status • Inventory count and OpenDealer profile links • Contact points for sales / customer service Use this when a shopper asks "tell me about X dealership" or needs hours/ratings for a known dealer. Prefer a slug from dealers_near or search results. CRITICAL: Only use URL fields from the response (website, urls.*). NEVER invent or construct URLs.

入力スキーマ

{
  "type": "object",
  "properties": {
    "dealerId": {
      "type": "string",
      "minLength": 3,
      "description": "Dealer identifier: UUID or slug (e.g., \"rsm-honda\"). Prefer the slug from dealers_near or search results."
    }
  },
  "required": [
    "dealerId"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "slug": {
      "type": "string"
    },
    "telephone": {
      "type": "string"
    },
    "urls": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "inventory": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "aggregateRating": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "openingHours": {}
  },
  "additionalProperties": true
}
🟢get_safety_rating(year, make, model)

Get NHTSA 5-Star Safety Ratings for a year/make/model (no VIN required). Answers questions like "is a 2023 RAV4 safe for my family" with: • Overall and crash-test star ratings (when published) • Rollover rating / possibility • NHTSA-evaluated ADAS availability (ESC, FCW, LDW) Ratings are model-year granular from the NHTSA NCAP cache. If no confident rating exists, the tool reports that honestly rather than guessing. For VIN-specific listing details use get_vehicle; for open recalls use check_recalls. CRITICAL: Only use the 'sourceUrl' field from the response for NHTSA links. NEVER invent URLs.

入力スキーマ

{
  "type": "object",
  "properties": {
    "year": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030,
      "description": "Model year (e.g., 2023)"
    },
    "make": {
      "type": "string",
      "minLength": 1,
      "description": "Vehicle make (e.g., \"Toyota\", \"Honda\")"
    },
    "model": {
      "type": "string",
      "minLength": 1,
      "description": "Vehicle model (e.g., \"RAV4\", \"Civic\")"
    }
  },
  "required": [
    "year",
    "make",
    "model"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "year": {
      "type": "number"
    },
    "make": {
      "type": "string"
    },
    "model": {
      "type": "string"
    },
    "available": {
      "type": "boolean"
    },
    "safety": {
      "anyOf": [
        {
          "type": "object",
          "properties": {},
          "additionalProperties": true
        },
        {
          "type": "null"
        }
      ]
    },
    "sourceUrl": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  },
  "required": [
    "available",
    "safety"
  ],
  "additionalProperties": true
}
🟢get_vehicle_history(vin)

Get OpenDealer listing history for a VIN: price changes, days on lot, and status. Answers "has this VIN dropped in price" and days-on-lot narratives from retained snapshots (including vehicles that left a dealer feed). Returns: • Chronological price history with per-snapshot changes • Days on market / lot signals and badges (price_drop, long_on_lot) • Active vs no-longer-listed status when known Does not invent a deal score for sold vehicles — use get_deal_score for live market scoring. Essential for price_drop_sniper and vehicle_dossier playbooks when shoppers ask about reductions or negotiation leverage. CRITICAL: Only use URL fields from the response when present. NEVER invent URLs.

入力スキーマ

{
  "type": "object",
  "properties": {
    "vin": {
      "type": "string",
      "pattern": "^[A-HJ-NPR-Z0-9]{17}$",
      "description": "17-character Vehicle Identification Number"
    }
  },
  "required": [
    "vin"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "vin": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "sold"
      ]
    },
    "priceHistory": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    },
    "summary": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "badges": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "vin"
  ],
  "additionalProperties": true
}
🟢dealers_near(zip, lat, lng, city, state, ...)

Find dealerships near a location. Location modes (choose ONE): • zip + radius (miles) • lat + lng + radius • city + state + radius • county + state + radius Returns dealer information including: • Name, address, phone, website • Distance from search location • Current inventory count • Business hours (when available)

入力スキーマ

{
  "type": "object",
  "properties": {
    "zip": {
      "type": "string",
      "pattern": "^[0-9]{5}$",
      "description": "5-digit US ZIP code (e.g., 92688)"
    },
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude coordinate"
    },
    "lng": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude coordinate"
    },
    "city": {
      "type": "string",
      "minLength": 1,
      "description": "City name"
    },
    "state": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "2-letter US state code (e.g., CA, TX)"
    },
    "county": {
      "type": "string",
      "minLength": 1,
      "description": "County name"
    },
    "radius": {
      "type": "integer",
      "minimum": 1,
      "maximum": 250,
      "default": 50,
      "description": "Search radius in miles (1-250, default: 50)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200,
      "default": 50,
      "description": "Maximum number of dealers to return (1-200, default: 50)"
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of results to skip for pagination"
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    },
    "dealers": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    },
    "total": {
      "type": "number"
    }
  },
  "additionalProperties": true
}
🟢dealer_inventory(dealerId, make, model, trim, year_min, ...)

Browse the complete inventory of a specific dealership. IMPORTANT: Use the exact dealer slug from a previous dealers_near or search_vehicles response. Do NOT guess dealer IDs. Useful when a user wants to see what a particular dealer has in stock. Supports all vehicle filters (make, model, price, etc.). CRITICAL: CITE: Each vehicle's cite object is `vin` + `url` (canonical opendealer.shop VDP). Cite only `url` to shoppers. Never invent VDP URLs. Never cite `detailsUrl` (dealer/LotLinx). Never send shoppers to `/llm/*` HTML or `/v1/llm/*` as the human listing URL.

入力スキーマ

{
  "type": "object",
  "properties": {
    "dealerId": {
      "type": "string",
      "minLength": 3,
      "description": "Dealer identifier (UUID or slug like \"rsm-honda\")"
    },
    "make": {
      "type": "string",
      "minLength": 1,
      "description": "Vehicle make"
    },
    "model": {
      "type": "string",
      "minLength": 1,
      "description": "Vehicle model"
    },
    "trim": {
      "type": "string",
      "minLength": 1,
      "description": "Trim level"
    },
    "year_min": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030,
      "description": "Minimum model year"
    },
    "year_max": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030,
      "description": "Maximum model year"
    },
    "price_min": {
      "type": "integer",
      "minimum": 0,
      "description": "Minimum price in USD"
    },
    "price_max": {
      "type": "integer",
      "minimum": 0,
      "description": "Maximum price in USD"
    },
    "mileage_max": {
      "type": "integer",
      "minimum": 0,
      "description": "Maximum mileage"
    },
    "body_type": {
      "type": "string",
      "enum": [
        "Sedan",
        "SUV",
        "Truck",
        "Coupe",
        "Van",
        "Wagon",
        "Convertible",
        "Hatchback"
      ],
      "description": "Vehicle body style"
    },
    "fuel_type": {
      "type": "string",
      "enum": [
        "Gasoline",
        "Diesel",
        "Electric",
        "Hybrid",
        "Plug-in Hybrid"
      ],
      "description": "Fuel type"
    },
    "transmission": {
      "type": "string",
      "enum": [
        "Automatic",
        "Manual",
        "CVT"
      ],
      "description": "Transmission type"
    },
    "drivetrain": {
      "type": "string",
      "enum": [
        "FWD",
        "RWD",
        "AWD",
        "4WD"
      ],
      "description": "Drivetrain configuration"
    },
    "condition": {
      "type": "string",
      "enum": [
        "New",
        "Used",
        "Certified"
      ],
      "description": "Vehicle condition"
    },
    "certified": {
      "type": "boolean",
      "description": "Filter for CPO vehicles"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of results to return (1-100, default: 25)"
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of results to skip for pagination"
    },
    "sort": {
      "type": "string",
      "enum": [
        "relevance",
        "price_asc",
        "price_desc",
        "year_desc",
        "mileage_asc"
      ],
      "description": "Sort order",
      "default": "relevance"
    },
    "view": {
      "type": "string",
      "enum": [
        "llm",
        "standard",
        "minimal"
      ],
      "description": "Response detail: standard (features/gallery, default), llm (compact), minimal",
      "default": "standard"
    }
  },
  "required": [
    "dealerId"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "vehicles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "total": {
      "type": "number"
    },
    "totalResults": {
      "type": "number"
    }
  },
  "additionalProperties": true
}
🟢compare_vehicles(vins)

Compare 2-5 vehicles side by side. Returns a structured comparison including specs, price context, and per-vehicle cite fields (vin + shop url). CRITICAL: CITE: Each vehicle's cite object is `vin` + `url` (canonical opendealer.shop VDP). Cite only `url` to shoppers. Never invent VDP URLs. Never cite `detailsUrl` (dealer/LotLinx). Never send shoppers to `/llm/*` HTML or `/v1/llm/*` as the human listing URL.

入力スキーマ

{
  "type": "object",
  "properties": {
    "vins": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-HJ-NPR-Z0-9]{17}$",
        "description": "17-character Vehicle Identification Number"
      },
      "minItems": 2,
      "maxItems": 5,
      "description": "List of VINs to compare (2-5 vehicles)"
    }
  },
  "required": [
    "vins"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "vehicles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "comparison": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    }
  },
  "additionalProperties": true
}
🟢get_deal_score(vin)

Get AI-powered deal scoring and market insights for a vehicle. Returns comprehensive analysis including: • Deal score (1-100) with rating (Great, Good, Fair, Poor) • Price comparison vs market average • Days on lot analysis • Price history and trends • Similar vehicles in the market Core step in vehicle_dossier, budget_coach, price_drop_sniper, and dealer_crawl playbooks. Pair with get_vehicle_history and check_recalls for buy/no-buy answers.

入力スキーマ

{
  "type": "object",
  "properties": {
    "vin": {
      "type": "string",
      "pattern": "^[A-HJ-NPR-Z0-9]{17}$",
      "description": "17-character Vehicle Identification Number"
    }
  },
  "required": [
    "vin"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "vin": {
      "type": "string"
    },
    "dealScore": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "priceHistory": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    }
  },
  "additionalProperties": true
}
🟢get_market_overview(make, type)

Get high-level automotive market statistics. Returns aggregated market data including: • Total vehicles and dealers in inventory • Average pricing by segment • Top makes by volume • Market velocity indicators • New vs Used breakdown

入力スキーマ

{
  "type": "object",
  "properties": {
    "make": {
      "type": "string",
      "minLength": 1,
      "description": "Filter by vehicle make"
    },
    "type": {
      "type": "string",
      "enum": [
        "New",
        "Used"
      ],
      "description": "Filter by vehicle type"
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
🟢get_market_segment(modelcode, year, type, certified)

Get detailed pricing and market data for a specific vehicle segment. Useful for understanding fair market value for a make/model/year combination. Returns pricing statistics including: • Average, median, min, max prices • Price percentiles (10th, 25th, 75th, 90th) • Average mileage and days on lot • Certified vs non-certified pricing difference

入力スキーマ

{
  "type": "object",
  "properties": {
    "modelcode": {
      "type": "string",
      "minLength": 1,
      "description": "Model code identifier (unique per make/model/year combination)"
    },
    "year": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030,
      "description": "Model year"
    },
    "type": {
      "type": "string",
      "enum": [
        "New",
        "Used"
      ],
      "description": "Vehicle type"
    },
    "certified": {
      "type": "boolean",
      "description": "Filter for certified vehicles"
    }
  },
  "required": [
    "modelcode"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
🟢list_market_segments(make, modelcode, page, limit, minSampleSize)

Browse market segments with pricing statistics (modelcode, median price, sample size). Use to discover modelcodes for get_market_segment / get_market_trends.

入力スキーマ

{
  "type": "object",
  "properties": {
    "make": {
      "type": "string",
      "minLength": 1
    },
    "modelcode": {
      "type": "string",
      "minLength": 1
    },
    "page": {
      "type": "integer",
      "minimum": 1
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "minSampleSize": {
      "type": "integer",
      "minimum": 1
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
🟢get_market_trends(modelcode, year, type, certified, days)

Price trends over time for a market segment (modelcode). Returns timeline of median/avg prices and days-on-lot.

入力スキーマ

{
  "type": "object",
  "properties": {
    "modelcode": {
      "type": "string",
      "minLength": 1,
      "description": "Market segment modelcode"
    },
    "year": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030
    },
    "type": {
      "type": "string",
      "enum": [
        "New",
        "Used"
      ],
      "description": "Vehicle type (New or Used)"
    },
    "certified": {
      "type": "boolean"
    },
    "days": {
      "type": "integer",
      "minimum": 7,
      "maximum": 90,
      "default": 30
    }
  },
  "required": [
    "modelcode"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
🟢get_market_velocity(make, type, limit)

How quickly vehicles sell by segment (fastest/slowest days on lot). Optional make/type filters.

入力スキーマ

{
  "type": "object",
  "properties": {
    "make": {
      "type": "string",
      "minLength": 1
    },
    "type": {
      "type": "string",
      "enum": [
        "New",
        "Used"
      ],
      "description": "Vehicle type (New or Used)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
🟢compare_market(modelcodes, make, model, year, type)

Compare pricing across market segments. Provide modelcodes[] or make (optionally with model).

入力スキーマ

{
  "type": "object",
  "properties": {
    "modelcodes": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1
      },
      "minItems": 1,
      "maxItems": 10
    },
    "make": {
      "type": "string",
      "minLength": 1
    },
    "model": {
      "type": "string",
      "minLength": 1
    },
    "year": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030
    },
    "type": {
      "type": "string",
      "enum": [
        "New",
        "Used"
      ],
      "description": "Vehicle type (New or Used)"
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
🟢get_suggested_rates(condition, term_months, credit_tier)

National average suggested auto loan APRs (not a credit offer). Optional filters: condition (new/used), term_months (36–84), credit_tier.

入力スキーマ

{
  "type": "object",
  "properties": {
    "condition": {
      "type": "string",
      "enum": [
        "new",
        "used"
      ]
    },
    "term_months": {
      "type": "number",
      "enum": [
        36,
        48,
        60,
        72,
        84
      ]
    },
    "credit_tier": {
      "type": "string",
      "enum": [
        "excellent",
        "good",
        "average",
        "fair"
      ]
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
🟢research_model(make, model, year)

Get the full research payload for a vehicle model (not a specific listing). Returns manufacturer reference data joined with live market data: • All trims with MSRPs, engine/body specs, and EPA fuel economy • NHTSA 5-Star safety ratings and open recall count • Live inventory count and price range on OpenDealer Use this when a shopper asks "tell me about the Honda Civic", "what trims does the RAV4 come in", or "how much is a 2025 F-150". For a specific listed vehicle, use get_vehicle with a VIN instead. CRITICAL: Only use the 'url' field from the response for links. NEVER invent or construct URLs.

入力スキーマ

{
  "type": "object",
  "properties": {
    "make": {
      "type": "string",
      "minLength": 1,
      "description": "Vehicle make slug or name (e.g., \"honda\", \"mercedes-benz\")"
    },
    "model": {
      "type": "string",
      "minLength": 1,
      "description": "Vehicle model slug or name (e.g., \"civic\", \"e-class\")"
    },
    "year": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030,
      "description": "Model year (defaults to the latest year with reference data)"
    }
  },
  "required": [
    "make",
    "model"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "make": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "model": {
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "year": {
      "type": "number"
    },
    "safety": {
      "anyOf": [
        {
          "type": "object",
          "properties": {},
          "additionalProperties": true
        },
        {
          "type": "null"
        }
      ]
    },
    "url": {
      "type": "string"
    }
  },
  "additionalProperties": true
}
🟢compare_models(models, year)

Compare 2-4 vehicle models side by side (model-level, not specific listings). Provide composite make-model slugs like "honda-civic" or "toyota-corolla". Returns: • Winner-by-dimension deltas: price, fuel economy, horsepower, seating, towing, NHTSA safety, live median listing price • Full research payload for each model (trims, MSRPs, specs) Use this for "Civic vs Corolla" style questions. To compare specific listed vehicles by VIN, use compare_vehicles instead. CRITICAL: Only use the 'url' field from the response for links. NEVER invent or construct URLs.

入力スキーマ

{
  "type": "object",
  "properties": {
    "models": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 3
      },
      "minItems": 2,
      "maxItems": 4,
      "description": "Composite make-model slugs to compare (e.g., [\"honda-civic\", \"toyota-corolla\"])"
    },
    "year": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030,
      "description": "Model year (defaults to the latest year with reference data)"
    }
  },
  "required": [
    "models"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "models": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    },
    "dimensions": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    }
  },
  "additionalProperties": true
}
🟢get_vehicle_rankings(category)

Get data-driven vehicle rankings (e.g., best SUVs, most fuel-efficient cars). Call without arguments to list all ranking categories. Pass a category slug (e.g., "best-suvs") for the full scored ranking. Rankings are computed from public data with a published methodology: NHTSA safety ratings, EPA fuel economy, manufacturer pricing, and live market availability. There is no paid placement; each entry includes its transparent score breakdown. CRITICAL: Only use the 'url' field from the response for links. NEVER invent or construct URLs.

入力スキーマ

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "minLength": 1,
      "description": "Ranking category slug (e.g., \"best-suvs\"). Omit to list all available categories."
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "categories": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    },
    "category": {
      "type": "string"
    },
    "rankings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {},
        "additionalProperties": true
      }
    },
    "url": {
      "type": "string"
    }
  },
  "additionalProperties": true
}
🟢get_similar_vehicles(vin, limit)

Find similar on-lot vehicles for a VIN ("you may also like"). Same make/model keyword comps as the shop VDP rail (not semantic embeddings). CRITICAL: CITE: Each vehicle's cite object is `vin` + `url` (canonical opendealer.shop VDP). Cite only `url` to shoppers. Never invent VDP URLs. Never cite `detailsUrl` (dealer/LotLinx). Never send shoppers to `/llm/*` HTML or `/v1/llm/*` as the human listing URL.

入力スキーマ

{
  "type": "object",
  "properties": {
    "vin": {
      "type": "string",
      "pattern": "^[A-HJ-NPR-Z0-9]{17}$",
      "description": "17-character Vehicle Identification Number"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 24,
      "default": 6
    }
  },
  "required": [
    "vin"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": true
}
🟢ui_select_vehicle(vin, name, url, year, make, ...)

App-only: record a vehicle selection from the results widget. Not for model use — hosts filter via _meta.ui.visibility.

入力スキーマ

{
  "type": "object",
  "properties": {
    "vin": {
      "type": "string",
      "pattern": "^[A-HJ-NPR-Z0-9]{17}$",
      "description": "17-character Vehicle Identification Number"
    },
    "name": {
      "type": "string",
      "minLength": 1
    },
    "url": {
      "type": "string",
      "minLength": 1
    },
    "year": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030
    },
    "make": {
      "type": "string",
      "minLength": 1
    },
    "model": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "vin"
  ],
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "selected": {
      "type": "object",
      "properties": {
        "vin": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "year": {
          "type": "number"
        },
        "make": {
          "type": "string"
        },
        "model": {
          "type": "string"
        }
      },
      "required": [
        "vin"
      ],
      "additionalProperties": false
    },
    "action": {
      "type": "string",
      "const": "ui_select_vehicle"
    },
    "message": {
      "type": "string"
    }
  },
  "required": [
    "selected",
    "action",
    "message"
  ],
  "additionalProperties": false
}
🟢ui_page_vehicle_results(source, q, make, model, trim, ...)

App-only: paginate or refresh vehicle results using the same Runtime paths as filter_vehicles / search_vehicles (geo-correct). No widget remount — omit resourceUri. Not for model use.

入力スキーマ

{
  "type": "object",
  "properties": {
    "source": {
      "type": "string",
      "enum": [
        "filter_vehicles",
        "search_vehicles"
      ],
      "default": "filter_vehicles",
      "description": "Which model-facing tool path to reuse for this page request"
    },
    "q": {
      "type": "string",
      "minLength": 1
    },
    "make": {
      "type": "string",
      "minLength": 1
    },
    "model": {
      "type": "string",
      "minLength": 1
    },
    "trim": {
      "type": "string",
      "minLength": 1
    },
    "color": {
      "type": "string",
      "minLength": 1
    },
    "year_min": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030
    },
    "year_max": {
      "type": "integer",
      "minimum": 1990,
      "maximum": 2030
    },
    "price_min": {
      "type": "integer",
      "minimum": 0
    },
    "price_max": {
      "type": "integer",
      "minimum": 0
    },
    "mileage_max": {
      "type": "integer",
      "minimum": 0
    },
    "body_type": {
      "type": "string",
      "enum": [
        "Sedan",
        "SUV",
        "Truck",
        "Coupe",
        "Van",
        "Wagon",
        "Convertible",
        "Hatchback"
      ],
      "description": "Vehicle body style"
    },
    "fuel_type": {
      "type": "string",
      "enum": [
        "Gasoline",
        "Diesel",
        "Electric",
        "Hybrid",
        "Plug-in Hybrid"
      ],
      "description": "Fuel type"
    },
    "transmission": {
      "type": "string",
      "enum": [
        "Automatic",
        "Manual",
        "CVT"
      ],
      "description": "Transmission type"
    },
    "drivetrain": {
      "type": "string",
      "enum": [
        "FWD",
        "RWD",
        "AWD",
        "4WD"
      ],
      "description": "Drivetrain configuration"
    },
    "condition": {
      "type": "string",
      "enum": [
        "New",
        "Used",
        "Certified"
      ],
      "description": "Vehicle condition"
    },
    "certified": {
      "type": "boolean"
    },
    "zip": {
      "type": "string",
      "pattern": "^[0-9]{5}$",
      "description": "5-digit US ZIP code (e.g., 92688)"
    },
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude coordinate"
    },
    "lng": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude coordinate"
    },
    "city": {
      "type": "string",
      "minLength": 1
    },
    "state": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "2-letter US state code (e.g., CA, TX)"
    },
    "county": {
      "type": "string",
      "minLength": 1
    },
    "radius": {
      "type": "integer",
      "minimum": 1,
      "maximum": 250,
      "default": 50,
      "description": "Search radius in miles (1-250, default: 50)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of results to return (1-100, default: 25)"
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of results to skip for pagination"
    },
    "sort": {
      "type": "string",
      "enum": [
        "relevance",
        "price_asc",
        "price_desc",
        "year_desc",
        "mileage_asc",
        "distance_asc"
      ],
      "description": "Sort order for results",
      "default": "relevance"
    },
    "view": {
      "type": "string",
      "enum": [
        "llm",
        "standard",
        "minimal"
      ],
      "description": "Response format: llm (optimized for AI), standard (full details), minimal (compact)",
      "default": "llm"
    },
    "mode": {
      "type": "string",
      "enum": [
        "keyword",
        "hybrid"
      ]
    },
    "semanticRatio": {
      "type": "number",
      "minimum": 0,
      "maximum": 1
    },
    "useLlmSearchPath": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "vehicles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "vin": {
            "type": "string",
            "description": "17-character VIN. Part of the cite object with url."
          },
          "url": {
            "type": "string",
            "description": "Canonical opendealer.shop VDP URL. Cite this to shoppers; never detailsUrl, /llm/*, or /v1/llm/* as the human listing URL."
          }
        },
        "additionalProperties": true
      }
    },
    "total": {
      "type": "number"
    },
    "totalResults": {
      "type": "number"
    }
  },
  "additionalProperties": true
}

推奨プロンプト

search_research
Search for information about [topic] using OpenDealer MCP Server
想定されるツール: search_vehicles
find_specific
Find [specific item] using OpenDealer MCP Server
想定されるツール: search_vehicles
retrieve_data
Get details about [item] from OpenDealer MCP Server
想定されるツール: get_vehicle
fetch_info
Fetch [information type] using OpenDealer MCP Server
想定されるツール: get_vehicle
list_items
List all [items] available in OpenDealer MCP Server
想定されるツール: list_facets

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 27 件
検証済みバージョンは記録されていませんツール 27 件