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 "Install 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-mcpsearch 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.
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.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/osianet/wiki-js-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server