Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

MediaWiki MCP Server

by ProfessionalWikiversion 0.21.0i★ –iRuns on your computer
Registry nameio.github.ProfessionalWiki/mediawiki-mcp-server

Install

Overview

Description from the maker (original English)

MCP server enabling AI clients to interact with any MediaWiki wiki through standard tools

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Docs, sheets & office work

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: CONFIG, MCP_ALLOW_STATIC_FALLBACK, MCP_CONTENT_MAX_BYTES, MCP_FILE_DATA_MAX_BYTES, MCP_LOG_LEVEL, MCP_MAX_REQUEST_BODY, MCP_METRICS, MCP_OAUTH_ALLOWED_REDIRECTS, MCP_OAUTH_CIMD_ALLOWED_HOSTS, MCP_OAUTH_CREDENTIALS_FILE, MCP_OAUTH_NO_BROWSER, MCP_OAUTH_PROXY_STORE_FILE, MCP_PUBLIC_URL, MCP_SHUTDOWN_GRACE_MS, MCP_TRANSPORT, MCP_UPLOAD_MAX_BYTES, MCP_USER_AGENT, PORT

You need

  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Download the maker’s .mcpb file

The link goes to the maker’s own file; we do not host or repackage it. Open the file and Claude Desktop installs it.

Run this in your terminal

claude mcp add mediawiki --env CONFIG=your-value --env MCP_ALLOW_STATIC_FALLBACK=your-value --env MCP_CONTENT_MAX_BYTES=your-value --env MCP_FILE_DATA_MAX_BYTES=your-value --env MCP_LOG_LEVEL=your-value --env MCP_MAX_REQUEST_BODY=your-value --env MCP_METRICS=your-value --env MCP_OAUTH_ALLOWED_REDIRECTS=your-value --env MCP_OAUTH_CIMD_ALLOWED_HOSTS=your-value --env MCP_OAUTH_CREDENTIALS_FILE=your-value --env MCP_OAUTH_NO_BROWSER=your-value --env MCP_OAUTH_PROXY_STORE_FILE=your-value --env MCP_PUBLIC_URL=your-value --env MCP_SHUTDOWN_GRACE_MS=your-value --env MCP_TRANSPORT=your-value --env MCP_UPLOAD_MAX_BYTES=your-value --env MCP_USER_AGENT=your-value --env PORT=your-value -- npx -y @professional-wiki/mediawiki-mcp-server

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "mediawiki": {
      "command": "npx",
      "args": [
        "-y",
        "@professional-wiki/mediawiki-mcp-server"
      ],
      "env": {
        "CONFIG": "your-value",
        "MCP_ALLOW_STATIC_FALLBACK": "your-value",
        "MCP_CONTENT_MAX_BYTES": "your-value",
        "MCP_FILE_DATA_MAX_BYTES": "your-value",
        "MCP_LOG_LEVEL": "your-value",
        "MCP_MAX_REQUEST_BODY": "your-value",
        "MCP_METRICS": "your-value",
        "MCP_OAUTH_ALLOWED_REDIRECTS": "your-value",
        "MCP_OAUTH_CIMD_ALLOWED_HOSTS": "your-value",
        "MCP_OAUTH_CREDENTIALS_FILE": "your-value",
        "MCP_OAUTH_NO_BROWSER": "your-value",
        "MCP_OAUTH_PROXY_STORE_FILE": "your-value",
        "MCP_PUBLIC_URL": "your-value",
        "MCP_SHUTDOWN_GRACE_MS": "your-value",
        "MCP_TRANSPORT": "your-value",
        "MCP_UPLOAD_MAX_BYTES": "your-value",
        "MCP_USER_AGENT": "your-value",
        "PORT": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "mediawiki": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@professional-wiki/mediawiki-mcp-server"
      ],
      "env": {
        "CONFIG": "your-value",
        "MCP_ALLOW_STATIC_FALLBACK": "your-value",
        "MCP_CONTENT_MAX_BYTES": "your-value",
        "MCP_FILE_DATA_MAX_BYTES": "your-value",
        "MCP_LOG_LEVEL": "your-value",
        "MCP_MAX_REQUEST_BODY": "your-value",
        "MCP_METRICS": "your-value",
        "MCP_OAUTH_ALLOWED_REDIRECTS": "your-value",
        "MCP_OAUTH_CIMD_ALLOWED_HOSTS": "your-value",
        "MCP_OAUTH_CREDENTIALS_FILE": "your-value",
        "MCP_OAUTH_NO_BROWSER": "your-value",
        "MCP_OAUTH_PROXY_STORE_FILE": "your-value",
        "MCP_PUBLIC_URL": "your-value",
        "MCP_SHUTDOWN_GRACE_MS": "your-value",
        "MCP_TRANSPORT": "your-value",
        "MCP_UPLOAD_MAX_BYTES": "your-value",
        "MCP_USER_AGENT": "your-value",
        "PORT": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • CONFIG env
    Path to your configuration file
  • MCP_ALLOW_STATIC_FALLBACK env
    Set to 'true' to allow HTTP startup when config.json has static credentials. Otherwise the server refuses to start, preventing silent shared-identity fallback for unauthenticated requests.
  • MCP_CONTENT_MAX_BYTES env
    Byte cap for the content bodies and result blocks tools return (wikitext, rendered HTML, diffs, statement and row listings). An oversized response is truncated with a trailing marker describing what…
  • MCP_FILE_DATA_MAX_BYTES env
    Hard cap on the base64-encoded size of a get-file-data response. A transport/safety backstop; callers tune actual size with the tool's width parameter. Over-cap responses error rather than truncate.
  • MCP_LOG_LEVEL env
    Minimum severity for logger output (stderr telemetry and sendLoggingMessage broadcast). Invalid values fail loudly on first log call.
  • MCP_MAX_REQUEST_BODY env
    Maximum HTTP request body size on the StreamableHTTP transport. Accepts size strings like 1mb or 512kb.
  • MCP_METRICS env
    Set to 'true' to expose Prometheus metrics at GET /metrics on the HTTP transport. Has no effect on the stdio transport.
  • MCP_OAUTH_ALLOWED_REDIRECTS env
    Additional allowed redirect URIs for hosted-proxy client registration: comma-separated exact URIs (which must include a host) and https prefix patterns ending in /*. Loopback, claude.ai, and verified…
  • MCP_OAUTH_CIMD_ALLOWED_HOSTS env
    Comma-separated additional client_id document hosts trusted for CIMD (bare host or host:port). Verified first-party hosts are always trusted.
  • MCP_OAUTH_CREDENTIALS_FILE env
    Override the default OAuth credentials store path. Default: ~/.config/mediawiki-mcp/credentials.json on Linux/macOS, %APPDATA%\mediawiki-mcp\credentials.json on Windows.
  • MCP_OAUTH_NO_BROWSER env
    Set to '1' to skip launching a browser during the OAuth dance and log the auth URL to stderr instead. Useful in headless environments and CI.
  • MCP_OAUTH_PROXY_STORE_FILE env
    Path to the hosted OAuth proxy's encrypted state file, which lets sign-ins survive restarts. Default: proxy-store.enc under the mediawiki-mcp config dir; /app/data/proxy-store.enc in the Docker image.
  • MCP_PUBLIC_URL env
    Override the request-derived public URL used in the protected-resource discovery doc and WWW-Authenticate header. Set this when running behind a proxy that rewrites the request Host.
  • MCP_SHUTDOWN_GRACE_MS env
    Maximum milliseconds to wait for in-flight /mcp calls to drain on SIGTERM/SIGINT before exiting. Capped at 600000.
  • MCP_TRANSPORT env
    Type of MCP server transport
  • MCP_UPLOAD_MAX_BYTES env
    Memory cap on the server-side fetch used by upload-file-from-url and update-file-from-url. Files larger than this are routed to the wiki's own copy-upload instead of being buffered by the server. Gua…
  • MCP_USER_AGENT env
    Replaces the User-Agent header of every outbound request, which defaults to mediawiki-mcp-server/ (https://github.com/ProfessionalWiki/MediaWiki-MCP-Server). If you set it, give a name and an email o…
  • PORT env
    Port used for StreamableHTTP transport

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account ProfessionalWiki, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Docs, sheets & office worki

  • More stars than 0% of the other 3575 servers in this category
  • Published to the registry more recently than 90% of the other 3575 servers in this category
  • Basic checks equal to or better than 100% of the other 3575 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is MediaWiki MCP Server safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.21.0) reached the registry 3 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need MCPB, Node.js on your computer.

What can I use instead?

In the same category: Agent-Native Calendar, Excel MCP Server, MCP Server for Excel

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Agent-Native Calendar

Agent-Native Google Calendar - manage events, sync, and public booking

by BuilderIOGrowing★ 7.6KUpdated 2 months ago

Runs in the cloud

Excel MCP Server

Lets AI create and edit Excel files itself, including formulas, charts and PivotTables, without Excel installed.

by haris-musaWidely used↓ 49.6K/wk★ 4.3KUpdated 7 days ago

Runs on your computer

MCP Server for Excel

Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.

by sbroenneGrowing↓ 4.3K/wk★ 847Updated 5 days ago

Runs on your computer

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

MediaWiki MCP Server

An MCP (Model Context Protocol) server that enables Large Language Model (LLM) clients to interact with any MediaWiki wiki.

Features

Tools

Every tool that operates on a wiki accepts an optional wiki argument naming the wiki to act on (the wiki-management and OAuth tools do not) — pass a wiki key (e.g. en.wikipedia.org) or the full mcp://wikis/{wikiKey} URI. Omit it to use the configured default wiki (see Configuration). Each tool response reports the wiki the call ran against. Each successful response carries its payload as prose in content and as JSON in structuredContent; see response channels.

Page reads
NameDescription
compare-pagesDiff two versions of a wiki page by revision, title, or supplied wikitext.
get-category-membersList members of a category (up to 500 per call, paginated via continueFrom).
get-fileFetch a file page.
get-file-dataFetch a file's image bytes inline (base64) for visual analysis — for clients that can't reach the wiki host. Returns a scaled rendition (set width); non-renderable types (audio, video, binaries) error. For metadata or a download URL, use get-file.
get-links-hereList pages that reference a wiki page — pages that link to it, embed it as a template, or display it as a file (select via type), including pages that reach it through a redirect. Up to 500 per call, paginated via continueFrom.
get-pageFetch a wiki page.
get-page-historyList recent revisions of a wiki page.
get-pagesFetch multiple wiki pages in one call (up to 50).
get-random-pagesList a random sample of wiki pages from one namespace (main by default, redirects excluded by default, up to 500 per call).
get-recent-changesList recent change events across the wiki, filterable by timestamp, namespace, user, tag, type, and hide flags (up to 50 per call, paginated via continue).
get-revisionFetch a specific revision of a page.
get-site-infoGet a wiki's key settings: MediaWiki version, content language, title-case rules, namespaces, installed extensions, license, and (optionally) statistics.
list-wikisList every configured wiki — its key, sitename, server, whether it is read-only or the default, whether it is reachable, which extension-gated tools work on it, and, for an OAuth-configured wiki, its authorization server. Disabled when fewer than two wikis are configured.
parse-wikitextRender wikitext to HTML without saving. Returns parse warnings, wikilinks, templates, and external URLs.
search-pageSearch wiki page titles and contents (full-text). Searches the wiki's content namespaces unless given other namespace IDs.
search-page-by-prefixSearch page titles by prefix.
whoamiReport the identity the current session is authenticated as on the targeted wiki — username, whether it is anonymous, and group memberships (optionally user rights).
Page writes
NameDescriptionPermissions
create-page 🔐Create a new wiki page.Create, edit, and move pages
delete-page 🔐Delete a wiki page.Delete pages, revisions, and log entries
move-page 🔐Move (rename) a wiki page.Create, edit, and move pages
protect-page 🔐Protect or unprotect a wiki page.Protect and unprotect pages
undelete-page 🔐Undelete a wiki page.Delete pages, revisions, and log entries
update-file 🔐Upload a new revision of an existing file from local disk.Upload, replace, and move files
update-file-from-url 🔐Upload a new revision of an existing file from a URL.Upload, replace, and move files
update-page 🔐Update an existing wiki page: overwrite it, add to it, or rewrite one passage of it.Edit existing pages
upload-file 🔐Upload a file to the wiki from local disk.Upload new files
upload-file-from-url 🔐Upload a file to the wiki from a URL.Upload, replace, and move files
Wiki management
NameDescription
add-wikiAdd a wiki as an MCP resource from its URL. Disabled when allowWikiManagement is false.
remove-wikiRemove a wiki resource. Disabled when allowWikiManagement is false or fewer than two wikis are configured.
OAuth
NameDescription
oauth-logoutRemove stored OAuth tokens. Stdio only.
oauth-statusList stored OAuth tokens with scopes and expiry (no token values). Stdio only.
Extension packs

Each pack's tools register only on wikis where its extension is installed.

[NeoWiki](https://neowiki.ai/)

NameDescription
neowiki-list-schemasList schemas (entity types) and their property counts.
neowiki-get-schemaGet one schema's property definitions, relations, and select options.
neowiki-cypher-queryRun a read-only Cypher query against the knowledge graph.
neowiki-search-subjectsFind subject IDs by name, in one schema or all.
neowiki-get-subjectFetch one subject's structured data by ID.
neowiki-get-page-subjectsList the subjects attached to a wiki page.
neowiki-create-subjectCreate a subject (main or other) on a page. Requires the edit right.
neowiki-update-subjectReplace a subject's label and statements. Requires the edit right.
neowiki-delete-subjectDelete a subject by ID. Requires the edit right.
neowiki-set-main-subjectSet or clear a page's main subject. Requires the edit right.
neowiki-validate-subjectDry-run validate a proposed subject and return violations.
neowiki-mint-subject-idsMint unused subject IDs for dependent subjects written with their host.

[Semantic MediaWiki](https://www.mediawiki.org/wiki/Extension:Semantic_MediaWiki)

NameDescription
smw-list-propertiesList Semantic MediaWiki properties with copy-paste templates for smw-query.
smw-queryRun a Semantic MediaWiki #ask query.

[Bucket](https://github.com/weirdgloop/mediawiki-extensions-Bucket)

NameDescription
bucket-queryRun a Bucket Lua query.

[Cargo](https://www.mediawiki.org/wiki/Extension:Cargo)

NameDescription
cargo-list-tablesList Cargo tables defined on the wiki.
cargo-describe-tableList a Cargo table's fields with their types and list-flags.
cargo-queryRun a Cargo SQL-style query.

[Wikibase](https://www.mediawiki.org/wiki/Extension:Wikibase_Repository)

NameDescription
wikibase-search-entitiesFind items and properties by label or alias.
wikibase-get-entityRead one entity's terms and statements, with referenced IDs resolved to labels.
wikibase-queryRun a SPARQL query against the wiki's query service. Offered only for a repository whose siteinfo publishes one.
wikibase-edit-entityCreate or change an entity from Wikibase entity JSON. Requires the edit right.
wikibase-add-statementAdd one statement with an item, string, external-id or url value. Requires the edit right.
Resources

`mcp://wikis/{wikiKey}` — per-wiki resource exposing sitename, server (the wiki's public address), articlepath, scriptpath, and the private and readOnly flags.

  • Those fields are the whole of it: the resource publishes a fixed list, so credentials and server-side settings in your configuration file are never exposed in resource content.
  • After add-wiki or remove-wiki, the server sends notifications/resources/list_changed so clients refresh.

Example read result

{

"contents": [ { "uri": "mcp://wikis/en.wikipedia.org", "mimeType": "application/json", "text": "{ \"sitename\":\"Wikipedia\",\"server\":\"https://en.wikipedia.org\",\"articlepath\":\"/wiki\",\"scriptpath\":\"/w\",\"private\":false }" } ] }

</details>
Environment variables

The variables below are relevant to any setup. Variables that only apply when self-hosting the HTTP transport (ports, timeouts, Host/Origin and SSRF guards) or running the hosted OAuth proxy are in docs/deployment.md — environment variables. Config-file substitution and upload-directory variables are in docs/configuration.md.

NameDescriptionDefault
CONFIGPath to your configuration fileconfig.json
MCP_TRANSPORTType of MCP server transport (stdio or http)stdio
MCP_LOG_LEVELMinimum severity for logger output. One of debug, info, notice, warning, error, critical, alert, emergency, or silent.debug
MCP_CONTENT_MAX_BYTESByte cap for the content bodies and result blocks tools return (wikitext, rendered HTML, diffs, statement and row listings), applied once per response. Tune to the target LLM client's tool-response budget.75000
MCP_FILE_DATA_MAX_BYTESHard cap on the base64-encoded size of a get-file-data response. A transport/safety backstop; tune the actual size per call with the tool's width. Over-cap calls error rather than truncate.1000000
MCP_UPLOAD_MAX_BYTESMemory cap on the server-side fetch used by upload-file-from-url / update-file-from-url. Files larger than this are handed to the wiki's own copy-upload instead of being buffered by the server. Guards this server's memory, not the wiki's $wgMaxUploadSize.104857600
MCP_USER_AGENTReplaces the User-Agent header of every outbound request, so wiki operators can reach you. Give a name and an email or URL, e.g. ExampleBot/1.0 (bot@example.org).mediawiki-mcp-server/ (https://github.com/ProfessionalWiki/MediaWiki-MCP-Server)
MCP_OAUTH_CREDENTIALS_FILEOverride the default credentials store path. Default: ~/.config/mediawiki-mcp/credentials.json (Linux/macOS) or %APPDATA%\mediawiki-mcp\credentials.json (Windows).unset
MCP_OAUTH_NO_BROWSERSet to 1 to skip launching a browser during the OAuth flow; the auth URL is logged to stderr instead. Useful in headless environments.unset

Configuration

[!NOTE]

Config is only required when interacting with a private wiki or using authenticated tools.

Create a config.json file to configure wiki connections. Use the config.example.json as a starting point.

{

"defaultWiki": "en.wikipedia.org", "wikis": { "en.wikipedia.org": { "sitename": "Wikipedia", "server": "https://en.wikipedia.org", "articlepath": "/wiki", "scriptpath": "/w" } } }

Internal vs public address. The server you configure may be an internal hostname (e.g. http://mediawiki in Docker); URLs handed back to the caller are built from the wiki's public address, so internal hostnames don't leak into links, once the internal host is listed in MCP_TRUSTED_HOSTS. See docs/configuration.md — per-wiki fields.

For the full field reference, env-var substitution, secret sources, change tags, bot edits, upload directories, and authentication options, see docs/configuration.md.

Authentication

Tools marked 🔐 require authentication. Write tools (including extension-pack writes) are refused on a wiki that has readOnly: true, and hidden from tools/list when every configured wiki has it — see Deployment.

  • Browser-based OAuth (recommended). Sign in through a browse

Only the beginning is shown; read the rest in the repo

Ask PopNx