{"$schema":"https://github.com/microsoft/NLWeb/blob/main/schemas/server-card.schema.json","version":"1.0.0","name":"DealerMax NLWeb endpoint","description":"Natural Language Web (NLWeb) endpoint per concessionario automotive italiano. Risponde a query in linguaggio naturale con risultati Schema.org JSON-LD da corpus dealer: veicoli usato, offerte NLT, guide normative, glossario (Wikidata-linked), FAQ, news, podcast, brand encyclopedia.","site":"opportunitycar.it","ask_endpoint":"https://www.opportunitycar.it/ask","ask_endpoint_method":"GET","ask_endpoint_query_params":{"query":{"type":"string","required":true,"min":2,"max":500,"description":"Natural language query"},"mode":{"type":"string","enum":["list","summarize"],"default":"list","description":"Response mode: list (semantic search) or summarize (LLM gpt-5-mini summary + citations)"},"limit":{"type":"integer","min":1,"max":30,"default":10},"types":{"type":"string","description":"CSV filter: vehicle,nlt,guide,glossary,faq,news,brand,vehicle_podcast,dealer_podcast"},"streaming":{"type":"boolean","default":false,"description":"MVP: false only"},"query_id":{"type":"string","description":"Server-generated if missing"},"prev":{"type":"string","description":"Previous queries context. MVP: ignored"}},"supported_modes":["list","summarize"],"schema_types_emitted":["Car","Article","DefinedTerm","Question","Answer","NewsArticle","Brand","PodcastEpisode","PodcastSeries","Offer","Organization","AutoDealer"],"summarize_capability":{"model":"gpt-5-mini","language":"it","max_words":60,"citation_format":"inline [N] footnotes mapped to summary_citations array","anti_hallucination":"strict source grounding (only hits passed to LLM), refusal phrase fallback, citation ref validation in range","rate_limit":"5 req/min per IP (cost-cap, LLM ~100x more expensive than list mode)","spec_url":"https://developers.openai.com/api/docs/models/gpt-5-mini"},"language":"it","auth":"none","rate_limit":"60 req/min per IP (mode=list), 5 req/min per IP (mode=summarize, LLM cost-cap)","cache_control":"public, max-age=300 (list) | max-age=600 (summarize)","etag_support":true,"if_none_match_support":true,"cors":"*","spec_reference":"https://github.com/microsoft/NLWeb","mcp_endpoint":"https://mcp.dealermax.app/mcp/","mcp_endpoint_note":"DealerMax espone anche MCP server cross-dealer con 7 tool (search_vehicles, search_nlt_offers, get_vehicle_details, get_nlt_offer_details, find_dealer, get_vehicle_specs, get_market_intel). /ask e' lo specchio HTTP-pubblico di get_market_intel + ricerca veicoli, accessibile anche senza client MCP.","corpus":{"guides":"https://www.opportunitycar.it/llms-noleggio.txt (e 5 altre granular)","full":"https://www.opportunitycar.it/llms-full.txt","sitemap":"https://www.opportunitycar.it/sitemap-llm.xml","ai_plugin":"https://www.opportunitycar.it/.well-known/ai-plugin.json","agents_md":"https://www.opportunitycar.it/agents.md"},"license":"CC-BY-4.0","publisher":"DealerMax (https://dealermax.app)","implementation_status":"Sprint 1+2 — mode=list (semantic search 11 corpus types) + mode=summarize (gpt-5-mini RAG citation-grounded). Roadmap Sprint 3: streaming SSE + mode=generate (full LLM response) + prev multi-turn context."}