项目简介

本项目提供了一个Docker镜像,用于快速部署和运行基于 'mcpo' 的MCP服务器。它将MCP服务器以OpenAPI兼容的HTTP端点形式暴露出来,方便与OpenWebUI等LLM应用集成。

主要功能点

  • 快速部署: 通过Docker Compose或 Docker Run 快速启动 MCP 服务器。
  • 预置工具: 内置常用工具如 amap, baidumap, brave-search, tavily, fetch,开箱即用。
  • API Key 认证: 支持 API Key 认证,保障服务安全。
  • OpenAPI 接口: 提供 OpenAPI 接口,方便 LLM 客户端集成。
  • 灵活配置: 通过 'config.json' 文件和环境变量自定义服务器配置。
  • 日志管理: 支持日志持久化,方便问题排查。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/flyfox666/mcpo_docker_use.git
    cd mcpo_docker_use
  2. 复制并编辑配置文件:

    cp config.example.json config.json   # 根据需要更新API Key等配置
    cp docker-compose.example.yml docker-compose.yml  # 根据需要更新环境变量

    请根据 'config.json' 中的说明配置您需要的工具和服务,并根据 'docker-compose.yml' 中的环境变量设置 API Key 等。

  3. 启动 Docker 容器:

    • 使用 Docker Compose (推荐):
      docker compose up -d
    • 使用 Docker Run:
      docker run -d \
        --name mcpo \
        --restart unless-stopped \
        -p 8000:8000 \
        -v "$(pwd)/config.json:/app/config/config.json" \
        -v "$(pwd)/logs:/app/logs" \
        -e MCPO_API_KEY=your_api_key  # 请替换为您的API Key
        ghcr.io/flyfox666/mcpo_docker_use

服务器配置 (MCP 客户端配置)

以下是 MCP 客户端连接到此 MCP 服务器的配置示例 (JSON 格式):

{
  "serverName": "my-mcpo-server",
  "command": "http://localhost:8000/{tool_name}",
  "args": {
    "{tool_name}": "fetch", // 默认工具示例,可替换为 amap-maps, brave-search, tavily-mcp 等
    "headers": {
      "Authorization": "Bearer your_api_key" // 如果config.json中配置了API Key,请替换为实际的API Key
    }
  }
}

配置说明:

  • 'serverName': 为您的 MCP 服务器连接自定义一个名称。
  • 'command': MCP 服务器的请求 URL,'{tool_name}' 会被客户端动态替换为要调用的工具名称。
  • 'args': 请求参数。
    • 'args.tool_name': 指定默认使用的工具,例如 'fetch'。 您可以根据需要更改为其他预置工具,如 'amap-maps', 'brave-search', 'tavily-mcp' 等。
    • 'args.headers.Authorization': 如果 您在 'config.json' 中配置了 'apikey',并且通过环境变量 'MCPO_API_KEY' 传递给了 Docker 容器,则需要在此处配置 'Authorization' 请求头,并将 'your_api_key' 替换为您的实际 API Key。

重要提示: '{tool_name}' 是占位符,MCP 客户端在实际调用工具时会将其替换为具体的工具名称。 您可以在启动服务器后,访问 'http://localhost:8000/docs' 查看 OpenAPI 文档,了解可用的工具端点和具体工具名称。

基本使用方法

  1. 确保 Docker 容器成功启动后,MCP 服务器将在 'http://localhost:8000' 地址运行。
  2. 访问 'http://localhost:8000/docs' 可以查看自动生成的 OpenAPI 文档,其中包含了可用的工具列表和接口定义。
  3. 在您的 LLM 客户端 (例如 OpenWebUI) 中,配置新的工具服务器连接。
    • 连接地址: 填写 MCP 服务器的 URL,例如 'http://localhost:8000/fetch' (您可以根据需要选择不同的工具端点)。
    • API Key: 如果 MCP 服务器启用了 API Key 认证,请在客户端中配置相应的 API Key。
  4. 在 LLM 应用中使用配置好的工具,即可享受 MCP 服务器提供的上下文信息和功能。

信息

分类

开发者工具