Docker Hub镜像: masterno12/webui-mcpo:latest
此Docker镜像提供了一个现成的MCPO实例,这是一个轻量级、可组合的MCP(模型上下文协议)服务器,旨在通过一个简单的配置文件在统一的API服务器中代理多个MCP工具——使用Claude桌面格式的配置文件。
🔗 什么是MCP?
了解更多,请访问Open WebUI MCP服务器文档
支持的官方MCP服务器:https://github.com/modelcontextprotocol/servers
刚开始时,我发现官方的Open WebUI文档经常强调一行启动命令(例如直接使用npx或uvx),并提供从Claude配置到一行命令的转换。
然而,我注意到两点:
因此,与其手动将JSON块转换为CLI命令,不如完全接受Claude配置格式。这使得设置更清晰、更容易维护,并且与mcpo完美兼容。
docker pull masterno12/webui-mcpo:latest
config.json您必须在一个本地文件夹(例如mcpo/)中提供一个config.json。如果mcpo/config.json不存在,容器会自动生成一个最小默认配置。
本地文件夹mcpo/必须位于docker-compose.yml所在的同一目录下。
📄 示例config.json:
{
"mcpServers": {
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
},
"time": {
"command": "uvx",
"args": ["mcp-server-time", "--local-timezone=America/New_York"]
},
"mcp_sse": {
"type": "sse",
"url": "http://127.0.0.1:8001/sse"
},
"mcp_streamable_http": {
"type": "streamable_http",
"url": "http://127.0.0.1:8002/mcp"
}
}
}
services:
mcpo:
image: masterno12/webui-mcpo:latest
container_name: webui-mcpo
ports:
- "8000:8000"
volumes:
- ./mcpo:/opt/mcpo
restart: unless-stopped
启动服务器:
docker-compose up -d
克隆仓库:
git clone https://github.com/masterno12/webui-mcpo.git
cd webui-mcpo
本地构建镜像:
docker build -t webui-mcpo:latest .
然后可以直接运行:
docker run -d -p 8000:8000 -v "$PWD/mcpo:/opt/mcpo" webui-mcpo:latest
或者使用提供的Docker Compose设置:
docker-compose up -d --build
每个工具都在其自己的子路径下暴露,例如:
http://localhost:8000/memoryhttp://localhost:8000/time每个路径提供:
/docs)示例:
http://localhost:8000/memory/docshttp://localhost:8000/time/docs要将此MCP服务器中的工具连接到Open WebUI,必须使用每个工具的完整子路径:
http://localhost:8000/memory
http://localhost:8000/time
http://localhost:8000
这确保了Open WebUI能够正确识别并与每个工具服务器通信。
/opt/mcpo/config.json不存在,会自动复制一个最小默认配置。8000。npx、uvx和自定义MCP工具类型。由n8n提供的sse在与supergateway一起使用时有效
{
"mcpServers": {
"n8n": {
"command": "npx",
"args": [
"-y",
"supergateway",
"--sse",
"<MCP_URL>"
]
}
}
}
带有授权
{
"mcpServers": {
"n8n": {
"command": "npx",
"args": [
"-y",
"supergateway",
"--sse",
"<MCP_URL>",
"--header",
"Authorization: Bearer <MCP_BEARER_TOKEN>"
]
}
}
}
"n8n-dev": {
"url": "<MCP_URL>",
"serverType": "sse"
}
带有授权
"linux_server": {
"transport": "sse",
"endpoint": "http://192.168.40.173:8000/sse",
"bearertoken":"expected-token"
}
MCPO_API_KEY环境变量添加API密钥注入的支持。entrypoint.sh以动态追加--api-key,如果变量存在。config.json进行服务器配置。v1.1配置文件。mcpo。