MCP Session Context — Vision
Mirrored from
docs/design/mcp-session-context/3_vision.md. Edit the source document in the repository, not this generated page.
Session context should stay small and deliberate: fields belong here only when they are session-scoped, trusted by the transport boundary, and safer than repeating low-signal inputs on every tool call.
1. Open Questions
Section titled “1. Open Questions”- Should future MCP transports store context by transport session id rather than by server instance?
- Should workspace context eventually accept a workspace id as well as a path, or should the path remain the only MCP address and
.orbit/config.yamlremain the binding source? - Which additional low-noise fields, if any, are safe enough for session context rather than tool input?
2. Prior Work
Section titled “2. Prior Work”Task Artifacts
Section titled “Task Artifacts”[ADR-0149] established that .orbit/config.yaml stores the load-bearing workspace_id binding and that defaulting task writes from cwd can silently route to the wrong workspace.
MCP Schema Trimming
Section titled “MCP Schema Trimming”[ORB-00255] motivated reducing repetitive tool fields, but workspace could not become optional until MCP had a deliberate ambient channel.
3. What May Be Distinctive
Section titled “3. What May Be Distinctive”Orbit treats session context as a safety mechanism rather than a convenience cache. The resolver deliberately refuses to use process cwd, even when cwd would appear to work, because worktree and non-default binding cases are exactly where an implicit fallback is most dangerous.
4. References
Section titled “4. References”- [ADR-0149] records the task-artifact workspace binding invariant.
- [ADR-0181] records the MCP ambient workspace session context decision.
- [ORB-00256] implemented the first session context field.
- [ORB-00255] motivated the schema trimming pressure that made a safe default useful.
Task References
Section titled “Task References”- [ORB-00255] motivated reducing repetitive workspace boilerplate.
- [ORB-00256] implemented the session context channel.
Resolve any task above with orbit task show <ID> or git log --grep=<ID>.