wiki-js-mcp
Provides tools for interacting with Wiki.js via its GraphQL API, enabling AI agents to create, read, update, search, list, and move wiki pages, including surgical updates to named sections using HTML comment markers.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@wiki-js-mcp search for pages about API documentation"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
wiki-js-mcp
An MCP server for Wiki.js — lets AI agents create, read, update, search, list, and move wiki pages via the Wiki.js GraphQL API.
Tools
Tool | Description |
| Read a page's content and metadata by path |
| Create a new page with markdown content |
| Update content, metadata, or patch a named section |
| Full-text search — returns title, path, description, tags |
| List pages with an optional path-prefix filter |
| Rename or restructure a page path |
All tools return {"success": bool, "error": str | null, ...} and never raise — the calling agent decides how to handle failures.
Section patching
wiki_update_page supports surgical updates to named sections without touching the rest of the page. Fence any block in your wiki content with HTML comments:
<!-- OSIA:AUTO:watchlist -->
Content managed by the AI agent goes here.
<!-- /OSIA:AUTO:watchlist -->Then call:
wiki_update_page(
path="desks/geopolitical-and-security",
section="watchlist",
section_content="- Benjamin Netanyahu (🔴 Critical)\n- ...",
)The markers and surrounding content are left untouched.
Related MCP server: WikiJS MCP Server
Requirements
Python 3.11+
uv (recommended) or pip
A running Wiki.js 2.x instance with a valid API key
Installation
git clone https://github.com/osianet/wiki-js-mcp.git
cd wiki-js-mcp
uv syncCopy .env.example to .env and fill in your values:
cp .env.example .envWIKIJS_URL=http://localhost:3000/graphql
WIKIJS_API_KEY=your-api-key-hereGenerate an API key at https://your-wiki/a/api-keys in the Wiki.js admin panel.
Usage
Standalone (stdio)
uv run wiki-mcpWith Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"wiki-js": {
"command": "uv",
"args": ["run", "--directory", "/path/to/wiki-js-mcp", "wiki-mcp"],
"env": {
"WIKIJS_URL": "http://localhost:3000/graphql",
"WIKIJS_API_KEY": "your-api-key-here"
}
}
}
}With Claude Code
Add to your project's .claude/settings.json or ~/.claude/settings.json:
{
"mcpServers": {
"wiki-js": {
"command": "uv",
"args": ["run", "--directory", "/path/to/wiki-js-mcp", "wiki-mcp"]
}
}
}Development
uv sync --extra dev
# Lint
uv run ruff check wiki_mcp.py
# Format
uv run ruff format wiki_mcp.py
# Type check
uv run pyright wiki_mcp.py
# Tests
uv run pytestLicense
MIT — see LICENSE.
Available Tools
6 toolswiki_create_pageB
Create a new wiki page at the given path with markdown content. Returns the new page id and path on success.
Inputs: path (required), title (required), content (required), description, +1 more.
wiki_get_pageA
Read a wiki page by its path (e.g. 'desks/geopolitical-and-security').
Returns id, title, description, tags, content, created_at, updated_at.
Inputs: path (required).
wiki_list_pagesA
List wiki pages, optionally filtered to those whose path starts with path_prefix.
Returns a list of pages with id, path, title, description, tags, updated_at.
Pass path_prefix='' to list all pages.
Inputs: path_prefix.
wiki_move_pageA
Move/rename a wiki page to a new path.
The page is looked up by its current path; new_path is the destination.
Returns old_path and new_path on success.
Inputs: path (required), new_path (required).
wiki_search_pagesC
Full-text search across all wiki pages.
Returns a list of results with id, title, path, description, and total_hits.
Inputs: query_str (required).
wiki_update_pageA
Update an existing wiki page by path.
Modes:
- Full replace: pass `content` to overwrite the entire page body.
- Section patch: pass `section` + `section_content` to update only the
content between <!-- OSIA:AUTO:section --> ... <!-- /OSIA:AUTO:section -->
markers, leaving the rest of the page untouched.
- Metadata only: pass `title`, `description`, or `tags` without `content`
or `section` to update metadata without touching the body.
Returns id, path, updated_at on success.
Inputs: path (required), content, title, description, +3 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 6 tools
Each tool has a clearly distinct purpose with no overlap: create, get, list, move, search, and update. The descriptions reinforce distinct operations (e.g., wiki_move_page for moving/renaming vs. wiki_update_page for content/metadata updates), making misselection unlikely.
All tools follow a consistent 'wiki_verb_noun' pattern (e.g., wiki_create_page, wiki_get_page). The naming is uniform with snake_case throughout, making it predictable and easy to understand at a glance.
With 6 tools, the server is well-scoped for wiki management, covering core CRUD operations (create, get, update), listing, moving, and searching. Each tool earns its place without being overly sparse or bloated.
The toolset provides complete lifecycle coverage for wiki pages: create, read (get/list/search), update (with multiple modes), and move (effectively a rename/delete combination). There are no obvious gaps, as all essential operations for managing wiki content are included.
Maintenance
Related MCP Connectors
Shared project wiki for AI agents: read and write pages, next actions, and activity logs over MCP.
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
Read and write your team's shared, AI-readable wiki from any MCP client.
MCP server for agentverse documentation, generated by doc2mcp.
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that enables AI agents to interact with Wiki.js as a knowledge base through a comprehensive set of 29 tools for content retrieval and management. It supports full-text search, page versioning, and asset browsing with optional write operations secured by safety gates.2966 npm8MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables full management of WikiJS instances, supporting operations like page creation, searching, and updating. It also provides tools for knowledge graph exploration, content summarization, and retrieval of wiki statistics.19 npmMIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides a unified interface to manage Wiki.js pages, users, and groups via GraphQL API, enabling AI agents to create, read, update, and delete content and perform administrative tasks.30 npm14MIT
- AlicenseNot gradedqualityDmaintenanceMCP server for Wiki.js integration, enabling AI assistants to create, read, update, delete, search, and move wiki pages via natural language.1MIT