Retrieve institutional context that code search cannot provide — WHY, WHO, WHEN behind the code. Primary Unblocked research tool; reach for it first for synthesis across sources.
One call searches every indexed source: documentation, PRs, messaging (Slack/Teams), issues (Jira/Linear/GitHub), customer support tickets (Zendesk), code (semantic search + file reads), code history, incidents, public web, internal URLs. Composes semantic search, code search, file reads, PR/issue queries, messaging search, and incident lookups.
## When to call
Call proactively at the start of any non-trivial task, and whenever you hit an unknown. Do not wait for the user to ask.
- Planning, investigation, refactor, migration, or feature work. Fire in the same tool block as your first Explore/Grep/Read calls — complementary, zero latency cost.
- "Why does this exist" or "why is it done this way" questions. Code reading cannot answer these.
- Behavior doesn't match the code. Check history before assuming the code is wrong.
- Unfamiliar class, service, endpoint, flag, config key, or error string while reading or editing.
- Before writing new code. Check whether the pattern, bug, fix, helper, or abstraction already exists.
- Incident, alert, or outage. Connect affected systems to recent changes and prior fix patterns.
- Filtered activity lookups. "PRs merged last week in auth service", "open incidents tagged ingestion", "Jira epics in PROJ from Q1".
- Ambiguous user requests. Find the team's prior framing before guessing.
- Before recommending a solution. Verify the approach hasn't been tried, rejected, or superseded.
## When NOT to call
- Known URL in hand. Use `context_get_urls` — faster, deterministic, returns full hydrated content. Fall back here only if the URL pattern is unsupported.
If unsure, call. Missed context is expensive; recall misses are cheap.