使用说明
MCP服务器
此存储库包含可部署在Stigen.io编排器平台上的各种MCP(模型上下文协议)服务器的Docker映像。
概述
MCP服务器有不同的种类:
- 基于Python:通过运行
uvx(uv执行) - 基于节点:通过运行
npx(节点执行) - 基于Docker:预制集装箱
该存储库提供了一种标准化的方式来容器化Python和基于Node的MCP服务器,同时还支持自定义Docker映像。
存储库结构
servers/
├── python/ # Python-based MCP servers
│ ├── base/ # Base Python Docker image
│ └── time/ # Time server implementation
├── node/ # Node-based MCP servers
│ ├── base/ # Base Node Docker image
│ └── playwright/ # Playwright automation server
└── registry.json # Server registry metadata
支持的服务器
内置服务器
| 服务器 | 类型 | 描述 | 图像 |
|---|---|---|---|
| time | 巨蟒 | 提供时间和时区功能 | ghcr.io/stigenai/mcp-time:latest |
| 剧作家 | NODE | 浏览器自动化和playwright的网络抓取 | ghcr.io/stigenai/mcp-playwright:latest |
| zettelkasten | PYTHON | 使用SQLite存储实施zettelkasten方法论进行知识管理 | ghcr.io/stigenai/mcp-zettelkasten:latest |
自定义服务器
用户还可以通过指定以下内容来携带自己的Docker容器 serverType: "custom" 并提供自己的 containerImage.
在当地建设
先决条件
- 码头工人
- Bash
- jq
- 疫情
构建特定服务器
./scripts/build.sh time
构建所有服务器
./scripts/build-all.sh
GitHub 操作
该存储库包括用于构建、验证、同步和维护的GitHub Actions工作流:
- build-servers.yml:检测更改的MCP服务器,验证注册表/配置完整性,并构建更改的服务器映像(PR+推送+手动)
- build-base-images.yml:构建共享的Python/Node基础映像(计划+手动+可重用)
- build-reistry.yml:当注册表元数据更改时,生成并发布注册表OCI映像
- sync-mcp-repos.yml:定期将上游MCP提交/发布元数据同步到
servers/registry.json并忽略已存档/禁用的上游GitHub存储库(将过时的提交/发布元数据回填到null) - cleanup-images.yml:清除GHCR中的旧容器图像标签
- pr-notify.yml:为新的可供审核的PR发送Slack通知
服务器配置
每个服务器都有一个 config.yml 定义以下内容的文件:
- 名字:服务器标识符
- 类型:python、node或docker
- 版本:语义版本
- 环境:具有默认值的环境变量
- 资源:CPU和内存要求
例子:
name: mcp-time
type: python
version: 1.0.0
description: "MCP server that provides time and timezone functionality"
environment:
- name: MCP_PORT
default: "3000"
required: false
secret: false
resources:
cpu: 0.25
memory: 256
环境变量和秘密
服务器可以在其配置中定义环境变量:
- 必需的:是否必须提供变量
- 秘密:变量是否包含敏感数据
- 默认:默认值(如果未提供)
秘密按用户/组织加密存储,并在运行时注入。
与编排器集成
服务器注册表有两种可用方式:
1.作为OCI映像(推荐)
# Pull the registry image
docker pull ghcr.io/stigenai/mcp-servers-registry:latest
# Extract registry.json using the provided script
./scripts/get-registry.sh
# Or manually extract
docker create --name temp-registry ghcr.io/stigenai/mcp-servers-registry:latest
docker cp temp-registry:/registry.json ./registry.json
docker rm temp-registry
2.通过GitHub原始URL
https://raw.githubusercontent.com/stigenai/mcp-servers/main/servers/registry.json
这允许编排器:
- 列出可用的服务器类型
- 获取默认配置
- 验证服务器部署
- 自动填充容器图像
贡献
看 贡献.md 用于依赖性PR分流策略和贡献规则。
要添加新的MCP服务器,请执行以下操作:
- 在下创建新目录
servers/[type]/[name] - 添加a
Dockerfile - 添加a
config.yml - 更新
servers/registry.json - 在中添加更改日志条目
CHANGELOG.md对于用户可见的更改 - 本地测试
./scripts/build.sh [name] - 提交拉取请求
有关发行说明约定,请参见 docs/release/entry-process.md.
更新日志
许可证
[添加许可证信息]