archivist
Officialby archivist-gg
README.md
# @archivist/generators
Headless D&D 5e content-generation library **and a runnable standalone MCP server**,
extracted from [archivist-obsidian](https://github.com/archivist-gg/archivist-obsidian-plugin) so
it can be consumed outside the Obsidian plugin.
The library exposes generation tools and an SRD tool set that are **generic over the
domain**: callers inject a live SRD store, the pack's `Generatable`s, and a storage/write
port. The port shapes live in `src/contracts.ts` (structural copies of the pack contracts).
## The MCP server (step 3 — done)
`dist/server.js` is a stdio [MCP](https://modelcontextprotocol.io) server named `archivist`
exposing read-only SRD lookup + deterministic enrichment tools, backed by the real D&D 5e
SRD and pack generators. Your own Claude Code (or any MCP client) connects to it; the server
never writes to your vault — the client writes the `.md` files.
It serves 7 tools: `search_srd`, `get_srd_entity`, and
`generate_{monster,spell,item,npc,encounter}`.
### Build (required before use)
The server bundles the `@archivist/dnd5e` + `@archivist/core` packages from the sibling
plugin repo at build time, so **`../archivist-obsidian` must be checked out** next to this
repo.
npm install
npm run build # produces dist/server.js (self-contained; requires ../archivist-obsidian)
npm run smoke # optional: verifies the built server end-to-end (7 tools, real SRD hit)
### Connect Claude Code
claude mcp add archivist -- node /absolute/path/to/archivist-generators/dist/server.js
## Develop
npm install
npm run check # typecheck + lint + test (no build needed)
License: MIT.
This server cannot be deployed
Maintenance
ActivityStale
ResponsivenessNo issues