mcpField
N
Netlify MCP Server

Netlify MCP Server

Local
github.com/MCERQUACloud & Infra0Updated 68w ago

About Netlify MCP Server

Netlify MCP Server lets MCP-enabled environments manage Netlify sites through the Netlify API. It is aimed at users who need to create sites from GitHub repositories, inspect site details, list sites, or delete them.

Key features

  1. 01Create sites from GitHub repositories
  2. 02List sites with pagination
  3. 03Retrieve site details
  4. 04Delete sites
  5. 05Authenticate with a Netlify token

Use cases

  1. 01Deploy a GitHub repository to Netlify
  2. 02Review accessible Netlify sites
  3. 03Inspect a site's details
  4. 04Remove a Netlify site

MCP support

Exposes tools to MCP clients for creating, listing, retrieving details about, and deleting Netlify sites through the Netlify API.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"netlify": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"build"
]
}
}
}
Run commanddocker run -i --rm build

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
ocibuild

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Netlify MCP Server

MCP Server License: MIT

A Model Context Protocol (MCP) server for managing Netlify sites. This server enables seamless integration with Netlify's API through MCP, allowing you to create, manage, and deploy sites directly from your MCP-enabled environment.

Features

  • 🚀 Create new sites from GitHub repositories
  • 📋 List existing Netlify sites with pagination
  • 🔍 Get detailed site information
  • 🗑️ Delete sites
  • 🔐 Secure authentication with Netlify API
  • ⚡ Built with TypeScript for type safety
  • 🐳 Docker support for easy deployment

Requirements

  • Node.js 18 or higher
  • A Netlify account with API access
  • A GitHub repository for deploying sites

Installation

From Source
  1. Clone this repository:
git clone https://github.com/MCERQUA/netlify-mcp.git
cd netlify-mcp
  1. Install dependencies:
npm install
  1. Build the project:
npm run build
Using Docker
docker build -t netlify-mcp .
docker run -e NETLIFY_ACCESS_TOKEN=your_token_here netlify-mcp

Configuration

Getting Your Netlify Access Token
  1. Create a Netlify account at https://app.netlify.com/signup
  2. Go to User Settings > Applications > Personal access tokens
  3. Click "New access token"
  4. Give it a name (e.g., "MCP Integration")
  5. Copy the generated token
Setting Up MCP
  1. Create a .env file in the project root:
NETLIFY_ACCESS_TOKEN=your_token_here
  1. Add the server to your MCP settings configuration:
{
  "mcpServers": {
    "netlify": {
      "command": "node",
      "args": ["path/to/netlify-mcp/build/index.js"],
      "env": {
        "NETLIFY_ACCESS_TOKEN": "your_token_here"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Available Tools

createSiteFromGitHub

Create a new Netlify site from a GitHub repository.

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

List all Netlify sites you have access to.

interface ListSitesArgs {
  filter?: 'all' | 'owner' | 'guest';  // Filter for sites
  page?: number;         // Page number for pagination
  perPage?: number;      // Items per page (max 100)
}
getSite

Get detailed information about a specific site.

interface GetSiteArgs {
  siteId: string;  // ID or name of the site
}
deleteSite

Delete a Netlify site.

interface DeleteSiteArgs {
  siteId: string;  // ID or name of the site
}

Documentation

For more detailed information, see:

Development

# Run in development mode with auto-rebuild
npm run dev

# Clean build artifacts
npm run clean

# Build the project
npm run build

Troubleshooting

Common Issues
  1. "NETLIFY_ACCESS_TOKEN environment variable is required"

    • Make sure you've set the token in your environment or .env file
  2. "Failed to create site: 401 Unauthorized"

    • Your access token might be invalid or expired
    • Generate a new token from Netlify settings
  3. "Invalid repo format"

    • Ensure the repository is in format owner/repo
    • Example: facebook/react, not https://github.com/facebook/react

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.