
Netlify MCP Server
Manage and deploy your Netlify sites effortlessly.
Installation
Installing for Claude Desktop
Manual Configuration Required
This MCP server requires manual configuration. Run the command below to open your configuration file:
npx mcpbar@latest edit -c claude
This will open your configuration file where you can add the Netlify MCP Server MCP server manually.
Netlify MCP Server v2.0.0
A Model Context Protocol (MCP) server for Netlify, providing comprehensive access to ALL Netlify CLI features through the latest MCP SDK v1.12.3 and Netlify CLI v22.1.3. Now with 43 tools covering Blobs, Dev Server, Recipes, Analytics, Forms, and advanced API operations.
π Latest Updates (v2.0.0 - June 2025)
- Updated to MCP SDK v1.12.3 - Latest SDK with improved performance and new capabilities
- Netlify CLI v22.1.3 - Latest Netlify CLI with new features and bug fixes
- 43 Comprehensive Tools - Complete coverage of Netlify CLI including Blobs, Dev Server, Recipes
- Netlify Blobs Support - Full blob storage management (get, set, delete, list)
- Dev Server Integration - Local development server tools for testing
- Recipe System - Access to Netlify's automation recipes
- Advanced API Access - Direct Netlify API calls and method discovery
- Enhanced Analytics - Site analytics and performance monitoring
- Form Management - Complete form and submission handling
- Real-time Monitoring - Live log streaming and deployment watching
- Account Management - Multi-account switching and management
- Improved Resource System - Better resource handling with JSON output
- Smart Prompts - Pre-built prompts for common Netlify workflows
- Better Error Handling - More robust error reporting and recovery
- Modern TypeScript Configuration - Updated to latest TypeScript best practices
β¨ Enhanced Features (NEW!)
π― AI-Optimized Workflow Prompts
28 comprehensive workflow templates designed specifically for AI coding agents:
netlify-deploy
- Complete deployment with validation and monitoringnetlify-setup
- Full site setup from creation to productionnetlify-environment-setup
- Environment configuration across contextsnetlify-troubleshoot
- Comprehensive issue diagnosis and resolutionnetlify-function-deploy
- Function deployment with best practicesnetlify-migration
- Site migration with optimizationnetlify-optimization
- Performance, security, and SEO optimizationnetlify-security-audit
- Complete security audit and hardeningnetlify-performance-audit
- Comprehensive performance analysis and optimizationnetlify-edge-functions-setup
- Edge functions deployment and configurationnetlify-blobs-management
- Comprehensive blob storage management workflownetlify-forms-setup
- Form handling and submission management setupnetlify-analytics-dashboard
- Analytics dashboard setup and monitoringnetlify-domain-setup
- Custom domain configuration and DNS managementnetlify-redirects-config
- URL redirects and rewrite rules configurationnetlify-build-optimization
- Build process optimization and cachingnetlify-monitoring-setup
- Comprehensive monitoring and alerting setupnetlify-backup-strategy
- Site backup and disaster recovery planningnetlify-team-collaboration
- Team workflow and collaboration setupnetlify-api-integration
- API integration and webhook configurationnetlify-staging-workflow
- Staging environment and preview deployment workflownetlify-seo-optimization
- SEO optimization and search engine visibilitynetlify-cdn-optimization
- CDN and edge network optimizationnetlify-compliance-audit
- Compliance and accessibility auditnetlify-cost-optimization
- Cost analysis and optimization recommendationsnetlify-disaster-recovery
- Disaster recovery testing and proceduresnetlify-advanced-deployment
- Advanced deployment strategies and blue-green deployments
π Comprehensive Resources with Real-time Subscriptions
32 enhanced data sources with live updates:
- Site Resources: Overview, functions, environment variables, deploys, forms, analytics, logs, edge functions, domains, redirects, headers, performance, security, bandwidth, errors
- Blob Storage: Complete blob storage management and data access
- Recipes & API: Automation recipes and direct API method access
- Account Resources: Usage statistics, team information, billing, members, integrations, tokens, notifications
- Global Resources: Service status, deployment regions, and system health
- Real-time Features: Live subscriptions, automatic cache invalidation, event notifications
π Advanced Subscription System
- Subscribe to any resource URI for real-time updates
- Automatic cache management with intelligent refresh
- Targeted notifications based on change types
- Retry logic for failed notifications
Features
π οΈ Comprehensive Netlify CLI Coverage (43 Tools)
Complete Netlify functionality at your fingertips:
- π Deployment & Build Management - Deploy, build, trigger, and monitor deployments
- ποΈ Site Administration - Create, manage, and configure Netlify sites
- βοΈ Environment Management - Full environment variable control and cloning
- π¦ Netlify Blobs Storage - Complete blob storage operations (get, set, delete, list)
- β‘ Serverless Functions - Build, invoke, and monitor function execution
- π§ Development Tools - Local dev server and built site serving
- π€ Recipe Automation - Access to Netlify's automation recipes
- π Analytics & Monitoring - Site analytics, real-time logs, and performance data
- π Form Management - Handle forms and submissions
- π Direct API Access - Make direct Netlify API calls with method discovery
- π₯ Account Management - Multi-account switching and team management
π οΈ Tools (43 Available)
Core Deployment
deploy-site
- Deploy a site to Netlify (production or preview)trigger-build
- Trigger a new build and deploybuild-site
- Build site locally with context options
Site Management
list-sites
- List all Netlify sitescreate-site
- Create a new Netlify sitedelete-site
- Delete a Netlify siteget-site-info
- Get detailed site informationlink-site
- Link current directory to a Netlify siteunlink-site
- Unlink current directory from Netlify siteget-status
- Get current Netlify statusinit-site
- Initialize a new site in current directoryopen-site
- Open site in browser
Environment Variables
set-env-vars
- Set environment variables for a siteget-env-var
- Get a specific environment variableunset-env-var
- Unset an environment variableclone-env-vars
- Clone environment variables between sitesimport-env
- Import environment variables from file
Deployments & History
list-deploys
- List deploys for a siteget-deploy-info
- Get information about a specific deploycancel-deploy
- Cancel a running deployrestore-deploy
- Restore a previous deploywatch-deploy
- Watch deployment progress in real-time
Functions & Edge Functions
list-functions
- List all functions for a siteget-logs
- Get function logs for a sitebuild-function
- Build a serverless functioninvoke-function-advanced
- Invoke function with advanced options
Netlify Blobs (Storage)
get-blob
- Get a blob from Netlify Blobs storageset-blob
- Set/store a blob in Netlify Blobs storagedelete-blob
- Delete a blob from storagelist-blobs
- List all blobs in a store
Development & Testing
start-dev-server
- Start Netlify dev server locallyserve-built-site
- Serve a built site locally
Recipes & Automation
list-recipes
- List available Netlify recipesrun-recipe
- Run a specific Netlify recipe
API & Advanced Operations
call-netlify-api
- Make direct Netlify API callslist-api-methods
- List available API methods
Forms & Analytics
get-form-submissions
- Get form submissions for a sitemanage-form
- Manage site forms and submissionsget-analytics
- Get site analytics data
Monitoring & Logs
stream-logs
- Stream real-time logs from functionsenable-branch-deploy
- Enable branch deploys for a specific branchdisable-branch-deploy
- Disable branch deploys for a specific branch
Account Management
switch-account
- Switch between Netlify accounts
π Resources (32 Available)
netlify://sites
- List all sites (JSON)netlify://sites/{siteId}/overview
- Complete site overview with functions, deployments, and analyticsnetlify://sites/{siteId}/functions
- List site functions (JSON)netlify://sites/{siteId}/env
- List environment variables (JSON)netlify://sites/{siteId}/deploys
- List site deployments (JSON)netlify://sites/{siteId}/deploys/{deployId}
- Detailed information about a specific deploymentnetlify://sites/{siteId}/forms
- Form submissions and configurationnetlify://sites/{siteId}/analytics
- Site usage analytics and performance metricsnetlify://sites/{siteId}/logs
- Recent site and function logsnetlify://sites/{siteId}/edge-functions
- List and manage edge functions for a sitenetlify://sites/{siteId}/build-hooks
- Manage build hooks and webhook configurationsnetlify://sites/{siteId}/domains
- Custom domains and DNS configurationnetlify://sites/{siteId}/redirects
- URL redirects and rewrite rulesnetlify://sites/{siteId}/headers
- Custom HTTP headers configurationnetlify://sites/{siteId}/performance
- Site performance analytics and optimization datanetlify://sites/{siteId}/security
- Security headers, SSL, and vulnerability analysisnetlify://sites/{siteId}/bandwidth
- Site bandwidth consumption and analyticsnetlify://sites/{siteId}/errors
- Site error logs and exception trackingnetlify://blobs/{storeName}
- Netlify Blobs storage managementnetlify://blobs/{storeName}/{key}
- Individual blob data and metadatanetlify://recipes
- Netlify automation recipes and templatesnetlify://recipes/{recipeName}
- Detailed recipe configuration and stepsnetlify://api/methods
- Available Netlify API endpoints and methodsnetlify://account/usage
- Account-level usage statistics and limitsnetlify://account/teams
- Team membership and permissionsnetlify://account/billing
- Account billing details and usage costsnetlify://account/members
- Team member management and permissionsnetlify://account/integrations
- Connected services and integrationsnetlify://account/tokens
- Personal access tokens and API keysnetlify://account/notifications
- Email and webhook notification preferencesnetlify://global/regions
- Available deployment regions and edge locationsnetlify://status
- Current Netlify service status and health
π‘ Smart Prompts (28 Available)
netlify-deploy
- Deploy a site with best practices guidancenetlify-setup
- Set up a new Netlify site with configurationnetlify-environment-setup
- Environment configuration across contextsnetlify-troubleshoot
- Comprehensive issue diagnosis and resolutionnetlify-function-deploy
- Function deployment with best practicesnetlify-migration
- Site migration with optimizationnetlify-optimization
- Performance, security, and SEO optimizationnetlify-security-audit
- Complete security audit and hardeningnetlify-performance-audit
- Comprehensive performance analysis and optimizationnetlify-edge-functions-setup
- Edge functions deployment and configurationnetlify-blobs-management
- Comprehensive blob storage management workflownetlify-forms-setup
- Form handling and submission management setupnetlify-analytics-dashboard
- Analytics dashboard setup and monitoringnetlify-domain-setup
- Custom domain configuration and DNS managementnetlify-redirects-config
- URL redirects and rewrite rules configurationnetlify-build-optimization
- Build process optimization and cachingnetlify-monitoring-setup
- Comprehensive monitoring and alerting setupnetlify-backup-strategy
- Site backup and disaster recovery planningnetlify-team-collaboration
- Team workflow and collaboration setupnetlify-api-integration
- API integration and webhook configurationnetlify-staging-workflow
- Staging environment and preview deployment workflownetlify-seo-optimization
- SEO optimization and search engine visibilitynetlify-cdn-optimization
- CDN and edge network optimizationnetlify-compliance-audit
- Compliance and accessibility auditnetlify-cost-optimization
- Cost analysis and optimization recommendationsnetlify-disaster-recovery
- Disaster recovery testing and proceduresnetlify-advanced-deployment
- Advanced deployment strategies and blue-green deployments
Installation
Installing via Smithery
To install Netlify MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @DynamicEndpoints/Netlify-MCP-Server --client claude
Manual Installation
- Clone this repository:
git clone <repository-url>
cd Netlify-MCP-Server
- Install dependencies:
npm install
- Build the project:
npm run build
- Ensure Netlify CLI is installed (latest version):
npm install -g netlify-cli@latest
Authentication
This MCP server interacts with the Netlify CLI, which requires authentication with your Netlify account. Since the server runs non-interactively, you must use a Personal Access Token (PAT).
-
Generate a PAT:
- Go to your Netlify User Settings > Applications > Personal access tokens (Direct Link)
- Select New access token
- Give it a description (e.g., "MCP Server Token")
- Set an expiration date
- Select Generate token
- Copy the token immediately and store it securely
-
Configure the Token: You need to make this token available to the MCP server as the
NETLIFY_AUTH_TOKEN
environment variable. Add it to theenv
section of the server's configuration in your MCP settings file (see below).
Note: Using netlify login
is not suitable for this server as it requires interactive browser authentication.
Configuration
Add the following configuration to your MCP settings file, replacing "YOUR_NETLIFY_PAT_HERE"
with your actual Personal Access Token:
{
"mcpServers": {
"netlify": {
"command": "node",
"args": ["C:\\path\\to\\Netlify-MCP-Server\\build\\index.js"],
"env": {
"NETLIFY_AUTH_TOKEN": "YOUR_NETLIFY_PAT_HERE"
},
"disabled": false,
"autoApprove": []
}
}
}
Settings file locations:
- Claude Desktop (Windows):
%APPDATA%\Claude\claude_desktop_config.json
- Claude Desktop (macOS):
~/Library/Application Support/Claude/claude_desktop_config.json
- Other MCP clients: Consult your specific MCP client documentation
Available Tools (Netlify CLI v22.1.3 Compatible)
(Parameters are based on the Zod schemas defined in src/index.ts
)
Site & Deployment Management
deploy-site
Deploy a site directory to Netlify.
{
"path": "string", // Required: Path to the site directory
"prod": "boolean?", // Optional: Deploy to production
"message": "string?" // Optional: Deploy message
}
Example:
{
"path": "./dist",
"prod": true,
"message": "Deploying latest changes"
}
list-sites
List all Netlify sites linked to your account.
{} // No parameters
Example:
{}
trigger-build
Trigger a new build/deploy for a site. Site context is passed via NETLIFY_SITE_ID
env var.
{
"siteId": "string", // Required: Site ID or name
"message": "string?" // Optional: Deploy message
}
Example:
{
"siteId": "your-site-id-here",
"message": "Triggering rebuild"
}
build-site
Run a Netlify build locally (mimics Netlify build environment). Site context is passed via NETLIFY_SITE_ID
env var if siteId
is provided.
{
"siteId": "string?", // Optional: Site ID (if project dir not linked)
"context": "string?", // Optional: Build context (e.g., 'production', 'deploy-preview')
"dry": "boolean?" // Optional: Run a dry build (list steps without executing)
}
Example:
{
"siteId": "your-site-id-here",
"context": "production"
}
link-site
Link the current project directory to a Netlify site (requires Site ID for non-interactive use).
{
"siteId": "string" // Required: Site ID to link to.
}
Example:
{
"siteId": "your-site-id-here"
}
unlink-site
Unlink the current project directory from the associated Netlify site.
{} // No parameters
Example:
{}
get-status
Show the Netlify status for the linked site/directory. (Will likely fail if run via MCP server unless the server directory itself is linked).
{} // No parameters
Example:
{}
create-site
Create a new site on Netlify (non-interactively).
{
"name": "string?", // Optional: Site name (subdomain)
"accountSlug": "string?" // Optional: Account slug for the team (defaults to 'playhousehosting' if omitted)
}
Example:
{
"name": "my-awesome-new-site"
}
delete-site
Delete a site from Netlify.
{
"siteId": "string", // Required: Site ID to delete
"force": "boolean?" // Optional: Force deletion without confirmation (default: true)
}
Example:
{
"siteId": "site-id-to-delete",
"force": true
}
Advanced Site Management
init-site
Initialize a new site in the current directory.
{
"name": "string?", // Optional: Site name
"accountSlug": "string?", // Optional: Account slug
"manual": "boolean?" // Optional: Skip git detection
}
Example:
{
"name": "my-new-site",
"manual": true
}
open-site
Open site in browser.
{
"siteId": "string?", // Optional: Site ID (if not linked)
"admin": "boolean?" // Optional: Open admin panel instead of site
}
Example:
{
"siteId": "your-site-id-here",
"admin": true
}
watch-deploy
Watch deployment progress in real-time.
{
"siteId": "string", // Required: Site ID
"deployId": "string?" // Optional: Specific deploy ID to watch
}
Example:
{
"siteId": "your-site-id-here",
"deployId": "deploy-id-123"
}
Environment Variable Management
set-env-vars
Set one or more environment variables for a site. Site context is passed via NETLIFY_SITE_ID
env var.
{
"siteId": "string", // Required: Site ID or name
"envVars": { // Required: Object of key-value pairs
"KEY": "value"
}
}
Example:
{
"siteId": "your-site-id-here",
"envVars": {
"API_KEY": "secret123",
"NODE_ENV": "production"
}
}
get-env-var
Get the value of a specific environment variable. Site context is passed via NETLIFY_SITE_ID
env var if siteId
is provided.
{
"siteId": "string?", // Optional: Site ID (if not linked)
"key": "string", // Required: The environment variable key
"context": "string?", // Optional: Specific context (e.g., 'production')
"scope": "string?" // Optional: Specific scope (e.g., 'builds', 'functions')
}
Example:
{
"siteId": "your-site-id-here",
"key": "API_KEY"
}
unset-env-var
Unset (delete) an environment variable. Site context is passed via NETLIFY_SITE_ID
env var if siteId
is provided.
{
"siteId": "string?", // Optional: Site ID (if not linked)
"key": "string", // Required: The environment variable key
"context": "string?" // Optional: Specific context to unset from (otherwise all)
}
Example:
{
"siteId": "your-site-id-here",
"key": "OLD_VAR"
}
import-env
Import environment variables from a .env
file. Site context is passed via NETLIFY_SITE_ID
env var.
{
"siteId": "string", // Required: Site ID or name
"filePath": "string", // Required: Path to the .env file
"replace": "boolean?" // Optional: Replace existing variables instead of merging
}
Example:
{
"siteId": "your-site-id-here",
"filePath": ".env.production",
"replace": true
}
clone-env-vars
Clone environment variables from one site to another. Requires source site to be linked or specified via NETLIFY_SITE_ID
.
{
"fromSiteId": "string", // Required: Source Site ID
"toSiteId": "string" // Required: Destination Site ID
}
Example:
{
"fromSiteId": "source-site-id",
"toSiteId": "destination-site-id"
}
Serverless Functions
get-logs
View function logs. Site context is passed via NETLIFY_SITE_ID
env var.
{
"siteId": "string", // Required: Site ID or name
"function": "string?" // Optional: Specific function name to filter logs
}
Example:
{
"siteId": "your-site-id-here",
"function": "my-serverless-func"
}
Available Resources (Netlify CLI v22.1.3 Compatible)
Access Netlify data directly using these resource URIs:
netlify://sites
: List all sites (JSON output ofsites:list --json
)netlify://sites/{siteId}/functions
: List functions for a site (JSON output offunctions:list --json
, requiresNETLIFY_SITE_ID={siteId}
env var)netlify://sites/{siteId}/env
: List environment variables for a site (JSON output ofenv:list --json
, requiresNETLIFY_SITE_ID={siteId}
env var)netlify://sites/{siteId}/deploys
: List deployments for a site (JSON output ofdeploys:list --json
, requiresNETLIFY_SITE_ID={siteId}
env var)netlify://sites/{siteId}/forms
: List forms for a site (JSON output from form management tools)netlify://sites/{siteId}/analytics
: Site analytics data (JSON output from analytics tools)netlify://blobs/{storeName}
: List blobs in a store (JSON output from blob storage tools)netlify://recipes
: List available recipes (JSON output from recipe tools)netlify://api/methods
: List available API methods (JSON output from API discovery tools)
Limitations (Netlify CLI v22.1.3)
- Interactive Commands: Commands requiring interactive prompts (like
netlify login
,netlify init
without parameters, interactive dev mode) are not supported by this server. Use a Personal Access Token for authentication and provide required parameters explicitly. - Site Context: Many commands require site context. This server passes the required
siteId
via theNETLIFY_SITE_ID
environment variable when executing these commands. Commands that operate on the current working directory (likestatus
andunlink
) may not function as expected when called via the MCP server unless the server directory is properly linked. - Browser-dependent Features: Some commands that require opening browsers or interactive authentication flows may have limited functionality in the MCP server environment.
- Real-time Streaming: While log streaming is supported, the output is captured and returned rather than providing a true real-time stream interface.
Note: This comprehensive implementation now covers all major Netlify CLI functionality including Blobs, Dev Server, Recipes, Analytics, Forms, and advanced API operations. Previously unsupported features like DNS, Plugins, and Hooks may still have limited support depending on CLI capabilities.
Development
To modify the server:
- Update source code in
src/index.ts
. - Build with
npm run build
. - Restart the MCP server in your client application to load changes.
- Test your changes.
Resources
Stars
6Forks
7Last commit
6 days agoRepository age
4 monthsLicense
MIT
Auto-fetched from GitHub .
MCP servers similar to Netlify MCP Server:

Β
Stars
Forks
Last commit

Β
Stars
Forks
Last commit

Β
Stars
Forks
Last commit