NLP(一百一十九)在Open_WebUI中玩转MCP!从入门到实战全指南
本文将会介绍如何在Open WebUI中使用MCP.
前言
在文章NLP(一百零三)大模型应用利器之Open
WebUI入门中,笔者介绍了大模型应用利器Open WebUI
的基本信息,及其重要特性,包括单/多模型回复、文档问答、Web
Search问答、Function Calling、多模态问答等。
最新版本的Open WebUI
已支持MCP,本文将予以详细介绍。
Open WebUI
开放了mcpo代理服务器(全称为MCP-to-OpenAPI
proxy server),该协议允许你通过标准的 REST/OpenAPI 接口,直接使用基于
MCP(Model Context
Protocol,模型上下文协议)实现的工具服务器——无需处理陌生或复杂的自定义协议。
如果你是终端用户或应用开发者,这意味着你可以通过熟悉的 REST 风格接口,轻松地与强大的 MCP 工具进行交互。
下面将介绍如何通过mcpo在Open WebUI
中使用MCP.
官方示例
在本地安装uv
工具,运行mcp-server-time
(网址为:
https://github.com/modelcontextprotocol/servers/blob/main/src/time/README.md),该MCP
Server可获取现在时间和提供时区转换能力,启动命令及输出如下:
1 |
|
接下来,需要在Open WebUI
配置工具(Tools),安装及启动命令如下:
1 |
|
在浏览器中输入http://localhost:8090
并注册账号。在Settings
-> Tools中进行配置,如下图:
在配置好大模型(选择gpt-4o模型)后,在聊天框中会出现工具图标,点击该图标,显示如下:
这表明我们基于MCP的工具服务已连接成功。
在Open WebUI
进行对话,如下:
从上述的对话中可以看到,大模型调用了基于MCP的gut_current_time工具,并给出了正确回复。
项目实战
在文章NLP(一百一十七)使用Openai
Agents
SDK构建MCP中,笔者在官方SSE例子章节使用openai-agents
官网的SSE例子,这里修改如下(文件名为openai_agents_local_mcp_server.py
):
1 |
|
注意,最后一行的transport参数有sse改为stdio. 运行命令及输出如下:
1 |
|
在Open WebUI
中的工具配置使用上述同样的配置,不做修改,只需重新加载即可。
此时,在Chat页面聊天,回复如下:
从上面的回复可知,我们自己部署的MCP服务,通过mcpo代理服务器,能够在Open WebUI
成功使用!
总结
通过本文,我们了解了如何在 Open WebUI 中使用 MCP(Model Context Protocol)协议,借助官方提供的 mcpo 代理,将本地的 MCP 工具服务以 REST/OpenAPI 接口的形式无缝接入大模型对话界面。这种方式极大简化了自定义工具的接入流程,让终端用户和开发者可以像调用 API 一样便捷地扩展大模型能力。
我们从官方的时间服务示例入手,演示了如何安装、配置并通过 Open WebUI 成功调用 MCP 工具。随后,基于 openai-agents 提供的示例,构建了一个包含多个功能(如加法、获取天气、获取随机单词)的本地 MCP 工具服务,验证了定制工具与大模型的对接效果。
参考网站
- MCP Support: https://docs.openwebui.com/openapi-servers/mcp/
- Time MCP Server: https://github.com/modelcontextprotocol/servers/blob/main/src/time/README.md
- NLP(一百零三)大模型应用利器之Open WebUI入门: https://mp.weixin.qq.com/s/jfIT3VdIifTmOiSNbSZd-Q
- NLP(一百一十七)使用Openai Agents SDK构建MCP: https://mp.weixin.qq.com/s/TjPiBl9JeOWdfNLV3jQ8Eg
欢迎关注我的公众号NLP奇幻之旅,原创技术文章第一时间推送。

欢迎关注我的知识星球“自然语言处理奇幻之旅”,笔者正在努力构建自己的技术社区。
