chronicle-mcp
chronicle-mcp
chronicle-mcp is a local Model Context Protocol (MCP) server providing persistent, queryable memory for Crusader Kings II tabletop-style roleplaying sessions. It equips AI agents with direct tools to log and retrieve characters, timeline events, and lore documents ("tomes"), backed entirely by plain JSON files on disk.
Features & Safe Upsert Behavior
Explicit ID Upserting: Calling
upsert_characterorupsert_tomewithout anidalways creates a new record with a fresh ID, even if an existing character or tome shares the same name/title (crucial for tabletop RP campaigns with recurring or dynastic names across generations).Lookup Helpers: Use
find_character_by_nameorfind_tome_by_titleto search for existing records and retrieve theiridbefore performing updates withupsert_*.Standardized Responses: All tool responses follow a consistent
{ success: boolean, ...data, message?: string }shape.Robust Storage: Fast in-memory cached reads paired with ~300ms debounced disk writes and automatic recovery for corrupted JSON files.
Setup
Install dependencies:
npm installBuild the project:
npm run build
Running the Smoke Test
To run the complete automated smoke test suite (including isolated CRUD, non-overwriting upsert checks, and corrupt file recovery tests) against a temporary scratch directory (./data-test/), run:
npm run test:smokeAntigravity CLI Registration
Register chronicle-mcp in your Antigravity CLI configuration (global at ~/.gemini/config/mcp_config.json or project-level at .agents/mcp_config.json):
{
"mcpServers": {
"chronicle": {
"command": "node",
"args": ["c:/Users/manji/Downloads/chronicle-mcp/build/index.js"],
"env": {
"CHRONICLE_DATA_DIR": "c:/Users/manji/Downloads/chronicle-mcp/data"
}
}
}
}(Replace c:/Users/manji/Downloads/chronicle-mcp with the absolute path to your local chronicle-mcp installation directory if installed elsewhere).
Data & Backups
All persistent campaign memory is stored in three plain JSON files inside the data/ directory (characters.json, timeline.json, and tomes.json). Creating a full backup of your RP campaign is as simple as copying or committing the data/ folder. You can also customize the data storage location by setting the CHRONICLE_DATA_DIR environment variable in your mcp_config.json.
"# chronicle-mcp"
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ShaanBa/chronicle-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server