Secure MCP server for MediaWiki wikis — search, pages, categories, and more
Project description
mcp-mediawiki-crunchtools
Secure MCP server for MediaWiki wikis. Search, read, create, edit, and manage wiki pages, categories, files, and more. Works with any MediaWiki instance — public or private.
Installation
uvx (recommended)
uvx mcp-mediawiki-crunchtools
pip
pip install mcp-mediawiki-crunchtools
mcp-mediawiki-crunchtools
Container
podman run -e MEDIAWIKI_URL=https://en.wikipedia.org/w/ \
quay.io/crunchtools/mcp-mediawiki
Usage with Claude Code
Read-only (public wiki, no auth needed)
claude mcp add mcp-mediawiki-crunchtools \
--env MEDIAWIKI_URL=https://en.wikipedia.org/w/ \
-- uvx mcp-mediawiki-crunchtools
With authentication (for write operations)
claude mcp add mcp-mediawiki-crunchtools \
--env MEDIAWIKI_URL=https://your-wiki.com/w/ \
--env MEDIAWIKI_USERNAME=BotUser \
--env MEDIAWIKI_PASSWORD=BotPassword \
-- uvx mcp-mediawiki-crunchtools
HTTP transport (systemd / container)
podman run -d --name mcp-mediawiki \
-p 127.0.0.1:8016:8016 \
-e MEDIAWIKI_URL=https://your-wiki.com/w/ \
quay.io/crunchtools/mcp-mediawiki \
--transport streamable-http --host 0.0.0.0
Claude Code config:
{"type": "http", "url": "http://127.0.0.1:8016/mcp"}
Environment Variables
| Variable | Required | Description |
|---|---|---|
MEDIAWIKI_URL |
Yes | Wiki base URL (e.g., https://en.wikipedia.org/w/) |
MEDIAWIKI_USERNAME |
No | Bot/user account for write operations |
MEDIAWIKI_PASSWORD |
No | Bot/user password |
MEDIAWIKI_HTTP_USER |
No | HTTP Basic Auth username (.htaccess) |
MEDIAWIKI_HTTP_PASS |
No | HTTP Basic Auth password |
Tools (19)
| Category | Tool | Description |
|---|---|---|
| Pages | search |
Full-text search across wiki |
| Pages | get_page |
Get page wikitext content |
| Pages | get_page_html |
Parse page to HTML |
| Pages | list_pages |
List pages with prefix filter |
| Pages | create_page |
Create a new page |
| Pages | edit_page |
Edit an existing page |
| Pages | delete_page |
Delete a page |
| Pages | move_page |
Move/rename a page |
| Categories | list_categories |
List all categories |
| Categories | get_category_members |
Get pages in a category |
| Categories | get_page_categories |
Get categories for a page |
| Recent Changes | list_recent_changes |
List recent edits |
| Parsing | parse_wikitext |
Parse raw wikitext to HTML |
| Site Info | get_site_info |
Get wiki config and version |
| Site Info | list_namespaces |
List wiki namespaces |
| Users | get_user_info |
Get user details |
| Users | list_user_contributions |
List user edits |
| Files | get_file_info |
Get file/image metadata |
| Files | list_files |
List files on the wiki |
Development
# Install dev dependencies
uv sync --all-extras
# Quality gates
uv run ruff check src tests
uv run mypy src
uv run pytest -v
gourmand --full .
podman build -f Containerfile .
License
AGPL-3.0-or-later
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_mediawiki_crunchtools-0.1.3.tar.gz.
File metadata
- Download URL: mcp_mediawiki_crunchtools-0.1.3.tar.gz
- Upload date:
- Size: 41.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9688bfa2ea6ed2cbd88a16c925d1dc4bc5ef560481279c8173455ad1ef0898d2
|
|
| MD5 |
fa89eb5532a5a1c855b6d80c1dd8cb7d
|
|
| BLAKE2b-256 |
757e49ae8d8d5df817d752c4232a001eefbaa10f3044cf56ef2b3fd9b5de191b
|
Provenance
The following attestation bundles were made for mcp_mediawiki_crunchtools-0.1.3.tar.gz:
Publisher:
publish.yml on crunchtools/mcp-mediawiki
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mcp_mediawiki_crunchtools-0.1.3.tar.gz -
Subject digest:
9688bfa2ea6ed2cbd88a16c925d1dc4bc5ef560481279c8173455ad1ef0898d2 - Sigstore transparency entry: 1009307475
- Sigstore integration time:
-
Permalink:
crunchtools/mcp-mediawiki@d10a856694f9ab1f00bc22a02f8e857ea958c5d4 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/crunchtools
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@d10a856694f9ab1f00bc22a02f8e857ea958c5d4 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file mcp_mediawiki_crunchtools-0.1.3-py3-none-any.whl.
File metadata
- Download URL: mcp_mediawiki_crunchtools-0.1.3-py3-none-any.whl
- Upload date:
- Size: 32.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f09f62ac7fafa3f42ba3644767ffdf0f040a88d22362b3c1d45355d6b02b68b
|
|
| MD5 |
24893b901f78d94fd4116bd3696501a2
|
|
| BLAKE2b-256 |
dba73b3fea8cf1348fabb4e0ecec877b606fb299ef5c5bcc23f9cc93f599569e
|
Provenance
The following attestation bundles were made for mcp_mediawiki_crunchtools-0.1.3-py3-none-any.whl:
Publisher:
publish.yml on crunchtools/mcp-mediawiki
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mcp_mediawiki_crunchtools-0.1.3-py3-none-any.whl -
Subject digest:
5f09f62ac7fafa3f42ba3644767ffdf0f040a88d22362b3c1d45355d6b02b68b - Sigstore transparency entry: 1009307479
- Sigstore integration time:
-
Permalink:
crunchtools/mcp-mediawiki@d10a856694f9ab1f00bc22a02f8e857ea958c5d4 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/crunchtools
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@d10a856694f9ab1f00bc22a02f8e857ea958c5d4 -
Trigger Event:
workflow_dispatch
-
Statement type: