Skip to content

MCP Servers

Two MCP servers handle narrative and story workflows. Both are Python packages inside core-x/ and run via stdio transport. Their configs live in core-x/config/mcp-servers.json.

Narrative MCP (core-x/narrative_mcp/)

Purpose: Screenplay-style narrative planning, rendering, validation, and audio orchestration.

Version: 0.2.0 (renderer), v1.2 (schema)

Tools:

ToolLLM Call?Description
narrative_state_upsertNoCreate/update/read canonical project state with revision tracking
narrative_scene_plan_variantsNoGenerate deterministic scene outlines (beat structure, POV, song slots)
narrative_scene_renderYes (gateway)Render a planned scene into structured dialogue + Fountain text + optional audio
narrative_scene_validateNoValidate rendered artifact against state (structure, continuity, music, policy)

Data model: ProjectState with world, timeline, inventory, scene_slots, audio_profiles, constraints. File-backed JSON at ~/.core-x/narrative/.

Service dependencies: OpenResponses gateway (:8090) for LLM scene generation, mlx-audio (:8093) for TTS via media_runtime.TtsRuntime.

Stories MCP (core-x/stories_mcp/)

Purpose: Audio-native voice-blog and episode pipeline — planning, scripting, audio rendering, video rendering, validation.

Version: 0.1.0

Tools:

ToolLLM Call?Description
stories_project_upsertNoCreate/update/read project config (mode, hosts, sources, constraints)
stories_episode_planNoPlan episode structure (intro/body/close segments)
stories_episode_render_scriptNoGenerate script segments from plan
stories_episode_render_audioNoQueue TTS audio render (async, background thread)
stories_episode_render_videoNoQueue keyframe + video render (mflux + LTX-2)
stories_episode_validateNoValidate script and media artifacts

Data model: StoriesProjectState with mode (voice_blog / audio_episode), hosts (voice profiles), sources, constraints. File-backed JSON at ~/.core-x/stories/.

Service dependencies: mlx-audio (:8093) for TTS, mflux (:8083) for keyframes, video (:8084) for LTX-2, optionally gateway (:8090).