S1000D Stack
A set of tools that lets an LLM read, check and create S1000D® technical documents in line with the rules agreed for a project (BREX, Business Rules Exchange).
Components
Section titled “Components”s1000d-brex-mcpLists the BREX (Business Rules Exchange) you were given by a customer or project as sentences that say what is required of each element. Checks data modules against each layer of the BREX chain (project → organisation → S1000D default BREX) and returns every violation with its location, value, rule ID and severity level.
s1000d-verify-mcpPerforms validation against the official XSD, the BREX check and broken reference detection together, and returns them as a single verification status. Use it for checks before delivery and as preparation before passing data to the reader.
s1000d-reader-mcpPasses data modules to the LLM as a structure of headings, steps, warnings and illustrations. Which product the content applies to (applicability) is evaluated by the server, and only the result is passed on. The LLM sees neither XML nor applicability expressions.
s1000d-core (library)A library shared by the three MCP servers for splitting DMCs and ICNs, reading the identification and status section, BREX checks, XSD validation, reference resolution and applicability evaluation. Published on npm.
Getting startedFrom obtaining the S1000D distribution, setting the environment variable and registering with an MCP client to the first operation.
Use casesRead the BREX you were given and check against it, validate and read existing data modules, and output S1000D from a manual in a lightweight web format. An overview of the three ways to use it.
Architecture and stagesThe structure of the hub, libraries, MCP servers, Skills and products, with the deliverables and completion criteria of stages 1–4. The place of the future writer, authoring tool and viewer is also described here.
Specification files and trademarksThe S1000D specification, XML schemas, default BREX and official samples are not included, because their terms of use do not grant redistribution. Obtain them from s1000d.org yourself and point an environment variable at their location.