Releases: ni-c/wikijs-mcp
Release list
v0.1.2
Fixed
-
The container and documentation badges rendered as broken images. Both were
mis-escaped: shields.io reads a literal hyphen as a field separator, so
ghcr.io-ni--c%2Fwikijs-mcp-bluesplits in the wrong place and the endpoint
answers 404. Theni--chalf was escaped correctly in both, which is what made
it easy to miss. This release is what carries the fix to the package page —
a README only reaches npmjs.com with a publish. -
The issue forms shipped with their template placeholders unresolved. All
three contact links pointed atgithub.com/ni-c/{{REPO}}/…, so both "Question
or discussion" and "Report a vulnerability privately" led to a 404 — the second
being the one that matters, since the alternative a reporter reaches for is a
public issue. The forms also asked for a "{{REPO}} version" and a
"{{TARGET_SYSTEM}} API endpoint"; they now name wikijs-mcp, Wiki.js and its
GraphQL schema.
v0.1.1
Fixed
list_pagesandgrep_pagesreturned far fewer pages than asked for, with
nothing saying so. Wiki.js'pages.listjoins the tag table and applies
limitto the joined rows, not to the pages — a page with three tags
eats three of them — so asking for 50 on a 62-page wiki returned between 13
and 23 depending on the sort order. A short answer was indistinguishable
from a small wiki. Both tools now bound the list themselves, andlist_pages
reports how many pages matched as well as how many are shown.- The demo recording is now actually shown in the README and on the
documentation home page. It was recorded and checked in, and nothing
referenced it.
v0.1.0
Added
- Initial release: MCP server for Wiki.js 2.x, with 62 tools covering pages,
history, tags, assets, comments, users, groups, system settings and
maintenance. grep_pages, which searches the actual text of pages. Wiki.js' default
search engine ("Database - Basic") indexes only titles and descriptions, so
search_pagescannot find anything written inside a page — it now reports
which engine is active and says so.- A concurrent-edit guard on
update_page. It compares against the moment the
caller read the page, refuses to overwrite somebody else's save, and can be
overridden deliberately withforce. - Surgical edits:
update_pagetakeseditswith a find-and-replace contract
that requires each anchor to match exactly once, rather than silently editing
the first occurrence. get_pagemodes for metadata, an outline, a named section, and a character
window, so a large page can be read without filling the context.diff_page_versions, a unified diff between two stored versions or between a
version and the live page.upload_asset, which Wiki.js 2.x has no GraphQL mutation for.WIKIJS_ALLOWED_PATHS, confining the writing tools to page path prefixes,
matched by path segment.WIKIJS_READ_ONLY,WIKIJS_ALLOW_TOOLS/WIKIJS_DENY_TOOLSwith an
essentialpreset, and confirmation tokens on every destructive or
administrative operation.