PmWiki MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PmWiki MCP Serversearch wiki for 'getting started'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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 communicationPOST /messages/: Receive messages from the MCP client
Related MCP server: mediawiki-mcp-server
Getting Started
With Docker Compose (Docker Hub image)
The simplest method is to use the published image from Docker Hub:
docker compose up -dWith Docker Compose (local build)
If you want to build the image locally:
Edit
docker-compose.ymland comment out theimage:line, then uncomment thebuild: .lineRun:
docker compose up -d --buildDirect 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:latestThe 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/sseClient 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:
vmtestis the hostname of the machine hosting the MCP server Docker containerReplace
vmtestwith:localhostif Claude Desktop runs on the same machine as the serverThe hostname or IP address of the machine running the Docker container (e.g.,
192.168.1.100:3000/sse)
The
mcp-proxytool 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
search_wiki: Search for text across all pages
Parameters:
query(required): Text to search forcase_sensitive(optional): Case-sensitive search (default: false)
read_page: Read the complete content of a page
Parameters:
page_name(required): Page name (e.g.,Main.HomePageorMain/HomePage)
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:roImportant:
/home/docker/appdata/html/wiki.dis the path on the host machine - this is an example to adaptReplace this path with the actual path to your PmWiki
wiki.ddirectoryThe volume is mounted read-only (
:ro) for security reasons/wiki_datais 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:latestStable version:
kcofoni/pmwiki-mcp:v1.0.2
To pull the latest version:
docker pull kcofoni/pmwiki-mcp:latestTo pull a specific version:
docker pull kcofoni/pmwiki-mcp:v1.0.2Technical 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-serverTroubleshooting
Server won't start
Check that the wiki directory exists:
ls -la /home/docker/appdata/html/wiki.d404 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-serverDevelopment
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 documentationCode Modification
After modifying the code:
docker compose up -d --buildLicense
This project is licensed under the MIT License - see the LICENSE file for details.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kcofoni/pmwiki-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server