使用说明

项目简介

本项目 'docker-mcp-servers' 提供了一组 Docker Compose 配置文件,旨在帮助用户快速部署和运行基于 Model Context Protocol (MCP) 的 Slack, Notion, GitHub 服务器。这些服务器作为 LLM 应用的后端,能够以标准化的方式提供来自 Slack, Notion, GitHub 的上下文信息和功能,从而扩展 LLM 的能力。

主要功能点

  • 快速部署 MCP 服务器: 提供预配置的 Docker 镜像和 Docker Compose 配置,简化 Slack, Notion, GitHub MCP 服务器的部署流程。
  • 集成常用服务: 支持 Slack, Notion, GitHub 三种常用平台,方便 LLM 应用集成这些平台的数据和功能。
  • 标准化 MCP 接口: 所有服务器均遵循 MCP 协议,确保与 MCP 客户端的兼容性和互操作性。
  • 易于配置: 通过简单的环境变量配置,即可完成服务器的初始化设置。

安装步骤

  1. 安装 Docker 和 Docker Compose: 确保你的系统已安装 Docker 和 Docker Compose。
  2. 下载配置文件: 从 GitHub 仓库下载或克隆本项目的配置文件 (例如 'README.md' 中提供的 JSON 配置)。
  3. 配置环境变量: 根据你使用的 MCP 服务器类型 (Slack, Notion, 或 GitHub),修改配置文件中相应的环境变量,例如 'SLACK_BOT_TOKEN', 'NOTION_API_TOKEN', 'GITHUB_PERSONAL_ACCESS_TOKEN' 等,替换为你在对应平台申请的 API 密钥或 Token。

服务器配置

  • 本仓库提供 JSON 格式的 MCP 服务器配置信息,MCP 客户端需要使用这些信息来配置如何启动和连接到对应的 MCP 服务器。以下是配置示例,包含了服务器名称 (server name)、启动命令 (command) 及其参数 (args)。
{
    "mcpServers": {
        "slack": {
            "server name": "slack",        // 服务器名称,用于在 MCP 客户端中标识和引用
            "command": "docker",           // 启动服务器的命令,这里使用 docker
            "args": [                      // 启动命令的参数列表
                "run",
                "-i",
                "--rm",
                "-e",
                "SLACK_BOT_TOKEN=your-slack-bot-token",   // 环境变量:Slack Bot Token,请替换为你的 Slack Bot Token
                "-e",
                "SLACK_TEAM_ID=your-slack-team-id",       // 环境变量:Slack Team ID,请替换为你的 Slack Team ID
                "ghcr.io/tatsuiman/docker-mcp-notion-server-slack:main" // Docker 镜像名称,指向 Slack MCP 服务器的 Docker 镜像
            ]
        },
        "notion": {
            "server name": "notion",       // 服务器名称,用于在 MCP 客户端中标识和引用
            "command": "docker",           // 启动服务器的命令,这里使用 docker
            "args": [                      // 启动命令的参数列表
                "run",
                "-i",
                "--rm",
                "-e",
                "NOTION_API_TOKEN=your-integration-token", // 环境变量:Notion Integration Token,请替换为你的 Notion Integration Token
                "ghcr.io/tatsuiman/docker-mcp-notion-server-notion-server:main" // Docker 镜像名称,指向 Notion MCP 服务器的 Docker 镜像
            ]
        },
        "github": {
            "server name": "github",       // 服务器名称,用于在 MCP 客户端中标识和引用
            "command": "docker",           // 启动服务器的命令,这里使用 docker
            "args": [                      // 启动命令的参数列表
                "run",
                "-i",
                "--rm",
                "-e",
                "GITHUB_PERSONAL_ACCESS_TOKEN=your-github-token", // 环境变量:GitHub Personal Access Token,请替换为你的 GitHub Personal Access Token
                "ghcr.io/tatsuiman/docker-mcp-notion-server-github:main" // Docker 镜像名称,指向 GitHub MCP 服务器的 Docker 镜像
            ]
        }
    }
}
  • MCP 客户端需要读取以上 JSON 配置,并根据 "server name" 找到对应的 "command" 和 "args",用于启动和连接到相应的 MCP 服务器。例如,如果 MCP 客户端需要连接到名为 "notion" 的服务器,则需要执行配置中 "notion" 对应的 "command" 和 "args" 来启动 Notion MCP 服务器。

基本使用方法

  1. 启动 MCP 服务器: 根据 MCP 客户端的需求,选择并配置需要启动的 MCP 服务器 (Slack, Notion, 或 GitHub)。复制相应的 'command' 和 'args' 配置到终端或脚本中执行,即可启动对应的 Docker 容器,MCP 服务器将在容器内运行。
  2. MCP 客户端连接: 配置 MCP 客户端连接到已启动的 MCP 服务器。具体的连接方式和协议 (如 Stdio, SSE, WebSocket) 需要参考对应 MCP 服务器和 MCP 客户端的文档。
  3. 使用资源和工具: 通过 MCP 客户端,可以利用连接的 MCP 服务器提供的资源 (Resources)、工具 (Tools) 和 Prompt 模板 (Prompts),扩展 LLM 应用的功能。具体的使用方法请参考对应 MCP 服务器 (Slack, Notion, GitHub) 以及 MCP 客户端的文档。

信息

分类

开发者工具