Wikijs Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Wikijs Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A comprehensive Model Context Protocol (MCP) server for Wiki.js integration with hierarchical documentation support and multi-level context management. Now available on npm for easy installation and use with Claude Code.
# Install globally for CLI usage
npm install -g @redairforce/wikijs-mcp
# Or install locally in your project
npm install @redairforce/wikijs-mcp# Clone the repository
git clone https://github.com/redairforce/wikijs-mcp.git
cd wikijs-mcp
# Install dependencies
npm install
# Build the package
npm run buildCreate a .env file in your project directory:
# Copy the example configuration
cp .env.example .env
# Edit with your Wiki.js credentials
WIKIJS_API_URL=https://your-wiki.example.com
WIKIJS_TOKEN=your_jwt_token_here# Test your Wiki.js connection
wikijs-mcp test-connection
# List existing pages
wikijs-mcp list-pages
# Start the MCP server
wikijs-mcp serverAdd to your Claude Code MCP configuration:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json Linux: ~/.config/claude/claude_desktop_config.json
{
"mcpServers": {
"wikijs": {
"command": "wikijs-mcp",
"args": ["server"]
}
}
}The package also provides a CLI for direct Wiki.js management:
wikijs-mcp test-connectionwikijs-mcp create-page "My Page Title" "# Content here" "/docs/my-page"wikijs-mcp list-pages --limit 20wikijs-mcp search "API documentation"wikijs-mcp server
# or simply
wikijs-mcp// Claude can execute this via MCP tools
await wikijs_create_nested_page({
title: "Button Component",
content: "# Button Component\n\nReusable button with multiple variants...",
parentPath: "/frontend/components",
description: "React button component documentation"
});await wikijs_create_repo_structure({
repoName: "My Frontend App",
description: "Modern React application with TypeScript",
sections: ["Overview", "Components", "API", "Testing", "Deployment"]
});await wikijs_sync_file_docs({
filePath: "./src/components/Button.tsx",
wikiPath: "/frontend/components/button",
extractContent: true,
includeMetadata: true
});| Variable | Description | Default | Required |
|---|---|---|---|
WIKIJS_API_URL | Wiki.js instance URL | - | ✅ |
WIKIJS_TOKEN | JWT API token | - | ✅* |
WIKIJS_USERNAME | Username (alternative auth) | - | ✅* |
WIKIJS_PASSWORD | Password (alternative auth) | - | ✅* |
LOG_LEVEL | Logging level | INFO | ❌ |
DEFAULT_SPACE_NAME | Default documentation space | Documentation | ❌ |
REPOSITORY_ROOT | Repository root path | ./ | ❌ |
*Either WIKIJS_TOKEN or both WIKIJS_USERNAME and WIKIJS_PASSWORD required.
git clone <repository>
cd custom-wikijs-mcp
npm installnpm run buildnpm run devnpm testThe WikiJS MCP server features a sophisticated multi-level context system that prevents token explosion while maintaining rich cross-repository intelligence. This enables seamless documentation workflows across multiple repositories and system architecture levels.
| Level | Focus | Token Budget | Use Case | Wiki Spaces |
|---|---|---|---|---|
| 📂 Repository | Single repo documentation | ~200 tokens | "Document frontend applications" | frontend-docs |
| 🏢 Workspace | Multi-repo coordination | ~800 tokens | "Coordinate frontend & backend repos" | frontend-docs, backend-docs |
| 🏗️ Architectural | System-wide relationships | ~1200 tokens | "Document how services integrate with database layer" | system-architecture |
#### Phase 1: Individual Repository Documentation
# Navigate to your first repository
cd /path/to/your/repo
# Claude automatically detects repository context
# - Creates .wikijs-state.json for persistent tracking
# - Maps to wiki space: your-project-docs
# - Tracks individual files → wiki pages with hash tracking
# - Documents components, configurations, and setup guidesExample Interaction:
You: "Document all the components in this repository"
Claude: [Repository Level - 200 tokens]
- Auto-detects current directory as git repository
- Creates comprehensive component catalog
- Maps files to wiki pages with change tracking
- Documents all modules, services, and dependencies#### Phase 2: Multi-Repository Coordination
# Navigate to workspace root to coordinate repositories
cd /workspace
# Initialize workspace context (ties repositories together)
# - Creates .wikijs-workspace.json for multi-repo state
# - Detects all repositories in workspace (frontend/, backend/, etc.)
# - Enables cross-repository page linking and references
# - Coordinates documentation structure across reposExample Interaction:
You: "Now tie the frontend and backend repositories together in the wiki"
Claude: [Workspace Level - 800 tokens]
- Loads context from both frontend and backend repositories
- Creates cross-references between wiki spaces
- Documents how repositories relate to each other
- Builds unified navigation across different spaces#### Phase 3: Architectural Documentation
# Still at workspace root - switch to architectural focus
# - Documents system-wide architecture and relationships
# - Creates cross-repository dependency mapping
# - Maintains architectural decision records (ADRs)
# - Shows network flows and component interactionsExample Interaction:
You: "Document the system architecture showing how frontend and backend integrate"
Claude: [Architectural Level - 1200 tokens]
- Creates architectural relationship: "Frontend API calls depend on backend authentication service"
- Documents network topology and data flows
- Shows dependencies between different repositories
- Creates system-wide architectural diagrams and explanations#### Automatic Detection (Recommended) Claude automatically selects appropriate context based on:
#### Manual Control (When Needed)
# Explicit context switching
"Switch to workspace level to coordinate between repositories"
"Move to architectural context to document system design"
"Focus on repository level for just this application"#### Initial Documentation → Review → Corrections
# After Claude creates initial documentation
You: "I reviewed the API documentation at https://docs.example.com/en/api
and need corrections. The authentication endpoint actually uses OAuth2."
Claude: [Repository Level - loads existing context]
- Accesses current .wikijs-state.json context (~200 tokens)
- Loads existing wiki page content for reference
- Makes targeted updates based on your corrections
- Updates wiki.js page with accurate information
- Maintains file change tracking for future updates#### Loading Documentation for Interrogation
# Later session - return to work on repository
cd /path/to/your/repo
You: "Load the API documentation so I can ask about the authentication flow"
Claude: [Auto-loads repository context]
- Reads .wikijs-state.json (persistent repository state)
- Loads existing wiki page mappings and content
- Tracks recent file changes since last sync
- Ready to answer questions about documented configuration#### Cross-Repository Questions
# Working at workspace level
cd /workspace
You: "How does the frontend application connect to backend services?"
Claude: [Workspace Level - cross-repository intelligence]
- Loads frontend-docs documentation context
- Loads backend-docs documentation context
- References architectural relationship mappings
- Provides comprehensive answer spanning both repositories#### Change Detection & Incremental Updates
# When returning to a repository later
Claude: [Automatically detects]
"I notice 3 files have changed since last documentation sync"
"The wiki page was last updated 5 days ago - should we review for updates?"
"New package.json dependencies detected - documentation may need updates"#### Documentation-Driven Development
You: "I'm updating the API service - what documentation needs updates?"
Claude: [Repository context with file mappings]
"Based on tracked file mappings, updating the API service will require updates to:
- /api/endpoints page (version numbers)
- API configuration guide (if parameters change)
- Architecture page (if networking changes)
Would you like me to prepare these updates?"Wiki.js Organization:
├── frontend-docs/ (Repository Level)
│ ├── components/ ← Your component documentation
│ ├── deployment-guide/
│ ├── configuration/
│ └── troubleshooting/
│
├── backend-docs/ (Repository Level)
│ ├── api-services/
│ ├── authentication/
│ ├── database-schemas/
│ └── middleware/
│
└── system-architecture/ (Architectural Level)
├── system-overview/
├── frontend-backend-integration/
├── network-topology/
├── dependency-mapping/
└── architectural-decisions/This creates a living documentation system where your wiki becomes an intelligent, queryable knowledge base that grows and evolves with your codebase.
The package automatically categorizes files for documentation:
Built on the verified GraphQL mutations that work with Wiki.js:
MIT License - see LICENSE file for details.
Ready to enhance your documentation workflow? 🚀 Install @redairforce/wikijs-mcp and let Claude manage your Wiki.js content seamlessly!
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.