io.github.kcofoni/pmwiki-mcp

Registre officiel Recherche et web

MCP server for searching and reading PmWiki pages with text queries and group filtering.

Que pouvez-vous faire avec io.github.kcofoni/pmwiki-mcp ?

  • search_wiki: Search for text across all pages
  • read_page: Read the complete content of a page
  • list_pages: List all wiki pages

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

OCI package docker.io/kcofoni/pmwiki-mcp:v1.0.4
Claude Code
claude mcp add pmwiki-mcp -e 'WIKI_DIR=<WIKI_DIR>' -- docker run -i --rm docker.io/kcofoni/pmwiki-mcp:v1.0.4
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "pmwiki-mcp": {
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "docker.io/kcofoni/pmwiki-mcp:v1.0.4"
            ],
            "env": {
                "WIKI_DIR": "<WIKI_DIR>"
            }
        }
    }
}

Variables d'environnement

  • WIKI_DIR obligatoire Path to the PmWiki wiki.d directory containing page files (must be mounted as read-only volume in Docker)

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. PmWiki MCP Server
  2. Architecture
  3. Getting Started
  4. Client Configuration
  5. Available Features
  6. Configuration
  7. Docker Hub
  8. Technical Architecture
  9. Logs
  10. Troubleshooting
  11. Development
  12. License

PmWiki MCP Server

MCP (Model Context Protocol) server for interfacing an LLM with PmWiki.

Version française / French version

Architecture

The server uses the MCP protocol with SSE (Server-Sent Events) transport to enable an LLM to interact with your PmWiki instance.

Endpoints
  • GET /sse: SSE connection to establish bidirectional communication
  • POST /messages/: Receive messages from the MCP client

Getting Started

With Docker Compose (Docker Hub image)

The simplest method is to use the published image from Docker Hub:

docker compose up -d
With Docker Compose (local build)

If you want to build the image locally:

  1. Edit docker-compose.yml and comment out the image: line, then uncomment the build: . line
  2. Run:
docker compose up -d --build
Direct Docker Usage

Without docker-compose, you can run directly:

docker run -d \
  --name pmwiki-mcp-server \
  -p 3000:3000 \
  -v /path/to/your/wiki.d:/wiki_data:ro \
  -e WIKI_DIR=/wiki_data \
  kcofoni/pmwiki-mcp:latest

The server will be accessible at http://localhost:3000 (or http://vmtest:3000 from other machines on the network).

Verification
# Check that the server is running
docker logs pmwiki-mcp-server

# Test the SSE connection
curl -N http://localhost:3000/sse

Client Configuration

Claude Desktop

Add this configuration to your Claude Desktop configuration file:

On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json On Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "pmwiki": {
      "command": "mcp-proxy",
      "args": [
        "--transport=sse",
        "http://vmtest:3000/sse"
      ]
    }
  }
}

Important notes:

  • vmtest is the hostname of the machine hosting the MCP server Docker container
  • Replace vmtest with:
    • localhost if Claude Desktop runs on the same machine as the server
    • The hostname or IP address of the machine running the Docker container (e.g., 192.168.1.100:3000/sse)
  • The mcp-proxy tool must be installed (usually provided with Claude Desktop)
  • The proxy handles the SSE connection between Claude Desktop and the MCP server

Available Features

Once connected, your LLM will have access to:

Resources
  • All wiki pages are exposed as resources with the URI pmwiki://Group.PageName
Tools
  1. search_wiki: Search for text across all pages
    • Parameters:
      • query (required): Text to search for
      • case_sensitive (optional): Case-sensitive search (default: false)
  2. read_page: Read the complete content of a page
    • Parameters:
      • page_name (required): Page name (e.g., Main.HomePage or Main/HomePage)
  3. list_pages: List all wiki pages
    • Parameters:
      • group (optional): Filter by group

Configuration

Wiki Directory Mount

The PmWiki directory is mounted from the host machine to the Docker container:

volumes:
  - /home/docker/appdata/html/wiki.d:/wiki_data:ro

Important:

  • /home/docker/appdata/html/wiki.d is the path on the host machine - this is an example to adapt
  • Replace this path with the actual path to your PmWiki wiki.d directory
  • The volume is mounted read-only (:ro) for security reasons
  • /wiki_data is the internal container path (do not modify)

Docker Hub

The image is publicly available on Docker Hub:

  • Repository: kcofoni/pmwiki-mcp
  • Latest tag: kcofoni/pmwiki-mcp:latest
  • Stable version: kcofoni/pmwiki-mcp:v1.0.2

To pull the latest version:

docker pull kcofoni/pmwiki-mcp:latest

To pull a specific version:

docker pull kcofoni/pmwiki-mcp:v1.0.2

Technical Architecture

  • Language: Python 3.11
  • Web Framework: Starlette + Uvicorn
  • Protocol: MCP over SSE
  • Page Format: PmWiki (files in wiki.d/)

Logs

# View logs in real-time
docker logs -f pmwiki-mcp-server

# Last 50 lines
docker logs --tail 50 pmwiki-mcp-server

Troubleshooting

Server won't start

Check that the wiki directory exists:

ls -la /home/docker/appdata/html/wiki.d
404 error on a page

Use the list_pages tool to see all available pages. The exact PmWiki filename format must be used (e.g., Main.HomePage not Main/HomePage for the file).

SSE connection fails

Check that port 3000 is properly exposed:

docker ps | grep pmwiki-mcp-server

Development

File Structure
pmwiki-mcp/
├── pmwiki_mcp_server.py    # MCP server
├── requirements.txt         # Python dependencies
├── Dockerfile              # Docker image
├── docker-compose.yml      # Docker Compose configuration
├── README.md              # This documentation (English)
└── README_fr.md           # French documentation
Code Modification

After modifying the code:

docker compose up -d --build

License

This project is licensed under the MIT License - see the LICENSE file for details.

Questions fréquentes

Qu'est-ce que io.github.kcofoni/pmwiki-mcp ?

MCP server for searching and reading PmWiki pages with text queries and group filtering.

Comment installer io.github.kcofoni/pmwiki-mcp ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add pmwiki-mcp -e 'WIKI_DIR=<WIKI_DIR>' -- docker run -i --rm docker.io/kcofoni/pmwiki-mcp:v1.0.4. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour io.github.kcofoni/pmwiki-mcp ?

Oui. Il attend WIKI_DIR, à renseigner dans sa configuration.

io.github.kcofoni/pmwiki-mcp est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient io.github.kcofoni/pmwiki-mcp ?

Il est publié par kcofoni. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.