DokuWiki直接MCP服务器
重量轻, 零依赖性 MCP(模型上下文协议)服务器,直接连接到运行 MCP插件.
为什么?
官方方法使用 mcp-remote 作为MCP客户端(Claude Desktop、Claude Code等)和DokuWiki MCP插件之间的桥梁。然而, mcp-remote 环境中断 自签名SSL证书 因为:
- Node.js v22+
fetch/undici忽略NODE_TLS_REJECT_UNAUTHORIZED=0作为shell环境变量传递时 - 必须设置环境变量 过程中的 在建立任何HTTP连接之前
mcp-remote在检查环境变量之前初始化其HTTP客户端
此服务器通过以下方式解决了问题:
- 设置TLS验证选项 之前 任何
fetch电话 - 调用DokuWiki MCP端点 直接 通过
fetch(无中介) - 使用 零外部依赖 --仅内置Node.js
- 大约140行简单、可审计的代码
快速开始
克劳德桌面版
添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"dokuwiki": {
"command": "node",
"args": ["C:/path/to/dokuwiki-mcp-server.mjs"],
"env": {
"DOKUWIKI_URL": "https://your-wiki.example.com/lib/plugins/mcp/mcp.php",
"DOKUWIKI_TOKEN": "your-jwt-token-here",
"DOKUWIKI_SKIP_TLS_VERIFY": "1"
}
}
}
}克劳德代码
添加到您的 ~/.claude/settings.json 在...之下 mcpServers:
{
"dokuwiki": {
"command": "node",
"args": ["C:/path/to/dokuwiki-mcp-server.mjs"],
"env": {
"DOKUWIKI_URL": "https://your-wiki.example.com/lib/plugins/mcp/mcp.php",
"DOKUWIKI_TOKEN": "your-jwt-token-here",
"DOKUWIKI_SKIP_TLS_VERIFY": "1"
}
}
}环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
DOKUWIKI_URL | 是 | MCP插件端点的完整URL |
DOKUWIKI_TOKEN | 是 | JWT承载令牌(在DokuWiki管理>MCP插件中生成) |
DOKUWIKI_SKIP_TLS_VERIFY | 否 | 设置为 1 跳过TLS证书验证(对于自签名证书) |
需求
- Node.js 18+ (使用内置
fetch) - 文档Wiki 随着 MCP插件 已安装并配置
可用工具
DokuWiki MCP插件中的所有工具都会自动代理,包括:
core_searchPages--全文搜索core_getPage/core_savePage--读/写wiki页面core_listPages--列出命名空间中的页面core_getRecentPageChanges--最近的更改core_getPageInfo/core_getPageHistory--页面元数据plugin_aichat_ask--AI聊天插件查询- 以及来自DokuWiki Remote API的50多种方法
运作原理
┌─────────────┐ stdio ┌──────────────────┐ HTTPS/POST ┌──────────┐
│ Claude Code │◄──(JSON-RPC)──►│ dokuwiki-mcp- │◄──(JSON-RPC)──────►│ DokuWiki │
│ or Desktop │ │ server.mjs │ │ MCP │
└─────────────┘ └──────────────────┘ │ Plugin │
• Zero dependencies └──────────┘
• In-process TLS config
• Tools list caching服务器充当一个精简的stdio到HTTP桥:
- 在stdin上从MCP客户端接收JSON-RPC消息
- 将它们作为HTTP POST请求转发到DokuWiki MCP插件
- 在stdout上返回响应
故障排除
初始化时“无法访问DokuWiki”
- 验证
DOKUWIKI_URL正确且服务器可访问 - 如果使用自签名证书,请设置
DOKUWIKI_SKIP_TLS_VERIFY=1 - 检查MCP插件是否已安装:访问
https://your-wiki/lib/plugins/mcp/mcp.php在浏览器中
“HTTP 401”或“HTTP 403”
- 验证您的JWT令牌是否有效且未过期
- 在DokuWiki管理>配置>MCP插件中重新生成令牌
工具未出现
- 确保与令牌关联的DokuWiki用户具有适当的权限
- 检查DokuWiki要访问的命名空间的ACL设置
许可证
麻省理工学院
