BARDO

/ MCP-Driven TTRPG Operations

A local-first world-state engine for tabletop campaigns.

Bardo gives any MCP-capable agent a canon-aware workspace with persistent state, continuity reports, and local markdown files you can actually read. The AI helps, but the table still owns truth.

/ Install Bardo CLI

curl -fsSL https://bardo.gg | sh

After install, run `bardo login`, then `bardo connect`, then `bardo init` in your campaign folder. Local docs appear in `bardo/docs/`.

7

Continuity reports

100%

State persistent

TTRPG systems

1

Credit per tool call

/ Without Bardo

  • You re-explain your world every session
  • State lives in the LLM's context window — until it doesn't
  • Canon and suggestion get blended together
  • NPCs forget what happened last week
  • Swapping agents means starting from scratch
  • Long campaigns collapse under their own complexity

/ With Bardo

  • World state auto-loads on every session init
  • State persists to markdown files — survives any reset
  • Canon, inference, and suggestion stay clearly separated
  • NPCs, factions, and threads update after every action
  • Any MCP-capable agent can resume your campaign
  • The workspace stays readable even as the campaign grows

/ Local-first workspace

One command. Full campaign structure.

Run bardo init in any folder and Bardo creates the nested workspace scaffold: canonical events, projections, logs, rules, world files, and local docs under bardo/docs/.

Read your campaign truth directly from markdown. The fastest path is usually projections/current-state.md, then events/canonical.ndjson, then the generated reports in logs/.

/ Init command

cd ./the-iron-duchy && bardo init

/ See it in action

A real Bardo session with canon and continuity in the open.

Bardo keeps tool calls explicit and the resulting world state readable. What your agent does can be traced back to canonical events, refreshed projections, and markdown reports inside the workspace.

/ Demo

Watch a full campaign session

/ Compatible Agents

Works with your current stack

  • Claude Code
  • VS Code + Copilot
  • Cursor
  • Cline
  • OpenCode
  • Codex CLI
  • Gemini CLI
  • Any MCP-capable agent

/ Why Bardo

Repeatable.
Coherent.
System-agnostic.

Explicit state handling and predictable narrative synchronization through markdown-first tooling. No more ad-hoc prompting. No more lost campaigns.

/ What Bardo brings to every session

01

Persistent State

Canon lives in local markdown and canonical events that survive restarts, context resets, and model swaps.

02

System-Agnostic

Bring your own rules. Bardo tracks continuity, consequences, and world state without forcing a house system on the table.

03

Auditable Canon

The important claims stay grounded in canonical events, readable files, and explicit tool calls. Suggestions stay separate from facts.

04

Automatic World Tracking

NPCs, factions, unresolved threads, and location state refresh automatically after meaningful play without asking for a prep step.

05

Resumable Sessions

Pick up a campaign from any MCP-capable client by reading the workspace, not by rebuilding memory from scratch.

06

Local Docs Included

Run `bardo init` and get canonical files, generated continuity reports, and local docs in `bardo/docs/` right inside the workspace.

/ Getting started — four steps

01

Install Bardo and connect it to your agent via MCP config

02

Run `bardo init` in your campaign workspace folder

03

Your agent reads projections/current-state.md, events/canonical.ndjson, and logs/*.md to load context

04

Play sessions that auto-persist state and regenerate continuity reports automatically

/ Your world. Any world.

Bardo is open standard and agent-agnostic. Whether you're running a gritty noir campaign in Chicago or a high-fantasy epic in an entirely invented universe, the MCP protocol connects your world to any AI stack, anywhere.

/ Get started

One MCP server. Any agent. Any TTRPG system.