Netlify MCP服务
这是一个可以与 Netlify 一起使用的 MCP 服务器。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"netlify": {
"args": [
"path/to/netlify-server/build/index.js"
],
"autoApprove": [],
"command": "node",
"disabled": false
}
}
}
可用工具 (9 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
deploy-site 3 个参数 需填 1 项
Deploy a site to Netlify
必填参数:path
list-sites
List all Netlify sites
该工具无需必填参数,直接调用即可
set-env-vars 2 个参数 需填 2 项
Set environment variables for a site
必填参数:siteId、envVars
get-deploy-status 2 个参数 需填 1 项
Get deployment status for a site
必填参数:siteId
add-dns-record 5 个参数 需填 4 项
Add a DNS record to a site
必填参数:siteId、domain、type、value
deploy-function 3 个参数 需填 2 项
Deploy a serverless function
必填参数:path、name
manage-form 3 个参数 需填 3 项
Manage form submissions
必填参数:siteId、formId、action
manage-plugin 4 个参数 需填 3 项
Manage site plugins
必填参数:siteId、pluginId、action
manage-hook 4 个参数 需填 4 项
Manage webhook notifications
必填参数:siteId、event、url、action
服务介绍
Netlify MCP 服务器
这是一个 Model Context Protocol 服务器,为通过 Netlify CLI 使用 Netlify 提供了全面的工具。该服务器支持部署站点、管理部署、处理环境变量、DNS 设置、无服务器函数、表单、插件和 Webhook。
功能
- 部署和管理站点
- 配置 DNS 设置
- 部署无服务器函数
- 管理表单提交
- 处理环境变量
- 安装和配置插件
- 设置 Webhook 通知
- 全面的错误处理
- 类型安全的参数验证
安装
通过 Smithery 安装
要通过 Smithery 自动安装适用于 Claude 桌面版的 Netlify MCP 服务器:
npx -y @smithery/cli install @DynamicEndpoints/Netlify-MCP-Server --client claude
手动安装
- 安装依赖项:
npm install
- 构建服务器:
npm run build
- 全局安装 Netlify CLI:
npm install -g netlify-cli
- 与 Netlify 进行身份验证:
netlify login
这将打开一个浏览器窗口进行身份验证。身份验证后,CLI 将本地存储您的令牌。
配置
将以下内容添加到您的 MCP 设置文件中(位置因平台而异):
{
"mcpServers": {
"netlify": {
"command": "node",
"args": ["path/to/netlify-server/build/index.js"],
"disabled": false,
"autoApprove": []
}
}
}
设置文件的位置:
- Windows:
%APPDATA%/Windsurf/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/claude/settings.json
可用工具
站点管理
deploy-site
将站点部署到 Netlify
{
"path": "path/to/site", // Required: Path to the site directory
"prod": false, // Optional: Deploy to production
"message": "New deployment" // Optional: Deploy message
}
list-sites
列出所有 Netlify 站点
// No parameters required
get-deploy-status
获取站点的部署状态
{
"siteId": "your-site-id", // Required: Site ID or name
"deployId": "deploy-id" // Optional: Specific deployment ID
}
DNS 管理
add-dns-record
向站点添加 DNS 记录
{
"siteId": "your-site-id", // Required: Site ID or name
"domain": "example.com", // Required: Domain name
"type": "A", // Required: Record type (A, AAAA, CNAME, MX, TXT, NS)
"value": "192.0.2.1", // Required: Record value
"ttl": 3600 // Optional: Time to live in seconds
}
无服务器函数
deploy-function
部署无服务器函数
{
"path": "path/to/function", // Required: Path to the function file
"name": "my-function", // Required: Function name
"runtime": "nodejs" // Optional: Function runtime
}
表单管理
manage-form
管理表单提交
{
"siteId": "your-site-id", // Required: Site ID or name
"formId": "form-id", // Required: Form ID
"action": "enable" // Required: Action (enable, disable, delete)
}
插件管理
manage-plugin
管理站点插件
{
"siteId": "your-site-id", // Required: Site ID or name
"pluginId": "plugin-id", // Required: Plugin ID
"action": "install", // Required: Action (install, uninstall, update)
"config": { // Optional: Plugin configuration
"setting": "value"
}
}
环境变量
set-env-vars
为站点设置环境变量
{
"siteId": "your-site-id", // Required: Site ID or name
"envVars": { // Required: Environment variables
"API_KEY": "your-api-key",
"DEBUG": "false"
}
}
Webhook 管理
manage-hook
管理 Webhook 通知
{
"siteId": "your-site-id", // Required: Site ID or name
"event": "deploy-succeeded", // Required: Event type
"url": "https://example.com", // Required: Webhook URL
"action": "create" // Required: Action (create, delete, update)
}
错误处理
服务器提供了详细的错误信息,包括:
- 身份验证失败
- 无效的站点 ID
- 部署失败
- 网络连接问题
- 无效的参数类型
- DNS 配置错误
- 函数部署问题
- 插件安装问题
- Webhook 配置错误
开发
要修改服务器:
- 在
src/index.ts中更新源代码 - 使用
npm run build构建 - 通过部署测试站点来测试您的更改
类型安全
服务器使用 Zod 对所有参数进行运行时类型验证,确保:
- 必需参数已提供
- 参数类型正确
- 可选参数得到适当处理
- 枚举值已验证
- 复杂对象结构已验证