wiki-agent
Targets MediaWiki wikis, using per-wiki profiles (the first being the Final Fantasy Wiki on Fandom), to plan and review mass renames of pages, templates, files and categories, gallery cleanup, template reformatting, Lua module review, and patrol of new uploads and edits — all through read-only inspection, manifest generation with per-page diffs, and approved execution with undo.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
wiki-agent
An LLM-driven maintenance bot for MediaWiki wikis. You describe a job to Claude, such as "rename every file in this category to our naming convention and fix every page that uses them". Claude proposes the changes, and wiki-agent turns them into a manifest: a reviewable list of renames and per-page diffs. Nothing changes on the wiki until you approve the manifest, and every executed manifest can be undone.
wiki-agent runs as an MCP server, so it works from Claude Code or Claude Desktop. It works with any MediaWiki wiki through a per-wiki profile. The first profile is the Final Fantasy Wiki.
Status: early development, phase 0 (read-only). It doesn't edit wikis yet.
What it will do
Mass renames: pages, templates, files, and categories, with every reference fixed
Renames by convention: walk a category, propose names that follow the wiki's naming rules, and update every page that uses them
Gallery cleanup: replace /Gallery subpages with image categories: delete images only the galleries show, tag the rest, delete the galleries and remove every link to them
Template reformatting across pages
Lua module review: find dead or duplicated code in Scribunto modules and suggest fixes
Patrol: review new uploads and edits, and report questionable ones (e.g. to Discord)
Related MCP server: mcp-wikijs
How it works
plan → manifest → approve → execute → undoPlan. Claude inspects the wiki through read-only tools and proposes changes.
Manifest. wiki-agent checks each proposal against the profile's rules (naming grammar, allowed release names, collisions). It then finds every usage and writes the exact diffs to
manifests/<id>.json.Approve. You review the manifest and approve entries one by one.
Execute. The approved edits are made with throttling and
maxlag. Any page edited since planning is skipped, and every action is logged.Undo. The log is replayed in reverse.
See docs/design.md for the full design.
Requirements
Node.js 26 LTS (see
.node-version)npm
Setup
npm installDevelopment
npm test # unit tests (offline, against test/fixtures)
npm run typecheck # TypeScript 7 type check
npm run mcp -- finalfantasy # the MCP server over stdio (read-only), for one profileUsing it from Claude Code
.mcp.json registers the server (wiki-agent, for the finalfantasy profile) for Claude Code sessions started in this folder. Claude Code asks once before starting it. The server sends the LLM a workflow and the profile's guide.md as its instructions. Then ask for a plan, e.g. "plan renames for Category:Final Fantasy VII character images" or "plan deleting the galleries in Category:Character galleries from Final Fantasy VII". Manifests land in manifests/; open the .md one to review.
It's started with node directly, not npm run, because npm's banner on stdout would break the protocol.
There's no build step: Node runs the TypeScript sources directly. If you use VS Code, the TypeScript 7 extension (TypeScriptTeam.native-preview) makes the editor match npm run typecheck.
Roadmap
Phase | Scope | Status |
0 | Read-only: vocabulary, name validation, usage finding, manifests, MCP server, dry runs (one category's renames, one gallery's cleanup) | In progress |
1 | Execute and undo manifests | Planned |
2 | Batch renames by convention across larger categories | Planned |
3 | Template reformatting | Planned |
4 | Lua module review and refactoring | Planned |
5 | Upload patrol | Planned |
6 | Edit patrol with Discord reports | Planned |
License
Apache-2.0. See LICENSE. Dependencies keep their own licenses (mwn is LGPL-3.0).
This server cannot be deployed
Maintenance
Related MCP Connectors
Read, edit, publish, and preview your pepita websites from Claude.
Audits AI-crawler access, structured data and llms.txt on a site, and drafts the fixes.
Compare Figma designs against live websites and get visual + content QA reports, from inside Claude.
Your audit methodology inside Claude: findings, risks, controls and workpapers in your team format.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables LLMs to interact with MediaWiki installations as a bot user, supporting page editing, searching, moving, deleting, comparing revisions, and retrieving site information through the MediaWiki API.3MIT
- AlicenseBqualityDmaintenanceConnects Claude to a Wiki.js instance, enabling page search, retrieval, listing, and creation.45 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables LLM clients to read, search, edit, and manage content on any MediaWiki wiki, including page operations, file uploads, OAuth-secured access, and extension-backed queries such as Semantic MediaWiki, Wikibase, Cargo, and NeoWiki.8 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables LLM clients to search, read, compare, and edit pages on any MediaWiki wiki, including multi-wiki setups with OAuth-authenticated writes. It also queries extension data such as Wikibase entities, Semantic MediaWiki and Cargo results, and Bucket Lua queries.8 npmMIT