{"name":"com.getvaletparking/valet-parking-directory","slug":"getvaletparking-valet-parking-directory","title":null,"description":"MCP server for valet parking: 789 US operators across 31,186 cities. 7 tools. No auth.","url":"https://mcp.market/server/getvaletparking-valet-parking-directory","rating":null,"grade":"C","score":69,"certified":false,"status":"active","category":"security","tags":["security"],"presence":{"score":11,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-06-19T00:03:38.000Z","license":"MIT"},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T12:55:37.863Z","last_ok_at":"2026-11-04T12:55:37.863Z","latency_ms":716},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/getvaletparking/valet-parking-mcp","website":null,"version":"0.1.0","remotes":[{"type":"streamable-http","url":"https://api.getvaletparking.com/mcp"}],"packages":[],"tools":[{"name":"valet_find_nearest_operators","description":"List nearest valet operators within a 100-mile cap of a coordinate, optionally narrowed by service. Use this when a user is in a city with no listed operators and you need the closest available fallback ranked nearest-first. Empty array if nothing within 100 miles.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"lat":{"type":"number","minimum":-90,"maximum":90,"description":"Latitude in decimal degrees (WGS84). Range: -90 to 90."},"lng":{"type":"number","minimum":-180,"maximum":180,"description":"Longitude in decimal degrees (WGS84). Range: -180 to 180."},"service":{"type":"string","enum":["wedding-valet","corporate-event-valet","private-event-valet","funeral-valet","hotel-resort-valet","restaurant-valet","hospital-medical-valet","major-venue-valet","general-valet"],"description":"Optional service narrowing. One of the 9 canonical valet service slugs. Omit to list every nearby operator regardless of services offered."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10,"description":"Max results to return; default 10, capped at 50"}},"required":["lat","lng"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"valet_find_operators_in_city","description":"List valet operators serving a city slug plus state slug, optionally narrowed by service. Use this when an agent has a city already disambiguated and wants its operator roster ranked by listing tier then name. Empty array if no listed operators.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"state_slug":{"type":"string","minLength":1,"description":"Lowercase kebab-case US state slug (e.g. 'tx', 'new-york')"},"city_slug":{"type":"string","minLength":1,"description":"Lowercase kebab-case city slug (e.g. 'houston', 'san-francisco')"},"service":{"type":"string","enum":["wedding-valet","corporate-event-valet","private-event-valet","funeral-valet","hotel-resort-valet","restaurant-valet","hospital-medical-valet","major-venue-valet","general-valet"],"description":"Optional service narrowing. One of the 9 canonical valet service slugs. Omit to list every operator serving the city."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10,"description":"Max results to return; default 10, capped at 50"}},"required":["state_slug","city_slug"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"valet_find_operators_near","description":"Find valet operators within a given radius of a coordinate, ranked by listing tier then distance. Use this when you have a coordinate and an event-context radius (5mi single venue, 25mi metro, 50mi regional). radius_miles is required; empty array if no matches.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"lat":{"type":"number","minimum":-90,"maximum":90,"description":"Latitude in decimal degrees (WGS84). Range: -90 to 90."},"lng":{"type":"number","minimum":-180,"maximum":180,"description":"Longitude in decimal degrees (WGS84). Range: -180 to 180."},"radius_miles":{"type":"number","minimum":0.1,"maximum":500,"description":"Search radius in miles. REQUIRED, no default. Pick based on context: 5 mi for a single venue, 25 mi for a metro, 50 mi for a regional sweep."},"service":{"type":"string","enum":["wedding-valet","corporate-event-valet","private-event-valet","funeral-valet","hotel-resort-valet","restaurant-valet","hospital-medical-valet","major-venue-valet","general-valet"],"description":"Optional service narrowing. One of the 9 canonical valet service slugs. Omit to list every operator within radius regardless of services offered."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10,"description":"Max results to return; default 10, capped at 50"}},"required":["lat","lng","radius_miles"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"valet_get_operator","description":"Get the full operator profile by slug including address, phone, website, services, venues_served, FAQs, and tipping note. Use this when an agent has a slug from a search tool or directory URL and needs the complete profile to rank or present. Returns isError on slug 404 or upstream outage.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"slug":{"type":"string","minLength":1,"description":"Canonical kebab-case operator slug (e.g. '12-oaks-parking-llc'). Lowercase letters, digits, hyphens only."}},"required":["slug"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"valet_list_services","description":"List the 9 canonical valet service slugs with display name and category. Use this when an agent needs to validate or discover the supported service taxonomy before composing a follow-up search (e.g. valet_search_by_service_and_city). Returns the in-bundle catalog; no upstream call; no isError path.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"valet_request_quote","description":"Submit a valet parking quote request to the operators serving a US city. Use this when a person has asked you to arrange valet and has given their name, email, phone, city, service type and event date. The request is only sent after they confirm by email.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"contact_name":{"type":"string","minLength":2,"maxLength":120,"description":"The requester's full name"},"contact_email":{"type":"string","format":"email","maxLength":254,"description":"Email address to send the one-tap confirmation link to"},"contact_phone":{"type":"string","minLength":7,"maxLength":40,"description":"Phone number the operator can call"},"city_slug":{"type":"string","pattern":"^[a-z0-9-]+$","description":"Canonical kebab-case city slug from valet_search_cities, e.g. 'austin'. Omit if using city_other."},"city_other":{"type":"string","minLength":2,"maxLength":120,"description":"Free-text city name when no directory slug is known. Omit if using city_slug."},"service":{"type":"string","enum":["wedding-valet","corporate-event-valet","private-event-valet","funeral-valet","hotel-resort-valet","restaurant-valet","hospital-medical-valet","major-venue-valet","general-valet"],"description":"One of the 9 canonical valet service slugs"},"event_date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Event date in YYYY-MM-DD format"},"guest_count":{"type":"integer","minimum":1,"maximum":10000,"description":"Approximate guest count, if known"},"vehicle_count":{"type":"integer","minimum":1,"maximum":10000,"description":"Approximate vehicle count, if known"},"notes":{"type":"string","maxLength":2000,"description":"Free-text notes for the operator, e.g. venue name or timing details"},"operator_slug":{"type":"string","pattern":"^[a-z0-9-]+$","description":"Send to this one operator only instead of the full fan-out for the city. Omit to notify every matched operator in the city."}},"required":["contact_name","contact_email","contact_phone","service","event_date"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"valet_search_by_service_and_city","description":"Search valet operators by service slug plus city slug across all matching states. Use this when an agent has both a service slug and a city slug and wants a cross-state tier-then-name ranked list. Invalid service slugs surface the 9 canonical alternatives.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"service_slug":{"type":"string","enum":["wedding-valet","corporate-event-valet","private-event-valet","funeral-valet","hotel-resort-valet","restaurant-valet","hospital-medical-valet","major-venue-valet","general-valet"],"description":"Required canonical valet service slug. One of 9 values; call valet_list_services for the full set."},"city_slug":{"type":"string","minLength":1,"description":"Lowercase kebab-case city slug (e.g. 'austin', 'springfield'). May match multiple cities across states."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10,"description":"Max results to return; default 10, capped at 50"}},"required":["service_slug","city_slug"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"valet_search_cities","description":"Search the cities directory by name prefix with population-ranked results. Use this when an agent needs to resolve a partial city name into a canonical city slug plus state slug plus lat/lng before composing valet_find_operators_in_city or valet_find_operators_near. Empty array if no matches.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"type":"string","minLength":2,"description":"Partial or full city name (>=2 chars). Matched against name and lowercase name fields with prefix semantics."},"limit":{"type":"integer","minimum":1,"maximum":25,"default":8,"description":"Max results to return; default 8, capped at 25"}},"required":["query"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}}],"scan":{"score":69,"grade":"C","scanned_at":"2026-09-26T21:21:50.684Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-26T21:21:50.658Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1907ms"]},"poisoning":{"score":15,"max":15,"notes":["8 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 1 write-action tools with no auth"]},"maintenance":{"score":8,"max":15,"notes":["last push 100 days ago"]},"identity":{"score":6,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://api.getvaletparking.com/mcp","reachable":true,"authRequired":false,"latencyMs":1907,"serverInfo":{"name":"getvaletparking","version":"1.0.0"}}],"packages":[],"repo":{"found":true,"owner":"getvaletparking","repo":"valet-parking-mcp","archived":false,"pushedAt":"2026-06-19T00:03:38Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/293699068?v=4","ownerCreatedAt":"2026-06-15T00:30:26Z","license":"MIT"},"icon":{"url":"https://getvaletparking.com/favicon.svg","source":"site"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-06-19T00:03:38.000Z","score":11}}}},"grade_history":[],"reviews":[]}