External dial-back description for this host. Returns null for
in-process implementations that never expose a wire transport.
Transport-binding implementations override this once start()
has wired a concrete URL / port / command pair so consumers
(Claude Code's --mcp-config, sibling hosts, debug tooling) can
reach the server without re-encoding wire details. See
host/mcp_server_spec.dart.
Read-only snapshot of every registered resource URI (parity with
toolDefinitions / promptDefinitions). Used by hosts and tests to
confirm what the server exposes — e.g. the MCP Serving bundle document
at bundle://manifest.json.
Underlying mcp_server instance. Reference-impl detail — hosts that
need to drive the raw server (e.g. attaching prompt handlers
directly) reach in here. Code outside the mcp_host adapter should
prefer the KernelServerHost surface.
Register an MCP prompt. The handler returns a
KernelGetPromptResult (description + list of messages); the
host translates to the wire shape (mcp.GetPromptResult for the
reference impl, host-specific for custom transports).
In-process tool dispatch. Used by BundleActivation flows whose
toolDispatcher closure routes through the host's local server
surface, by BundleSessionBridge mirroring, and by host code
that wants to invoke a tool without going over the transport.
Publish a stdio dial-back spec. Hosts that ship the kernel as a
child process (Claude Code calling vibe_studio's stdio MCP
surface) call this so externalSpec surfaces the launch command
/ args / env consumers need.
KernelServerHostFactory-shaped entry point. Hosts pass this to
KernelApp.boot(serverHostFactory: ServerBootstrap.factory) so
every endpoint binds an MCP-server-backed surface.