关于 MCP Servers Collection
MCP Servers Collection 使用 Docker Compose 和 Supergateway,在独立容器中运行多个 MCP 服务,并通过 SSE 暴露接口。它适合需要集中启动、分别管理 GitHub、Linear、Notion、文件系统等服务的开发者。
主要功能
- 01Docker Compose 启动多个服务
- 02每个服务独立容器和端口
- 03通过 SSE 暴露连接端点
- 04持久化数据使用挂载卷
- 05支持单独重启和查看日志
适用场景
- 01集中运行多个 MCP 服务
- 02按需连接 GitHub 或 Linear 服务
- 03为 MCP 客户端提供本地 SSE 端点
MCP 相关
该项目通过 Supergateway 将多个 MCP 服务以 SSE 方式提供给客户端,每个服务使用独立端口。涵盖 GitHub、Linear、Notion、文件系统、记忆、文档和 Prisma 等服务。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
MCP 服务集合
本项目使用 Supergateway 运行多个 MCP 服务,通过 SSE(服务器发送事件)公开每个服务。每个服务都在专用端口上的独立容器中运行。
快速开始
# Copy environment file
cp .env.example .env
# Edit your API tokens
vim .env
# Start all services
docker-compose up -d
架构
- 多个容器,每个容器通过 Supergateway 运行特定的 MCP 服务
- 每个服务都通过唯一端口(9001-9006)公开
- 可以单独连接到各个服务,也可以一次连接所有服务
- 持久化数据存储在挂载卷中
可用命令
基本操作
# Start all services
docker-compose up -d
# Stop all services
docker-compose down
# Restart all services
docker-compose restart
# Check status
docker-compose ps
# View logs from all services
docker-compose logs -f
# View logs from specific service
docker-compose logs -f mcp-filesystem
docker-compose logs -f mcp-github
单个服务管理
# Restart specific service
docker-compose restart mcp-filesystem
docker-compose restart mcp-github
# Shell into specific container
docker-compose exec mcp-filesystem sh
docker-compose exec mcp-github sh
# View logs from last 50 lines
docker-compose logs --tail=50
清理
# Stop and remove containers
docker-compose down
# Stop and remove containers + volumes
docker-compose down -v
# Pull latest images
docker-compose pull
MCP 服务与端口
| 服务 | 端口 | 描述 | 环境变量 |
|---|---|---|---|
| mcp-github | 9001 | GitHub 仓库访问 | GITHUB_TOKEN、GITHUB_OWNER |
| mcp-linear | 9002 | Linear 问题跟踪 | LINEAR_API_KEY、GITHUB_TOKEN |
| mcp-notion | 9003 | Notion 工作区访问 | NOTION_TOKEN |
| mcp-filesystem | 9004 | 文件系统操作 | - |
| mcp-memory | 9005 | 持久化记忆 | - |
| mcp-sequential-thinking | 9006 | 逐步推理 | - |
| mcp-context7 | 9007 | 最新文档 | DEFAULT_MINIMUM_TOKENS |
| mcp-prisma | 9009 | Prisma 数据库管理 | - |
配置
环境变量
- 复制示例:
make setup(或cp .env.example .env) - 在
.env中填写实际 API 令牌:GITHUB_OWNER- 你的 GitHub 用户名GITHUB_TOKEN- GitHub 个人访问令牌NOTION_TOKEN- Notion API 令牌LINEAR_API_KEY- Linear API 密钥
连接到 MCP 服务
每个服务都可通过 SSE 访问:
- SSE 端点:
http://localhost:900X/sse - POST 消息:
http://localhost:900X/message
Claude Desktop 配置
连接到单个服务:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "supergateway", "--sse", "http://localhost:9001/sse"]
},
"linear": {
"command": "npx",
"args": ["-y", "supergateway", "--sse", "http://localhost:9002/sse"]
},
"notion": {
"command": "npx",
"args": ["-y", "supergateway", "--sse", "http://localhost:9003/sse"]
},
"filesystem": {
"command": "npx",
"args": ["-y", "supergateway", "--sse", "http://localhost:9004/sse"]
},
"memory": {
"command": "npx",
"args": ["-y", "supergateway", "--sse", "http://localhost:9005/sse"]
},
"sequential-thinking": {
"command": "npx",
"args": ["-y", "supergateway", "--sse", "http://localhost:9006/sse"]
},
"context7": {
"command": "npx",
"args": ["-y", "supergateway", "--sse", "http://localhost:9007/sse"]
},
"prisma": {
"command": "npx",
"args": ["-y", "supergateway", "--sse", "http://localhost:9009/sse"]
}
}
}
Zed Editor 配置
{
"context_servers": {
"github": {
"command": {
"path": "npx",
"args": ["-y", "supergateway", "--sse", "http://localhost:9001/sse"]
}
},
"filesystem": {
"command": {
"path": "npx",
"args": ["-y", "supergateway", "--sse", "http://localhost:9004/sse"]
}
}
}
}
服务详情
GitHub MCP 服务(端口 9001)
- 仓库操作(克隆、创建、更新)
- 问题和 PR 管理
- 仓库内的文件操作
- 需要:
GITHUB_TOKEN、GITHUB_OWNER
Linear MCP 服务(端口 9002)
- 创建和管理问题
- 项目和团队操作
- 与 GitHub 仓库集成
- 需要:
LINEAR_API_KEY、GITHUB_TOKEN
Notion MCP 服务(端口 9003)
- 数据库查询和更新
- 页面创建和修改
- 块级操作
- 需要:
NOTION_TOKEN
Filesystem MCP 服务(端口 9004)
- 文件和目录操作
- 挂载到
/workspace(映射到/home/vagrant/projects) - 读取、写入、创建和删除操作
Memory MCP 服务(端口 9005)
- 跨会话持久化记忆
- 数据存储在
/home/vagrant/.shared-memory - 用于保留上下文的键值存储
Sequential Thinking MCP 服务(端口 9006)
- 逐步推理和规划
- 多步骤问题求解
- 无外部依赖
Context7 MCP 服务(端口 9007)
- 获取最新的、特定于版本的文档
- 直接从源代码中提取代码示例
- 有助于避免使用过时的训练数据和产生幻觉 API
- 用法:在提示词中添加“use context7”
- 环境变量:
DEFAULT_MINIMUM_TOKENS(默认值:10000)
Prisma MCP 服务(端口 9009)
- Prisma 数据库管理和架构操作
- Postgres 数据库实例管理
- 架构迁移和数据库操作
- Prisma Platform 的抢先体验功能
- 无需 API 密钥(使用 Prisma CLI 身份验证)
故障排除
检查容器状态:
docker-compose ps
查看所有服务的日志:
docker-compose logs -f
查看特定服务的日志:
docker-compose logs -f mcp-github # GitHub server logs
docker-compose logs -f mcp-filesystem # Filesystem server logs
# etc.
测试单个服务的连接:
curl http://localhost:9001/sse # Should return SSE stream
curl http://localhost:9004/sse # Filesystem server
完整重启:
docker-compose down
docker-compose up -d
进入特定容器的 Shell:
docker-compose exec mcp-github sh
docker-compose exec mcp-filesystem sh
开发
添加新的 MCP 服务:
- 在
docker-compose.yml中添加服务 - 选择下一个可用端口(9007+)
- 如有需要,在
.env.example中添加环境变量 - 在此 README 中更新服务详情
监控所有服务:
docker-compose up -d && docker-compose logs -f
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。