关于 Netlify MCP Server
Netlify MCP Server 让支持 MCP 的环境通过 Netlify API 管理 Netlify 站点。适合需要从 GitHub 仓库创建站点、查看站点详情、列出站点或删除站点的用户。
主要功能
- 01从 GitHub 仓库创建站点
- 02分页列出站点
- 03获取站点详情
- 04删除站点
- 05使用 Netlify 令牌认证
适用场景
- 01将 GitHub 仓库部署到 Netlify
- 02查看可访问的 Netlify 站点
- 03检查站点详情
- 04删除 Netlify 站点
MCP 相关
向 MCP 客户端提供工具,通过 Netlify API 创建、列出、查询详情和删除 Netlify 站点。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Netlify MCP 服务
用于管理 Netlify 站点的模型上下文协议(MCP)服务。此服务通过 MCP 与 Netlify API 无缝集成,让你能够直接在支持 MCP 的环境中创建、管理和部署站点。
功能
- 🚀 从 GitHub 仓库创建新站点
- 📋 分页列出已有的 Netlify 站点
- 🔍 获取详细的站点信息
- 🗑️ 删除站点
- 🔐 使用 Netlify API 进行安全身份验证
- ⚡ 使用 TypeScript 构建,确保类型安全
- 🐳 支持 Docker,便于部署
要求
- Node.js 18 或更高版本
- 拥有 API 访问权限的 Netlify 账户
- 用于部署站点的 GitHub 仓库
安装
从源代码安装
- 克隆此仓库:
git clone https://github.com/MCERQUA/netlify-mcp.git
cd netlify-mcp
- 安装依赖:
npm install
- 构建项目:
npm run build
使用 Docker
docker build -t netlify-mcp .
docker run -e NETLIFY_ACCESS_TOKEN=your_token_here netlify-mcp
配置
获取 Netlify 访问令牌
- 在 https://app.netlify.com/signup 创建 Netlify 账户
- 前往 User Settings > Applications > Personal access tokens
- 点击 “New access token”
- 为其命名(例如 “MCP Integration”)
- 复制生成的令牌
设置 MCP
- 在项目根目录创建
.env文件:
NETLIFY_ACCESS_TOKEN=your_token_here
- 将服务添加到 MCP 设置配置中:
{
"mcpServers": {
"netlify": {
"command": "node",
"args": ["path/to/netlify-mcp/build/index.js"],
"env": {
"NETLIFY_ACCESS_TOKEN": "your_token_here"
},
"disabled": false,
"autoApprove": []
}
}
}
可用工具
createSiteFromGitHub
从 GitHub 仓库创建新的 Netlify 站点。
interface CreateSiteFromGitHubArgs {
name: string; // Name for the new site (subdomain)
repo: string; // GitHub repository (format: owner/repo)
branch?: string; // Branch to deploy from (default: main)
buildCommand: string; // Build command to run
publishDir: string; // Directory containing the built files
envVars?: Record<string, string>; // Environment variables
}
listSites
列出你有权访问的所有 Netlify 站点。
interface ListSitesArgs {
filter?: 'all' | 'owner' | 'guest'; // Filter for sites
page?: number; // Page number for pagination
perPage?: number; // Items per page (max 100)
}
getSite
获取特定站点的详细信息。
interface GetSiteArgs {
siteId: string; // ID or name of the site
}
deleteSite
删除 Netlify 站点。
interface DeleteSiteArgs {
siteId: string; // ID or name of the site
}
文档
如需了解更多详情,请参阅:
开发
# Run in development mode with auto-rebuild
npm run dev
# Clean build artifacts
npm run clean
# Build the project
npm run build
故障排除
常见问题
-
“NETLIFY_ACCESS_TOKEN environment variable is required”
- 确保已在环境变量或
.env文件中设置令牌
- 确保已在环境变量或
-
“Failed to create site: 401 Unauthorized”
- 你的访问令牌可能无效或已过期
- 在 Netlify 设置中生成新令牌
-
“Invalid repo format”
- 确保仓库格式为
owner/repo - 示例:
facebook/react,而不是https://github.com/facebook/react
- 确保仓库格式为
贡献
欢迎贡献!请随时提交 Pull Request。
- Fork 此仓库
- 创建功能分支(
git checkout -b feature/amazing-feature) - 提交更改(
git commit -m 'Add some amazing feature') - 将分支推送到远程仓库(
git push origin feature/amazing-feature) - 发起 Pull Request
许可证
此项目采用 MIT 许可证,详情请参阅 LICENSE 文件。
致谢
- 感谢 Model Context Protocol 提供 MCP 框架
- 感谢 Netlify 提供出色的部署平台
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。