模型上下文协议工具服务器

一个基于Flask的MCP工具服务器,提供/run-tool API端点并与Open WebUI集成,适用于本地LLaMA 3模型调用。

  • by sujathaynweh
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 sujathaynweh/samplemcptoolserver

使用说明

MCP工具服务器示例

此存储库包含一个简单的基于Flask的服务器,该服务器实现了MCP(模型上下文协议)工具,该工具公开了一个 /run-tool API端点,并为其OpenAPI规范提供服务。此工具可以连接到 打开WebUI 并与本地托管的LLaMA 3模型一起使用。

特性

  • 带有单个POST终结点的Flask API: /run-tool
  • 服务于OpenAPI规范 /.well-known/openapi.json
  • CORS已启用
  • 已准备好与Open WebUI集成

先决条件

  • Python 3.8+
  • 打开WebUI 已安装并正在运行
  • LLaMA 3型号已下载并配置

安装

  1. 克隆此存储库:

    git clone https://github.com/your-username/sampleMCPToolServer.git
    cd sampleMCPToolServer
    
  2. 创建并激活虚拟环境(可选但推荐):

    python3 -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
  3. 安装依赖项:

    pip install flask flask-cors
    

文件夹结构

sampleMCPToolServer/
│
├── app.py
└── static/
    └── .well-known/
        └── openapi.json

运行服务器

python app.py

这将启动服务器 http://localhost:5050.

  • OpenAPI规范可在以下网址获得: http://localhost:5050/.well-known/openapi.json
  • 工具端点: http://localhost:5050/run-tool

连接到Open WebUI

在Open WebUI中下载模型

  1. 转到 模型 打开WebUI中的选项卡。

  2. 通过指定模型名称(例如。, llama3).

  3. 一旦模型被下载并加载,就可以使用它来调用该工具。

  4. 安装并启动Open WebUI:

    请遵循以下说明 https://github.com/open-webui/open-webui

  5. 将您的工具添加到Open WebUI:

    • 导航到打开WebUI
    • 首选 设置>工具>添加工具
    • 输入OpenAPI JSON的URL:
      http://localhost:5050/.well-known/openapi.json
      
    • 保存并验证工具是否已成功添加。
  6. 在聊天中使用该工具:

    键入引用或触发该工具的消息(例如,“使用名为John的测试工具”)。


示例请求

端点:

POST /run-tool

请求正文:

{
  "name": "Alice"
}

答复:

{
  "message": "Hello, Alice! The tool was successfully called."
}

许可证

MIT许可证


作者

  • sujathay.nweh