Both tools track a numbered sequence with a declared total and a flag for whether another step is needed, so the model has to say when it is finished rather than trailing off. The narrative framing exists because characters and settings stick in memory where abstract steps don't; if that isn't how you think, enable the thinking tool and skip the story.
A Python server with two problem-structuring tools: Sequential Story, which frames a problem as narrative elements with characters, settings and plot points, and Sequential Thinking, a pure-Python port of the JavaScript implementation.
- Sequential Story — build a solution as numbered elements, each carrying a character, setting, tone and plot point
- Sequential Thinking — the same sequencing over plain thoughts, with hypothesis generation and verification
- Revision and branching on both, so a step can be reconsidered without restarting
- An explicit end condition — each element declares the total and whether another one is needed
- Colour-coded, formatted output for every element
- No Node.js anywhere: the thinking implementation is Python
Run with `uvx sequential-story`, or install locally with `uv sync`. The `TOOLS` environment variable decides which tools load — only Sequential Story is on by default, and `TOOLS='["thinking","story"]'` enables both.
One command — uvx sequential-story
