{"ok":true,"site":{"host":"sift-hackathon-production.up.railway.app","url":"https://sift-hackathon-production.up.railway.app/","type":"live","desc":"Sift","tools":[{"name":"sift_get_case_context","kind":"answer","impl":"imperative","description":"Returns the active case summary, selected pack ID/version/hash, pack-defined and case-defined criteria/attributes, options, readiness counts, current focus, selected option/evidence, recommendation, active run correlation, pending human action, case-defined custom-field definitions (label, reason, origin, confirmation state), a bounded research summary (source titles and publishers, not full excerpts), unresolved questions with their real question text, stale or conflicted signals, and the current workspace view. It omits private model messages and oversized source bodies. Call this to understand the case before acting and again afterward to see what changed; it never mutates anything.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"sift_list_packs","kind":"answer","impl":"imperative","description":"Returns installed compiled Decision Packs with descriptions, versions, hashes, and activation signals.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"sift_get_interaction_context","kind":"answer","impl":"imperative","description":"Returns what Sift already knows about this decision and what it still needs: the discovery coverage, the single highest-value question to ask next with the exact interaction kinds and option seeds the pack allows for it, any inference waiting on the person's confirmation, the topics already answered, the bounded next moves, and the actions that are human-only and must never be attempted by a tool. Call this before asking the person anything, so you ask the one question that matters and never re-ask something already answered. It never mutates anything.","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"AI & Agents","favicon":"/favicons/sift-hackathon-production.up.railway.app.png","apiSurface":"spec","toolCount":3}}