MCP Sinstaller
🚀 MCP安全安装器 (mcp-sinstaller)
本项目提供了一个MCP服务器安装器,它可以自动从GitHub仓库中安装并将其他MCP服务器容器化。该安装器利用模型上下文协议(MCP)采样功能来分析仓库,并创建合适的Docker镜像。
🚀 快速开始
✨ 主要特性
- 自动从GitHub仓库安装并容器化MCP服务器。
- 利用MCP采样功能分析仓库并创建Docker镜像。
- 使用结构化命名方案避免多服务器安装时的命名冲突。
📦 安装指南
🔧 要求
- Docker
- 启用采样功能的MCP客户端
💡 建议在VS Code Insiders中启用采样功能
在VS Code设置中添加以下内容:
"chat.mcp.serverSampling": {
"Global in Code - Insiders: sampling": {
"allowedDuringChat": true
}
}
💻 使用示例
基础用法
推荐在VS Code中运行服务器
- uvx
- 首先,克隆仓库:
git clone https://github.com/semcp/mcp-sinstaller.git
- 然后,在VS Code设置中添加以下内容:
"mcp-sinstaller": {
"type": "stdio",
"command": "uvx",
"args": [
"--from",
"/path/to/mcp-sinstaller",
"python",
"/path/to/mcp-sinstaller/mcp_installer.py"
]
}
高级用法
服务器命名与多服务器安装
安装器使用结构化命名方案:owner-repo-servername,以避免从同一仓库安装多个服务器时发生冲突。
示例:
https://github.com/modelcontextprotocol/servers/tree/main/src/fetch→modelcontextprotocol-servers-fetchhttps://github.com/modelcontextprotocol/servers/tree/main/src/filesystem→modelcontextprotocol-servers-filesystemhttps://github.com/github/github-mcp-server→github-github-mcp-server
这种命名方式允许你从modelcontextprotocol/servers等仓库安装多个MCP服务器而不会出现命名冲突。
示例(GitHub MCP服务器)
提示:"install https://github.com/github/github-mcp-server"
GitHub Copilot:
我将从你指定的仓库安装GitHub MCP服务器。
采样 (MCP服务器):
输入:
{
"url": "https://github.com/github/github-mcp-server"
}
输出:
已成功为MCP服务器 'github-mcp-server' 构建Docker镜像!
仓库: https://github.com/github/github-mcp-server
位置: /Users/mossaka/.mcp-installer/servers/github-mcp-server
Docker镜像:
- 使用现有Dockerfile
- 镜像: mcp-installer-github-mcp-server
- 大小与创建时间: REPOSITORY:TAG SIZE CREATED AT
mcp-installer-github-mcp-server:latest 59.5MB 2025-06-09 14:52:46 -0700 PDT
- 端口: {}
- 环境变量: ['GITHUB_PERSONAL_ACCESS_TOKEN', 'GITHUB_TOOLSETS', 'GITHUB_DYNAMIC_TOOLSETS', 'GITHUB_READ_ONLY', 'GITHUB_HOST']
- 所需密钥: ['GITHUB_PERSONAL_ACCESS_TOKEN']
- 元数据: /Users/mossaka/.mcp-installer/servers/github-mcp-server/metadata.json
运行容器 (STDIO传输):
1. 设置所需的环境变量(如果有):
export GITHUB_PERSONAL_ACCESS_TOKEN=your_actual_github_personal_access_token_here
2. 交互式运行容器:
docker run -i --rm --name mcp-github-mcp-server-container -e GITHUB_PERSONAL_ACCESS_TOKEN=GitHub个人访问令牌 (必需) -e GITHUB_TOOLSETS=要启用的工具集的逗号分隔列表 (可选) -e GITHUB_DYNAMIC_TOOLSETS=设置为1以启用动态工具发现 (可选) -e GITHUB_READ_ONLY=设置为1以启用只读模式 (可选) -e GITHUB_HOST=GitHub Enterprise的自定义GitHub API端点 (可选) -e GITHUB_PERSONAL_ACCESS_TOKEN=${GITHUB_PERSONAL_ACCESS_TOKEN} mcp-installer-github-mcp-server
注意: 此服务器使用STDIO传输(标准输入/输出通信)。
- 容器以交互式模式运行 (-i标志)
- 容器退出时将自动移除 (--rm标志)
- 由于使用标准输入/输出,无需进行端口映射
3. 停止容器:
在运行容器的终端中按Ctrl+C
4. 使用MCP客户端进行后台操作:
使用你的MCP客户端通过子进程/标准输入输出进行连接
太棒了!GitHub MCP服务器已成功安装。安装完成并构建了Docker镜像。
以下是已安装的内容:
服务器名称: github-mcp-server
仓库: https://github.com/github/github-mcp-server
Docker镜像: mcp-installer-github-mcp-server:latest (59.5MB)
传输类型: STDIO(通过标准输入/输出通信)
所需配置: 服务器需要一个GITHUB_PERSONAL_ACCESS_TOKEN环境变量来与GitHub的API进行身份验证。
可选环境变量:
GITHUB_TOOLSETS: 要启用的工具集的逗号分隔列表
GITHUB_DYNAMIC_TOOLSETS: 设置为1以启用动态工具发现
GITHUB_READ_ONLY: 设置为1以启用只读模式
GITHUB_HOST: GitHub Enterprise的自定义GitHub API端点
服务器现已准备好使用。要运行它,你需要设置GitHub个人访问令牌,然后使用STDIO传输运行Docker容器以与MCP客户端进行通信。
之后,你可以在代理的MCP设置中运行docker来运行容器。
VS Code配置:
"github": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN=<PAT>",
"mcp-installer-github-mcp-server"
]
}
示例(fetch服务器)
提示:"install https://github.com/modelcontextprotocol/servers/tree/typescript-servers-0.6.2/src/fetch"
我将从你提供的特定路径安装fetch MCP服务器。
采样 (MCP服务器)
输入:
{
"url": "https://github.com/modelcontextprotocol/servers/tree/typescript-servers-0.6.2/src/fetch"
}
输出:
已成功为MCP服务器 'modelcontextprotocol-servers-fetch' 构建Docker镜像!
仓库: https://github.com/modelcontextprotocol/servers/tree/typescript-servers-0.6.2/src/fetch
位置: /Users/mossaka/.mcp-sinstaller/servers/modelcontextprotocol-servers-fetch
Docker镜像:
- 生成新的Dockerfile
- 镜像: mcp-sinstaller-modelcontextprotocol-servers-fetch
- 大小与创建时间: REPOSITORY:TAG SIZE CREATED AT
mcp-sinstaller-modelcontextprotocol-servers-fetch:latest 654MB 2025-06-09 16:28:35 -0700 PDT
- 端口: {}
- 环境变量: []
- 所需密钥: []
- 元数据: /Users/mossaka/.mcp-sinstaller/servers/modelcontextprotocol-servers-fetch/metadata.json
运行容器 (STDIO传输):
1. 设置所需的环境变量(如果有):
无需密钥
2. 交互式运行容器:
docker run -i --rm --name mcp-modelcontextprotocol-servers-fetch-container mcp-sinstaller-modelcontextprotocol-servers-fetch
注意: 此服务器使用STDIO传输(标准输入/输出通信)。
- 容器以交互式模式运行 (-i标志)
- 容器退出时将自动移除 (--rm标志)
- 由于使用标准输入/输出,无需进行端口映射
3. 使用你的MCP客户端通过子进程/标准输入输出传输进行连接
✅ fetch MCP服务器已成功安装!
服务器已构建并准备好使用。以下是关键详细信息:
服务器信息:
名称: modelcontextprotocol-servers-fetch
仓库: https://github.com/modelcontextprotocol/servers/tree/typescript-servers-0.6.2/src/fetch
传输: STDIO(标准输入/输出)
镜像大小: 654MB
VS Code配置:
"fetch": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"mcp-sinstaller-modelcontextprotocol-servers-fetch"
]
}

Firecrawl MCP Server
Firecrawl MCP Server是一个集成Firecrawl网页抓取能力的模型上下文协议服务器,提供丰富的网页抓取、搜索和内容提取功能。
TypeScript
116.1K
5分

Duckduckgo MCP Server
已认证
DuckDuckGo搜索MCP服务器,为Claude等LLM提供网页搜索和内容抓取服务
Python
67.4K
4.3分

Figma Context MCP
Framelink Figma MCP Server是一个为AI编程工具(如Cursor)提供Figma设计数据访问的服务器,通过简化Figma API响应,帮助AI更准确地实现设计到代码的一键转换。
TypeScript
62.2K
4.5分

Exa Web Search
已认证
Exa MCP Server是一个为AI助手(如Claude)提供网络搜索功能的服务器,通过Exa AI搜索API实现实时、安全的网络信息获取。
TypeScript
44.7K
5分

Minimax MCP Server
MiniMax Model Context Protocol (MCP) 是一个官方服务器,支持与强大的文本转语音、视频/图像生成API交互,适用于多种客户端工具如Claude Desktop、Cursor等。
Python
52.6K
4.8分

Edgeone Pages MCP Server
EdgeOne Pages MCP是一个通过MCP协议快速部署HTML内容到EdgeOne Pages并获取公开URL的服务
TypeScript
26.9K
4.8分

Baidu Map
已认证
百度地图MCP Server是国内首个兼容MCP协议的地图服务,提供地理编码、路线规划等10个标准化API接口,支持Python和Typescript快速接入,赋能智能体实现地图相关功能。
Python
42.3K
4.5分

Context7
Context7 MCP是一个为AI编程助手提供实时、版本特定文档和代码示例的服务,通过Model Context Protocol直接集成到提示中,解决LLM使用过时信息的问题。
TypeScript
85.1K
4.7分