Skip to main content
Glama
diataxis-mcp-server

diataxis-mcp-server

by willermo

diataxis-mcp-server

MVP TypeScript MCP server that helps coding and documentation agents apply the Diataxis framework to documentation work.

The server is deterministic. It uses small heuristics and Zod schemas; it does not call external LLM APIs.

Status

This project is experimental MVP software. The tools are intended to help agents classify, audit, and plan documentation, but the heuristics are conservative and should be reviewed by a human maintainer before large documentation refactors.

Refactor recommendations are advisory. The server suggests extraction targets, navigation groups, and possible file paths, but it does not write, move, rename, crawl, or persist files.

Related MCP server: repo-ready

What it provides

Tools:

  • classify_doc_request: classify a documentation request or draft into tutorial, how-to, reference, or explanation.

  • audit_doc_page: audit one Markdown page for mode fit, mixed-mode signals, extraction targets, and next actions.

  • audit_doc_tree: audit multiple pages and summarize the documentation architecture, missing modes, dominant modes, and suggested navigation. Accepts scope as full-docs, section, or sample so coverage warnings can be interpreted correctly.

  • suggest_doc_refactor: turn page audits into an advisory, path-aware refactoring sequence.

  • plan_doc_set: propose an initial Diataxis-aligned documentation set from a project summary.

Resources:

  • diataxis://checklists/tutorial

  • diataxis://checklists/how-to

  • diataxis://checklists/reference

  • diataxis://checklists/explanation

  • diataxis://rubrics/classification

  • diataxis://workflow/audit-existing-docs

  • diataxis://workflow/create-docs-from-scratch

Development

npm install
npm test
npm run build

Run the MCP server over stdio:

npm run build
node dist/index.js

Example MCP client command configuration:

{
  "mcpServers": {
    "diataxis": {
      "command": "node",
      "args": ["<absolute-path-to-checkout>/dist/index.js"]
    }
  }
}

IDE configuration examples are included in examples/ and in the npm package for client setup. Run npm run build before using the local dist/index.js configuration.

After this package is published to npm, clients that support npx can use:

{
  "mcpServers": {
    "diataxis": {
      "command": "npx",
      "args": ["diataxis-mcp-server"]
    }
  }
}

Example tool call

Payload for classify_doc_request:

{
  "request": "Write a guide that shows how to configure SSO for production.",
  "title": "Configure SSO",
  "audience": "Operators who already know the product"
}

Shortened example output:

{
  "mode": "how-to",
  "confidence": 0.58,
  "warnings": [],
  "rationale": "Detected how-to because the strongest signals match accomplishing a practical task.",
  "suggestedStructure": [
    "Task goal",
    "Prerequisites",
    "Procedure",
    "Verification",
    "Related reference"
  ]
}

Project layout

  • src/core: deterministic Diataxis classification, audit, refactor, and planning logic.

  • src/mcp: MCP server, tools, resources, and prompts.

  • src/content: short operational checklists and workflow text.

  • test: focused unit tests and Markdown fixtures.

  • references/diataxis: local source-of-truth notes for Diataxis-derived behavior.

Licensing

This repository uses a split license model.

  • Code, build configuration, package metadata, and tests are licensed under Apache-2.0. See LICENSE for the full license text and LICENSE-CODE.md for the code-license scope note.

  • Documentation, examples, prompts, checklists, rubrics, workflow text, and Diataxis-derived operational guidance are licensed under CC-BY-SA 4.0. See LICENSE-CONTENT.md.

  • The split license model is summarized in LICENSING.md.

  • Diataxis attribution notices are recorded in NOTICE.md.

Attribution

This project contains operational guidance derived from Diataxis.

Diataxis was created by Daniele Procida and is published at https://diataxis.fr/. The upstream repository is https://github.com/evildmp/diataxis-documentation-framework, and the upstream content license is CC-BY-SA 4.0.

This project is not affiliated with or endorsed by the Diataxis project.

Available Tools

5 tools
audit_doc_pageAudit documentation pageC

Audit a Markdown page for Diataxis mode, mixed-mode signals, and refactoring actions.

Inputs: content (required), path, title, declaredMode. Returns: page, findings, nextActions, declaredMode, +3 more

audit_doc_treeAudit documentation treeB

Audit multiple documentation pages and summarize mode distribution, confusion, and coverage. Use scope=full-docs|section|sample to control how coverage warnings are interpreted.

Inputs: pages (required), scope. Returns: pages, scope, summary, nextActions, +4 more

classify_doc_requestClassify documentation requestC

Classify a documentation request or page draft into a Diataxis mode.

Inputs: request (required), title, audience, declaredMode, +1 more. Returns: mode, scores, evidence, warnings, +4 more

plan_doc_setPlan documentation setC

Suggest an initial Diataxis-aligned documentation set from a project summary.

Inputs: projectName (required), projectSummary (required), audience, userGoals, +2 more. Returns: nextActions, projectName, gapsToResolve, recommendedPages

suggest_doc_refactorSuggest documentation refactorC

Create an incremental refactoring sequence from documentation page audits.

Inputs: pages (required), objective. Returns: actions, sequence, objective

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.3/5.0

    Scored across 5 tools

    Disambiguation5/5

    Each tool has a distinct purpose: auditing single pages, auditing multiple pages, classifying requests, planning sets, and suggesting refactorings. No two tools overlap in functionality.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern (audit_doc_page, audit_doc_tree, classify_doc_request, plan_doc_set, suggest_doc_refactor), making the naming predictable and clear.

    Tool Count5/5

    Five tools is an appropriate number for a focused documentation assistant covering audit, classification, planning, and refactoring. It is neither too few nor too many.

    Completeness5/5

    The tool set covers the core workflows for Diataxis documentation: auditing (single and tree), classification, initial planning, and refactoring. No obvious gaps are present for the intended domain.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      Provides documentation generation and analysis tools for AI agents, including JSDoc generation, README analysis, changelog generation, API documentation, and code comment analysis.
      50 npm
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Exposes tools that scan a repository's manifests, CI workflows and layout to generate truthful AGENTS.md/CLAUDE.md agent instructions, then audit those docs for drift such as dead commands, undocumented scripts and CI mismatches. Enables agents to keep their own onboarding documentation accurate and CI-verifiable instead of hand-written and rotting.
      1
      MIT
    • F
      license
      Not graded
      quality
      A
      maintenance
      Enables AI assistants to discover and invoke tools for saving and retrieving code snippets, generating style guides and wiki documentation, and orchestrating multi-agent documentation workflows with semantic search.
      -
    • F
      license
      Not graded
      quality
      A
      maintenance
      Enables AI assistants to discover and invoke tools for saving and retrieving code snippets, generating language-specific style guides and deep wiki documentation, and orchestrating multi-agent documentation workflows backed by semantic vector search.
      -