{
  "name": "roamworthy-mcp",
  "title": "RoamWorthy",
  "version": "0.7.3",
  "description": "Public read-only Model Context Protocol server for RoamWorthy live UK caravan, motorhome and campervan inventory, conversational vehicle matching and model research.",
  "endpoint": "https://vemdbhnkofoolbwslqpj.supabase.co/functions/v1/mcp",
  "documentation": "https://www.roamworthy.co.uk/developers/mcp",
  "protocol": "2026-07-28",
  "transport": "streamable-http",
  "authentication": "none",
  "access": "public-read-only",
  "canonical_site": "https://www.roamworthy.co.uk",
  "health": "https://vemdbhnkofoolbwslqpj.supabase.co/functions/v1/mcp-health",
  "tools": [
    {
      "name": "search_models",
      "purpose": "Search active RoamWorthy model research using a specific model/range query or brand. Results are capped at 10, non-pageable and exclude internal UUIDs."
    },
    {
      "name": "get_model",
      "purpose": "Retrieve a bounded public research summary for one active RoamWorthy model, including core specifications, production years, live-stock count and canonical URL. Raw model imagery and internal UUIDs are not returned."
    },
    {
      "name": "search_listings",
      "purpose": "Precisely search current public inventory with hard filters for price, year, berths, travel seats, transmission, fuel, layout/bed type, dimensions, weight/licence compatibility, payload, mileage, features, dealer and UK postcode/radius. Results include public availability/freshness signals, are capped at 10 and non-pageable."
    },
    {
      "name": "find_matching_vehicles",
      "purpose": "Match conversational buyer requirements and preferences against live stock, returning ranked vehicles with explicit match reasons, compromises, unknown data and quality provenance. Results are capped at 10 and non-pageable."
    },
    {
      "name": "get_listing",
      "purpose": "Retrieve safe public details for one live listing, including transmission, fuel, mileage, travel seats, dimensions, weights/licence compatibility where available, public availability/freshness signals, data-quality provenance, canonical URL and public dealer identity."
    },
    {
      "name": "list_dealer_inventory",
      "purpose": "List up to 10 current public listings for one specific active RoamWorthy dealer, including public availability/freshness signals; no pagination or bulk export."
    },
    {
      "name": "echo",
      "purpose": "Connectivity verification only."
    }
  ],
  "privacy": "The server exposes a bounded subset of public marketplace/research data only. It does not expose private consumer data, dealer contact details, VIN/CRIS identifiers, import/admin fields, analytics data, raw model imagery or internal UUID fields in tool responses. Usage telemetry is privacy-minimised and does not store raw IP addresses, full user prompts or free-text query contents.",
  "security": "Requests are size-bounded and protected by per-minute and per-fingerprint daily quotas. Bulk export, pagination and catalogue enumeration are intentionally unavailable. Single-character enumeration patterns are rejected, suspicious usage is telemetry-tagged, and abuse can be throttled with HTTP 429 responses.",
  "usage_guidance": "Use search_listings for strict hard-filter stock searches and find_matching_vehicles for conversational requirements, preferences and trade-offs. Use search_models/get_model for focused model research and get_listing for one vehicle. Structured fields and high-confidence canonical model links are preferred over dealer prose; unknown or conflicting data is surfaced rather than guessed. Results are bounded and non-pageable; do not use the MCP for bulk catalogue extraction."
}
