Spacebot Orchestrator
Spacebot (~/spacebot/) is a separate Rust + React application that serves as the orchestrator for narrative and story workflows. It is the MCP client — it loads MCP server definitions and calls their tools on behalf of the user.
Role
- Orchestrator: Proxies UI requests to the correct MCP tool calls
- MCP client: Loads
narrativeandstoriesMCP server configs fromcore-x/config/mcp-servers.json - UI host: Provides Studio and Stories React surfaces
Surfaces
| Surface | Route | MCP Server | Tools Called |
|---|---|---|---|
| Studio | /studio | narrative_mcp | narrative_state_upsert, narrative_scene_plan_variants, narrative_scene_render, narrative_scene_validate |
| Stories | /stories | stories_mcp | stories_project_upsert, stories_episode_plan, stories_episode_render_script, stories_episode_render_audio, stories_episode_render_video, stories_episode_validate |
Data Flow
Spacebot UI (React) → Spacebot API (Rust) → MCP tool calls (stdio) → narrative_mcp / stories_mcp → MLX servicesStudio caches rendered artifacts in memory. Stories serves media files directly from ~/.core-x/stories/.
Status: Implemented
- Studio surface: state editing, variant planning, scene rendering, audio polling, validation
- Stories surface: project config, episode planning, script rendering, audio rendering, video rendering, validation
- Media file serving from
~/.core-x/stories/