Skip to main content
Glama
YukiSakiko

mcp-server-moegirl-wiki

by YukiSakiko

mcp-server-moegirl-wiki

PyPI version License: MIT

English | 简体中文

MCP server for 萌娘百科 (Moegirl Wiki). Two tools: search entries and fetch a page's intro.

Install

uvx mcp-server-moegirl-wiki         # recommended
pipx run mcp-server-moegirl-wiki
pip install mcp-server-moegirl-wiki

Tools

search_moegirl(keyword: str, limit: int = 5)

Returns {"results": [{"title", "url", "snippet"}, ...], "count": int}.

get_page(title: str, max_length: int = 6250)

Returns {"title", "content", "url", "page_id"} — full plain-text rendering of the page (all sections, templates expanded, links resolved). Auto-follows redirects. content is truncated to max_length characters; default 6250 covers a typical character page in full, pass larger (e.g. 20000) for very long pages.

Environment variables

Variable

Default

Description

MOEGIRL_MAX_LENGTH

6250

Default max_length for get_page when the caller does not specify one. Useful for tuning per-deployment without forking the package. Invalid/non-positive values are ignored with a warning.

Configuration

Claude Desktop

{
  "mcpServers": {
    "moegirl-wiki": {
      "command": "uvx",
      "args": ["mcp-server-moegirl-wiki"]
    }
  }
}

MaiBot (config/bot_config.toml)

MaiBot's default config already has the [mcp] block — just replace the servers line:

servers = [{name = "moegirl", enabled = true, transport = "stdio", command = "uvx", args = ["mcp-server-moegirl-wiki"], env = {MOEGIRL_MAX_LENGTH = "6250"}, url = "", headers = {}, http_timeout_seconds = 30.0, read_timeout_seconds = 300.0, authorization = {mode = "none", bearer_token = ""}}]

Tweak MOEGIRL_MAX_LENGTH to taste (raise to 20000 for very long pages, lower to 1500 for quick lookups). If uvx is not on PATH, swap command/args for command = "pipx", args = ["run", "mcp-server-moegirl-wiki"].

Development

git clone https://github.com/XXXxx7258/mcp-server-moegirl-wiki
cd mcp-server-moegirl-wiki
uv sync --group dev
uv run pytest -m network
uv run ruff check .

Limitations

  • get_page returns rendered plain text (templates expanded, links resolved). Raw wikitext (prop=revisions, action=parse, ?action=raw, Special:Export) is blocked by Moegirl Wiki's site-wide ACL — empirically verified that bot-password login does not unlock it; only sysop/staff groups can call these actions.

  • Uses the mzh.moegirl.org.cn mirror.

License

MIT