{"name":"com.kviria/kviria","slug":"kviria","title":"Kviria","description":"The location engine for AI agents: one verified coordinate from where a user means. Beta: US.","url":"https://mcp.market/server/kviria","rating":null,"grade":"C","score":69,"certified":false,"status":"active","category":"maps","tags":["maps"],"presence":{"score":8,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":null,"website":"https://kviria.com","version":"1.0.1","remotes":[{"type":"streamable-http","url":"https://api.kviria.com/mcp","headers":[{"description":"Wallet sign-in (CAIP-122), fresh signature per call — build it per docs.kviria.com/api/agent","isRequired":true,"name":"SIGN-IN-WITH-X"}]}],"packages":[],"tools":[{"name":"kviria","description":"Kviria narrows a user's spoken reference down to exactly one place or address and returns its verified coordinate with an evidence trail. Call it with the user's raw message and their current anchor {lat, lng}. Phrase your reply from the returned facts ONLY: state names, distances, and categories exactly as returned; never invent distances, crosswalks, landmarks, opening hours, or any sensory detail. For a 'confirm' decision, ask the user \"is it {name} ({distanceM} m)?\" and pass their bare yes/no back as the next transcript, echoing the candidates array verbatim. For 'candidates', list them with their distances and ask which one; on the user's next message echo the SAME candidates array back so the engine binds the pick mechanically. Preserve the pendingConfirm marker on the candidate it came with. The target is the final outcome: present its coordinate, never paraphrase the place name. If the user rejects (no), present the returned candidates or ask for more detail. Do not call with invented anchors; the anchor is the user's real position. Kviria is in beta: current coverage is the contiguous United States (approximately lat 24.4 to 49.5, lng -125.0 to -66.8). Queries outside the covered area return an honest notFound with an out_of_coverage evidence entry, and that turn is free. Tell the user the area is outside current coverage instead of retrying.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"transcript":{"type":"string","minLength":2,"maxLength":1000,"description":"The user's raw message (voice transcript or text), as spoken, typos and all. Do not normalize or paraphrase it. Mutually exclusive with `intent`."},"intent":{"type":"object","description":"The structured meaning of the user's words. Send exactly one of transcript or intent. Category filters take EXACT labels from the area's real categories (provided in every response). Unfiltered `across` returns the place on the opposite side with its own category; add categoryAny to ask for a specific kind. Full mapping rules: https://kviria.com/skill.md","oneOf":[{"type":"object","properties":{"action":{"const":"find"},"target":{"$ref":"#/definitions/find_target"}},"required":["action","target"]},{"type":"object","properties":{"action":{"const":"search"},"categoryAny":{"type":"array","items":{"type":"string"},"description":"Exact labels the user WANTS (e.g. [\"mexican_restaurant\"])"},"categoryNot":{"type":"array","items":{"type":"string"},"description":"Exact labels the user rejects (e.g. [\"cafe\"])"}}},{"type":"object","properties":{"action":{"const":"neighbors"},"of":{"$ref":"#/definitions/target_anchor"},"side":{"enum":["left","right"]}},"required":["action","of"]},{"type":"object","properties":{"action":{"const":"near"},"of":{"$ref":"#/definitions/target_anchor"},"categoryAny":{"type":"array","items":{"type":"string"}},"categoryNot":{"type":"array","items":{"type":"string"}}},"required":["action","of"]},{"type":"object","properties":{"action":{"const":"across"},"of":{"$ref":"#/definitions/target_anchor"},"categoryAny":{"type":"array","items":{"type":"string"}}},"required":["action","of"]},{"type":"object","properties":{"action":{"const":"along"},"street":{"type":"string"},"n":{"type":"integer","minimum":1}},"required":["action","street","n"]},{"type":"object","properties":{"action":{"const":"at_address"},"number":{"type":"string"},"street":{"type":"string"}},"required":["action","number"]},{"type":"object","properties":{"action":{"const":"street_zoom"},"street":{"type":"string"}},"required":["action","street"]},{"type":"object","properties":{"action":{"const":"street_end"},"street":{"type":"string","description":"The street whose end places the user wants."},"categoryAny":{"type":"array","items":{"type":"string"},"description":"Optional kind filter for the end places (\"is there any market at the end of this street?\")."},"categoryNot":{"type":"array","items":{"type":"string"}}},"required":["action","street"]},{"type":"object","properties":{"action":{"const":"confirm"},"value":{"enum":["yes","no"]}},"required":["action","value"]},{"type":"object","properties":{"action":{"const":"select"},"index":{"type":"integer","minimum":1}},"required":["action","index"]}]},"anchor":{"type":"object","description":"The user's current position - Kviria resolves relative to this point.","properties":{"lat":{"type":"number","description":"WGS 84 latitude"},"lng":{"type":"number","description":"WGS 84 longitude"}},"required":["lat","lng"]},"candidates":{"type":"array","maxItems":50,"description":"The pending candidates from the previous response, echoed VERBATIM (including the pendingConfirm marker) so clarification answers and confirm yes/no bind mechanically.","items":{"type":"object","properties":{"gers":{"type":"string","minLength":1,"maxLength":128},"name":{"type":["string","null"],"maxLength":512},"location":{"type":"object","properties":{"lat":{"type":"number"},"lng":{"type":"number"}},"required":["lat","lng"]},"category":{"type":["string","null"],"maxLength":256},"distanceM":{"type":"number","minimum":0},"pendingConfirm":{"type":"boolean","description":"Marks the confirm-gate target; echo it back exactly as received."}},"required":["gers"]}},"rangeM":{"type":"integer","minimum":50,"maximum":1000,"default":100,"description":"Search radius around the anchor in meters (clamped to 50-1000)."},"confirmation":{"type":"string","enum":["on","off"],"default":"on","description":"\"on\" (default): a single survivor emits a confirm decision, and the coordinate is released only after the user verifies it. \"off\": agents without a human in the loop get direct resolution."},"references":{"type":"array","maxItems":5,"description":"Previously resolved places, most recent first, so \"it\" and \"that cafe\" resolve on later turns. Optional. Echo any lat/lng Kviria returned so distances stay real.","items":{"type":"object","properties":{"gers":{"type":"string","minLength":1,"maxLength":128},"name":{"type":["string","null"],"maxLength":512},"lat":{"type":"number","description":"Reference latitude as returned by Kviria."},"lng":{"type":"number","description":"Reference longitude as returned by Kviria."}},"required":["gers"]}}},"required":["anchor"],"oneOf":[{"required":["transcript"]},{"required":["intent"]}],"definitions":{"find_target":{"type":"object","description":"An entity lookup: ref (gers from a previous response), name (exactly as returned), or index (1-based into echoed candidates). Raw coordinates belong to the spatial actions.","oneOf":[{"type":"object","properties":{"ref":{"type":"string","minLength":1}},"required":["ref"]},{"type":"object","properties":{"name":{"type":"string","minLength":1}},"required":["name"]},{"type":"object","properties":{"index":{"type":"integer","minimum":1}},"required":["index"]}]},"target_anchor":{"type":"object","description":"The anchor to act on: ref (gers from a previous response), name (exactly as returned), index (1-based into echoed candidates), or at (raw coordinates). Never a free description.","oneOf":[{"type":"object","properties":{"ref":{"type":"string","minLength":1}},"required":["ref"]},{"type":"object","properties":{"name":{"type":"string","minLength":1}},"required":["name"]},{"type":"object","properties":{"at":{"type":"object","properties":{"lat":{"type":"number"},"lng":{"type":"number"}},"required":["lat","lng"]}},"required":["at"]},{"type":"object","properties":{"index":{"type":"integer","minimum":1}},"required":["index"]}]}}}}],"scan":{"score":69,"grade":"C","scanned_at":"2026-09-19T04:44:04.812Z","report":{"scannerVersion":"0.1.3","scannedAt":"2026-09-19T04:44:04.749Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 604ms"]},"poisoning":{"score":15,"max":15,"notes":["1 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":3,"max":15,"notes":["no repository listed"]},"identity":{"score":4,"max":10,"notes":["verified namespace with website, no repo"]}},"findings":[{"id":"maint.no-repo","severity":"low","component":"maintenance","title":"No source repository listed"}],"inputs":{"probes":[{"url":"https://api.kviria.com/mcp","reachable":true,"authRequired":false,"latencyMs":604,"serverInfo":{"name":"kviria","version":"1.0.0"}}],"packages":[],"repo":{"found":false},"icon":{"url":"https://kviria.com/apple-icon.png?ee9ea6984380d48a","source":"site","width":180,"height":180},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":8}}}},"grade_history":[],"reviews":[]}