Connects to MediaWiki instances (like Wikipedia) to search, read, create, and edit wiki pages through the REST API. Supports multiple wikis with automatic discovery and authenticated operations.

Integrates with MediaWiki instances through REST API to enable searching pages, retrieving content in multiple formats, accessing file information, viewing revision history, and performing authenticated operations like creating and updating pages with automatic wiki discovery and dynamic configuration management.

68360 views17Local (stdio)

What it does

  • Search wiki pages by title and content
  • Retrieve page content and revision history
  • Create and update wiki pages
  • Upload files to wikis
  • Manage multiple wiki instances
  • Access file information and downloads

Best for

Content creators managing wiki documentationDevelopers building wiki integrationsOrganizations maintaining internal wikisResearchers accessing MediaWiki data
Works with any MediaWiki instanceAuthenticated editing capabilitiesMulti-wiki support

About MediaWiki

MediaWiki is a community-built MCP server published by professionalwiki that provides AI assistants with tools and capabilities via the Model Context Protocol. Integrate with MediaWiki via REST API for searching, content retrieval, file info, revisions, and page management with d It is categorized under productivity. This server exposes 16 tools that AI clients can invoke during conversations and coding sessions.

How to install

You can install MediaWiki in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

License

MediaWiki is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

Tools (16)

get-page

Returns a wiki page. Use metadata=true to retrieve the revision ID required by update-page. Set content="none" to fetch only metadata without content.

get-page-history

Returns information about the latest revisions to a wiki page, in segments of 20 revisions, starting with the latest revision. The response includes API routes for the next oldest, next newest, and latest revision segments.

search-page

Search wiki page titles and contents for the provided search terms, and returns matching pages.

set-wiki

Sets the wiki to use for the current session. You MUST call this tool when interacting with a new wiki.

update-page

Updates a wiki page. Replaces the existing content of a page with the provided content

MediaWiki MCP Server

NPM Version smithery badge MIT licensed

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

Feature

Tools

NameDescriptionPermissions
add-wikiAdds a new wiki as an MCP resource from a URL.-
create-page 🔐Create a new wiki page.Create, edit, and move pages
delete-page 🔐Delete a wiki page.Delete pages, revisions, and log entries
get-category-membersGets all members in the category-
get-fileReturns the standard file object for a file page.-
get-pageReturns the standard page object for a wiki page.-
get-page-historyReturns information about the latest revisions to a wiki page.-
get-revisionReturns the standard revision object for a page.-
remove-wikiRemoves a wiki resource.-
search-pageSearch wiki page titles and contents for the provided search terms.-
search-page-by-prefixPerform a prefix search for page titles.-
set-wikiSets the wiki resource to use for the current session.-
undelete-page 🔐Undelete a wiki page.Delete pages, revisions, and log entries
update-page 🔐Update an existing wiki page.Edit existing pages
upload-file 🔐Uploads a file to the wiki from the local disk.Upload new files
upload-file-from-url 🔐Uploads a file to the wiki from a web URL.Upload, replace, and move files

Resources

mcp://wikis/{wikiKey}

  • Credentials (e.g., token, username, password) are never exposed in resource content.
  • After add-wiki/remove-wiki, the server sends notifications/resources/list_changed so clients refresh.
Example list result
{
  "resources": [
    {
      "uri": "mcp://wikis/en.wikipedia.org",
      "name": "wikis/en.wikipedia.org",
      "title": "Wikipedia",
      "description": "Wiki \"Wikipedia\" hosted at https://en.wikipedia.org"
    }
  ]
}
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 }"
    }
  ]
}

Environment variables

NameDescriptionDefault
CONFIGPath to your configuration fileconfig.json
MCP_TRANSPORTType of MCP server transport (stdio or http)stdio
PORTPort used for StreamableHTTP transport3000

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.

Basic structure

{
  "defaultWiki": "en.wikipedia.org",
  "wikis": {
    "en.wikipedia.org": {
      "sitename": "Wikipedia",
      "server": "https://en.wikipedia.org",
      "articlepath": "/wiki",
      "scriptpath": "/w",
      "token": null,
      "username": null,
      "password": null,
      "private": false
    }
  }
}

Configuration fields

FieldDescription
defaultWikiThe default wiki identifier to use (matches a key in wikis)
wikisObject containing wiki configurations, keyed by domain/identifier

Wiki configuration fields

FieldRequiredDescription
sitenameYesDisplay name for the wiki
serverYesBase URL of the wiki (e.g., https://en.wikipedia.org)
articlepathYesPath pattern for articles (typically /wiki)
scriptpathYesPath to MediaWiki scripts (typically /w)
tokenNoOAuth2 access token for authenticated operations (preferred)
usernameNoBot username (fallback when OAuth2 is not available)
passwordNoBot password (fallback when OAuth2 is not available)
privateNoWhether the wiki requires authentication to read (default: false)

Authentication setup

For tools marked with 🔐, authentication is required.

Preferred method: OAuth2 Token

  1. Navigate to Special:OAuthConsumerRegistration/propose/oauth2 on your wiki
  2. Select "This consumer is for use only by [YourUsername]"
  3. Grant the necessary permissions
  4. After approval, you'll receive:
    • Client ID
    • Client Secret
    • Access Token
  5. Add the token to your wiki configuration in config.json

Note: OAuth2 requires the OAuth extension to be installed on the wiki.

Fallback method: Username & Password

If OAuth2 is not available on your wiki, you can use bot credentials (from Special:BotPasswords ) instead of the OAuth2 token.

Installation

Install via Smithery

To install MediaWiki MCP Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @ProfessionalWiki/mediawiki-mcp-server --client claude
Install in Claude Desktop

Follow the guide, use following configuration:

{
  "mcpServers": {
    "mediawiki-mcp-server": {
      "command": "npx",
      "args": [
        "@professional-wiki/mediawiki-mcp-server@latest"
      ],
      "env": {
        "CONFIG": "path/to/config.json"
      }
    }
  }
}
Install in VS Code

Install in VS Code Install in VS Code Insiders

code --add-mcp '{"name":"mediawiki-mcp-server","command":"npx","args":["@professional-wiki/mediawiki-mcp-server@latest"]}'
Install in Cursor

Install in Cursor

Go to Cursor Settings -> MCP -> Add new MCP Server. Name to your liking, use command type with the command npx @professional-wiki/mediawiki-mcp-server. You can also verify config or add command like arguments via clicking Edit.

{
  "mcpServers": {
    "mediawiki-mcp-server": {
      "command": "npx",
      "args": [
        "@professional-wiki/mediawiki-mcp-server@latest"
      ],
      "env": {
        "CONFIG": "path/to/config.json"
      }
    }
  }
}
Install in Windsurf

Follow the guide, use following configuration:

{
  "mcpServers": {
    "mediawiki-mcp-server": {
      "command": "npx",
      "args": [
        "@professional-wiki/mediawiki-mcp-server@latest"
      ],
      "env": {
        "CONFIG": "path/to/config.json"
      }
    }
  }
}
Install in Claude Code

Follow the Claude Code MCP docs.

Run the below command, optionally with -e flags to specify environment variables.

claude mcp add mediawiki-mcp-server npx @professional-wiki/mediawiki-mcp-server@latest

You should end up with something like the below in your .claude.json config:

"mcpServers": {
  "mediawiki-mcp-server": {
    "type": "stdio",
    "command": "npx",
    "args": [
      "@professional-wiki/mediawiki-mcp-server@latest"
    ],
    "env": {
      "CONFIG": "path/to/config.json"
    }
  }
},

Development

🐋 Develop with Docker: Replace the npm run part of the command with make (e.g. make inspector).

MCP Inspector

Test and debug the MCP server without a MCP client and LLM.

To start the development server and the MCP Inspector together:

npm run inspector

The command will build and start the MCP Proxy server locally at 6277 and the MCP Inspector client UI at http://localhost:6274.

MCPJam Inspector

Test and debug the MCP server, with a built-in MCP client and support for different LLMs.

To start the development server and the MCP Inspector together:

npm run mcpjam

Test with MCP clients

To enable your MCP client to use this MediaWiki MCP Server for local development:

  1. Install the MCP server on your MCP client.
  2. Change the command and args values as shown in the mcp.json file (or mcp.docker.json if you pre

README truncated. View full README on GitHub.

Alternatives

Related Skills

Browse all skills
chief-architect

PERSONAL APP ARCHITECT - Strategic development orchestrator for personal productivity applications. Analyzes project context, makes architectural decisions for single-developer projects, delegates to specialized skills, and ensures alignment between user experience goals and technical implementation. Optimized for personal apps targeting 10-100 users.

0
personal-analytics

Analyze conversation patterns, track productivity, and surface self-knowledge insights. Use when user wants to understand their own patterns (when they chat, what topics they discuss, productivity trends, sentiment over time). Provides weekly/monthly reports, topic recommendations, and time-based insights. Privacy-first design with all analysis local.

0
windsurf-extension-pack

Install and configure essential Windsurf extensions for productivity. Activate when users mention "install extensions", "setup windsurf plugins", "configure extensions", "extension recommendations", or "productivity extensions". Handles extension installation and configuration. Use when working with windsurf extension pack functionality. Trigger with phrases like "windsurf extension pack", "windsurf pack", "windsurf".

0
cto-engineering-metrics

Expert methodology for defining, tracking, and interpreting engineering performance metrics including DORA, team health, productivity, and executive reporting.

0
email-management-expert

Expert email management assistant for Apple Mail. Use this when the user mentions inbox management, email organization, email triage, inbox zero, organizing emails, managing mail folders, email productivity, checking emails, or email workflow optimization. Provides intelligent workflows and best practices for efficient email handling.

0
windsurf-usage-analytics

Analyze team AI usage patterns and productivity metrics. Activate when users mention "usage analytics", "ai metrics", "productivity tracking", "usage reports", or "roi analysis". Handles analytics and reporting configuration. Use when working with windsurf usage analytics functionality. Trigger with phrases like "windsurf usage analytics", "windsurf analytics", "windsurf".

0