Alpha MCPAPI reference · v1

The MCP your agents call.

Tritemporal memory that cannot lie about the past, a governed causal graph, knock-on simulation, and a decision ledger — the engine behind every Cascadian answer, at machine speed.

MCPPOSTGRESGOVERNED
Tools / Memory

get_context_pack()

Key

The flagship read. One typed pack for a question: facts, beliefs, assumptions, hypotheses, causal edges, prior similar decisions with their outcomes, open contradictions — plus what's missing (missing_evidence) and where the system abstained. Every item is stamped available_at_decision_time, and the retrieval run is persisted so the pack can be reconstructed later.

get_context_pack(question, as_of, detail)CONTEXT PACK

Callable over MCP as get_context_pack(question, as_of, detail). REST mirror POST /v1/context-pack Planned — alpha is MCP-only

Why your agent calls it

The call before any judgment. One question in; one typed pack out — facts, beliefs, causal edges, prior similar decisions and how they turned out, open contradictions, and an explicit list of what's missing. Every item stamped with whether it was knowable at decision time. This is what "the agent checked before money moved" actually means.

What it returns
FACTSBELIEFSCAUSAL EDGESPRIOR DECISIONSCONTEXT PACKtyped · pinnedAS-OF STAMPED≤2kTOKENS · L1+ CONTRADICTIONS · MISSING_EVIDENCE · ABSTENTION REPORT
get_context_pack() · Everything knowable for a decision, stamped and typed.ILLUSTRATIVE
Call it from an agent

Over MCP, your agent invokes it on its own when the moment calls for it — just describe the situation. A Python SDK for headless runtimes is planned; this is what the call will look like.

agent · python sdkSDK · PLANNED — ALPHA IS MCP-ONLY
from cascadian import Cascadian cx = Cascadian(api_key=os.environ["CASCADIAN_API_KEY"]) result = cx.get_context_pack( question="Should we cut the discount tier or raise onboarding spend?", as_of="2026-06-11T17:00:00Z", detail="summary", )
Parameters
ParamTypeDescription
questionREQUIREDstringThe decision question to assemble context for.
as_oftimestampAssemble only what was knowable then. Default now — pinned automatically inside an open decision.
detailenum"summary" (default, ≤2k tokens) or "full".
Example response
get_context_pack()JSON · ILLUSTRATIVE
{ "question": "Should we cut the discount tier?", "as_of": "2026-06-11T17:00:00Z", "facts": [ { "id": "fct_2231", "s": "discount tier live since 2025-09", "available_at_decision_time": true } ], "beliefs": [ { "id": "mem_0871", "s": "discount pulls deals forward; lift unclear", "status": "approved" } ], "causal_edges": [ { "edge": "discount → win_rate", "status": "approved", "confidence": 0.7 } ], "prior_decisions": [ { "id": "dec_0093", "q": "raise list price 5%", "variance": "within interval" } ], "contradictions": [], "missing_evidence": ["no enterprise win-rate data after 2026-04"], "abstained": false, "retrieval_run_id": "ret_5531" }
Try it — sandbox

Run this call right here. The response is canned and spec-true — the exact shape your agent gets back over MCP, on sample data.

Sandbox — canned, spec-true responses. No key, no server, no live data.

Sandbox — sample responseget_context_pack()
// Press RUN to call get_context_pack() in the sandbox.
Sample — canned from the spec, not a live server
Related — Memory