Netlify MCP Server
Allows management of Netlify resources including projects, deployments, environment variables, forms, and more through the Netlify API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Netlify MCP Serverdeploy my site from the current directory"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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:
Windsurf
Cursor
Claude
Copilot (VSCode)
Cline
Warp
LM Studio
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 --versionA 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:
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
If you run into authentication issues, you can temporarily add a Netlify Personal Access Token (PAT) to your MCP configuration:
{
"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)
In the Netlify dashboard, select your user icon.
Go to User settings > OAuth > New access token.
Copy your token and add it (temporarily) to your MCP config as above.
Restart or refresh your MCP client.
Resources
Available Tools
4 toolsnetlify-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.
| Name | Required | Description | Default |
|---|---|---|---|
| creationType | Yes |
TDQS
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.
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.
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.
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.
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.
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
| Name | Required | Description | Default |
|---|---|---|---|
| selectSchema | Yes |
TDQS
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.
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.
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.
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.
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.
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
| Name | Required | Description | Default |
|---|---|---|---|
| selectSchema | Yes |
TDQS
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.
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.
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.
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.
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.
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
| Name | Required | Description | Default |
|---|---|---|---|
| selectSchema | Yes |
TDQS
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.
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.
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.
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.
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.
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
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.
Three tools follow a 'netlify-X-services' pattern, but netlify-coding-rules breaks this pattern by using 'rules' instead of 'services', introducing inconsistency.
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.
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
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
Deploy and manage your apps, databases, storage, and scheduled jobs from your AI agent
Inspect and control your Northflank projects, services, jobs, and builds from your AI assistant.
Plan Salesforce deploys, open pull requests and trigger pipelines from your AI client.
Build and deploy websites, Telegram and Discord bots from chat via the DreamAgent platform.
Related MCP Servers
- -licenseCqualityNot gradedmaintenanceFollows 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.617,669

Netlify MCP Serverofficial
AlicenseBqualityCmaintenanceEnables 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.917,66959ISC- FlicenseNot gradedqualityNot gradedmaintenanceEnables AI assistants to interact with the Vercel REST API to manage projects, deployments, domains, environment variables, and teams through natural language commands.
- FlicenseNot gradedqualityBmaintenanceEnables AI assistants to interact with Vercel API for managing projects, deployments, domains, and environment variables.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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