Skip to content

ariane-emory/mediawiki-mcp-server

 
 

Repository files navigation

Fork info:

This is a forked modified to work with the older Mediawiki API used by the Traveller Wiki, which has no rest.php endpoint and instead only an api.php endpoint.

This is a sample configuration for use with the Traveller Wiki:

  "mcpServers": {
    "traveller_wiki": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
       "/Users/$USER/python/mediawiki-mcp-server",
        "mediawiki-mcp-server",
        "--base-url", "https://wiki.travellerrpg.com/"
      ]
    }
  }

Original README.md content:

Outdated. Please use https://github.com/ProfessionalWiki/MediaWiki-MCP-Server instead!

MediaWiki MCP Server 🚀

smithery badge

MseeP.ai Security Assessment Badge

A MCP server that provides seamless interaction with Wikipedia's API. This tool allows you to search and retrieve Wikipedia content with LLMs 🤖!

demo.mp4

Features ✨

  • 🔍 Search wiki pages with customizable wiki site. e.g. wikipedia.org, fandom.com, wiki.gg and more!
  • 📖 Retrieve detailed page content

Usage 💻

  1. Ensure that uv is installed on your device.
  2. Configure in your client:

The server defaults to using https://en.wikipedia.org/. Also, you can make the server search other wiki sites!

To see if a wiki site works with this server, check if it uses MediaWiki software (usually shown by an icon at the bottom of the site).

To check further and find the endpoint (usually the website's domain, like https://mediawiki.org/), check by going to base-url/rest.php/v1/page in a browser (like https://noita.wiki.gg/rest.php/v1/page) and see if the output looks right. If not, add '/w' to the base URL and try again.

Then, set this endpoint as --base-url:

Available transports: stdio (default), streamable-http (http://localhost/mcp), and SSE (http://localhost/sse). See -h for all options.

uvx mediawiki-mcp-server --h
usage: main.py [-h] [--base-url BASE_URL] [--http] [--sse] [--port PORT]

MediaWiki MCP Server

options:
  -h, --help           show this help message and exit
  --base-url BASE_URL  Base URL for the MediaWiki API (default: https://en.wikipedia.org/w/``)
  --http               Run server as streamable-http (instead of stdio)
  --sse                Run server as sse-http (instead of stdio)
  --port PORT          Default port for http transport (default: 8000)

Example JSON configurations:

{
  "mcpServers": {
    "mediawiki-mcp-server": {
      "command": "uvx",
      "args": [
        "mediawiki-mcp-server",
        "--base-url", "https://example.com/"
      ],
      "env": {
        "HTTP_PROXY": "http://example.com:port"
      }
    }
  }
}

Or, if you want to run this server from source:

{
  "mcpServers": {
    "mediawiki-mcp-server": {
      "command": "uv",
      "args": [
        "run",
        "--directory", 
        "mediawiki-mcp-server",
        "path/to/project/src/mediawiki_mcp_server",
        "--base-url", "https://example.com/"
      ],
      "env": {
        "HTTP_PROXY": "http://example.com:port"
      }
    }
  }
}

Supported Tools 🛠

Search

  • query: Search term (preferably short and focused)
  • limit: Maximum number of results to return (default: 5)

Get Page

  • title: The exact title of the Wikipedia page to retrieve

Development 👨‍💻

npx @modelcontextprotocol/inspector uv run mediawiki-mcp-server

Here are some documents that might help:

Contributing 🤝

This server is under development. Contributions are welcome! Feel free to submit issues and pull requests.

Related Projects ♥️

  • Cherry Studio: A desktop client that supports for multiple LLM providers. MCP is supported.

About

A fork to adjust mediawiki-mcp-server to work with the older API used by the Traveller Wiki.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 92.2%
  • Dockerfile 7.8%