Skip to main content
Glama

Netlify MCP Server

Netlify MCP Server follows the Model Context Protocol (MCP) to enable code agents to use the Netlify API and CLI—so they can create new projects, build, deploy, and manage your Netlify resources using natural language prompts.


Overview

The Model Context Protocol is an emerging standard protocol for connecting code agents with MCP servers, allowing them to manage resources and perform tasks using natural language. The Netlify MCP Server acts as a bridge, providing API access, CLI tools, prompts, and more for your agents.

You can connect to the Netlify MCP Server using a variety of MCP clients, including:


Related MCP server: Netlify MCP Server

Use Cases

With Netlify MCP Server, your AI agents can:

  • Create, manage, and deploy Netlify projects

  • Modify access controls for enhanced project security

  • Install or uninstall Netlify extensions

  • Fetch user and team information

  • Enable and manage form submissions

  • Create and manage environment variables and secrets

  • and more...


Prerequisites

  • Node.js 22 or higher Check with node --version

  • A Netlify account

  • An MCP client (e.g., Windsurf, Cursor, Claude, Copilot)

Tip: Install the Netlify CLI globally for the best experience: npm install -g netlify-cli


MCP Configuration

For the production MCP server, use the following configuration:

Editors with one-click install:

Install MCP Server on Cursor

Add MCP Server netlify to LM Studio

Install on VS Code

Install on VS Code Insiders Edition

Install on Goose

  • use the following link in your browser if link fails to render or open: goose://extension?cmd=npx&arg=-y&arg=%40netlify%2Fmcp&id=netlify&name=Netlify&description=Build%2C%20deploy%2C%20and%20manage%20sites%20with%20Netlify's%20official%20MCP%20server.

Configuration for MCP config files:

{
  "mcpServers": {
    "netlify": {
      "command": "npx",
      "args": [
        "-y",
        "@netlify/mcp"
      ]
    }
  }
}

For local development, see Set up local MCP configuration.


Troubleshooting

Node Version

  • Use Node.js 22 or higher for best results.

  • If you use nvm, run:

    nvm install 22
    nvm use 22

Netlify authentication troubleshooting

{
  "mcpServers": {
    "netlify-mcp": {
      "command": "npx",
      "args": ["-y", "@netlify/mcp"],
      "env": {
        "NETLIFY_PERSONAL_ACCESS_TOKEN": "YOUR-PAT-VALUE"
      }
    }
  }
}

Do not commit your PAT to your repository! Once resolved, remove your PAT from the config.


Generating a New Personal Access Token (PAT)

  1. In the Netlify dashboard, select your user icon.

  2. Go to User settings > OAuth > New access token.

  3. Copy your token and add it (temporarily) to your MCP config as above.

  4. Restart or refresh your MCP client.


Resources

Available Tools

4 tools
netlify-coding-rulesB

ALWAYS call when writing serverless or Netlify code. required step before creating or editing any type of functions, Netlify sdk/library usage, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
creationTypeYes

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must convey behavioral traits. It only states it is a required step but does not disclose what the tool does (e.g., retrieve rules, set configuration, or have side effects). Missing critical behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief (two sentences) and front-loads the imperative 'ALWAYS call'. It is concise, though it could be more informative without being verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool described as 'required step', the description lacks details on output, side effects, and how it integrates with subsequent operations. No output schema exists, so the description should compensate. It does not.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description does not mention the single parameter 'creationType' or explain its enum values. With 0% schema description coverage, the description should provide meaning, but it adds nothing, leaving the agent to infer from enum names alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states this is a required preliminary step for serverless/Netlify coding, distinguishing it from sibling tools focused on services. The verb 'call' and resource 'coding-rules' are implied.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'ALWAYS call when writing serverless or Netlify code' and identifies it as a required step before creating or editing functions. No alternatives mentioned, but the directive is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

netlify-project-servicesC

Select and run one of the following Netlify operations get-project, get-projects, update-visitor-access-controls, update-forms, get-forms-for-project, manage-form-submissions, update-project-name, manage-env-vars, create-new-project

ParametersJSON Schema
NameRequiredDescriptionDefault
selectSchemaYes

TDQS

C2.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It only says 'select and run', disclosing no behavioral traits like side effects, idempotency, or permission requirements. Essential for a tool with multiple write operations (e.g., update-visitor-access-controls, manage-env-vars).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence listing operations. It is not overly long but could be more structured (e.g., using bullets or grouping). It is adequately concise but wastes the opportunity to add value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complex schema with 9 operations, many parameters, and no output schema, the description is incomplete. It does not explain the selectSchema router pattern, differentiate operations, or describe return behavior. A detailed description is critical here.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds no meaning beyond the schema. The schema has low coverage (0% as per signal) but includes some inline descriptions for nested parameters (e.g., projectNameSearchValue). The description merely lists operation names, failing to explain the selectSchema structure or how to choose parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the purpose: 'Select and run one of the following Netlify operations'. It lists the operations, making it clear it's a dispatch tool for project-related actions. However, it doesn't differentiate from sibling tools like netlify-team-services or netlify-user-services, missing an opportunity to clarify scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus siblings or alternatives. The description just lists operations without context about typical use cases, prerequisites, or when to avoid it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

netlify-team-servicesD

Select and run one of the following Netlify operations get-teams, get-team

ParametersJSON Schema
NameRequiredDescriptionDefault
selectSchemaYes

TDQS

D1.7/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations and no behavioral details in description. No mention of side effects, permissions, or error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Very concise, but at the expense of necessary detail. Front-loaded to state purpose, but too minimal to be helpful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Severely incomplete given the complexity of the input schema and lack of output schema. The agent cannot infer usage without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Description adds no meaning to parameters. Schema coverage is 0% and the description does not explain the selectSchema structure or operation specific parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states it selects and runs Netlify operations, but does not explain what get-teams or get-team do. Purpose is somewhat clear as a dispatcher, but lacks differentiation from sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., sibling tools). No context on choosing between get-teams and get-team.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

netlify-user-servicesD

Select and run one of the following Netlify operations get-user

ParametersJSON Schema
NameRequiredDescriptionDefault
selectSchemaYes

TDQS

D1.5/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations and the description provides no behavioral traits, side effects, permissions, or other important information beyond the operation name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short but lacks necessary detail. It is under-specified and does not effectively convey the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (nested parameters, no schema descriptions, no output schema, no annotations), the description is severely incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description does not explain the parameters. The nested 'selectSchema' object is left entirely undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description mentions the operation name 'get-user' but does not explain what it does. It is vague and does not clarify the action or result.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus siblings. The description implies selection but lists only one operation, providing no context or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

C2.2/5.0
Disambiguation3/5

The three service tools (user, team, project) are distinct and target different resource types, but the netlify-coding-rules tool is confusing as it is a meta-instruction rather than an operation, potentially leading to misclassification.

Naming Consistency3/5

Three tools follow a 'netlify-X-services' pattern, but netlify-coding-rules breaks this pattern by using 'rules' instead of 'services', introducing inconsistency.

Tool Count3/5

With 4 tools, including one meta-tool, the count is slightly low for a platform like Netlify, but the bundling of many operations within the service tools compensates somewhat.

Completeness2/5

The set covers user, team, and project operations but lacks essential features like site management, deploys, and DNS, leaving significant gaps for typical Netlify workflows.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • -
    license
    C
    quality
    Not graded
    maintenance
    Follows the Model Context Protocol to enable code agents to use Netlify API and CLI, allowing them to create, deploy, and manage Netlify resources using natural language prompts.
    6
    17,669
  • A
    license
    B
    quality
    C
    maintenance
    Enables code agents to interact with Netlify services through the Model Context Protocol, allowing them to create, build, deploy, and manage Netlify resources using natural language prompts.
    9
    17,669
    59
    ISC

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jurgen-paul/netlify-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server