Netlify Integration
Manage Netlify sites, deploys, builds, and environment variables
The Netlify integration provides access to manage Netlify sites, deploys, builds, and environment variables through the Integrate MCP server.
Installation
The Netlify integration is included with the SDK:
import { netlifyIntegration } from "integrate-sdk/server";Setup
1. Create a Netlify OAuth App
- Go to App Developer Portal
- Create a new OAuth application
- Configure your redirect URI
- Note your Client ID and Client Secret
2. Configure the Integration on Your Server
Add the Netlify integration to your server configuration. The integration automatically reads NETLIFY_CLIENT_ID and NETLIFY_CLIENT_SECRET from your environment variables:
import { createMCPServer, netlifyIntegration } from "integrate-sdk/server";
export const { client: serverClient } = createMCPServer({
apiKey: process.env.INTEGRATE_API_KEY,
integrations: [
netlifyIntegration({
}),
],
});You can override the environment variables by passing explicit values:
netlifyIntegration({
clientId: process.env.CUSTOM_NETLIFY_ID,
clientSecret: process.env.CUSTOM_NETLIFY_SECRET,
});3. Client-Side Usage
The default client automatically includes all integrations. You can use it directly:
import { client } from "integrate-sdk";
await client.authorize("netlify");
const result = await client.netlify.getCurrentUser({});
console.log(result);If you're using a custom client, add the integration to the integrations array:
import { createMCPClient, netlifyIntegration } from "integrate-sdk";
const customClient = createMCPClient({
integrations: [netlifyIntegration()],
});Configuration Options
export interface NetlifyIntegrationConfig {
/** Netlify OAuth client ID (defaults to NETLIFY_CLIENT_ID env var) */
clientId?: string;
Tools
netlify_get_current_user
Get current user
No parameters.
netlify_list_accounts
List accounts
No parameters.
netlify_get_account
Get account
export interface NetlifyGetAccountParams { account_id: string }
netlify_list_sites
List sites
export interface NetlifyListSitesParams { filter?: string;
netlify_get_site
Get site
export interface NetlifyGetSiteParams { site_id: string }
netlify_create_site
Create site
export interface NetlifyCreateSiteParams { name?: string;
netlify_update_site
Update site
export interface NetlifyUpdateSiteParams { site_id: string;
netlify_delete_site
Delete site
export interface NetlifyDeleteSiteParams { site_id: string }
netlify_enable_site
Enable site
export interface NetlifyEnableSiteParams { site_id: string }
netlify_disable_site
Disable site
export interface NetlifyDisableSiteParams { site_id: string }
netlify_list_deploys
List deploys
export interface NetlifyListDeploysParams { site_id: string;
netlify_get_deploy
Get deploy
export interface NetlifyGetDeployParams { deploy_id: string }
netlify_create_deploy
Create deploy
export interface NetlifyCreateDeployParams { site_id: string;
netlify_cancel_deploy
Cancel deploy
export interface NetlifyCancelDeployParams { site_id: string;
netlify_restore_deploy
Restore deploy
export interface NetlifyRestoreDeployParams { site_id: string;
netlify_lock_deploy
Lock deploy
export interface NetlifyLockDeployParams { deploy_id: string }
netlify_unlock_deploy
Unlock deploy
export interface NetlifyUnlockDeployParams { deploy_id: string }
netlify_list_builds
List builds
export interface NetlifyListBuildsParams { site_id: string;
netlify_get_build
Get build
export interface NetlifyGetBuildParams { site_id: string;
netlify_trigger_build
Trigger build
export interface NetlifyTriggerBuildParams { site_id: string;
netlify_list_env_vars
List env vars
export interface NetlifyListEnvVarsParams { account_id: string;
netlify_get_env_var
Get env var
export interface NetlifyGetEnvVarParams { account_id: string;
netlify_create_env_vars
Create env vars
export interface NetlifyCreateEnvVarsParams { account_id: string;
netlify_update_env_var
Update env var
export interface NetlifyUpdateEnvVarParams { account_id: string;
netlify_delete_env_var
Delete env var
export interface NetlifyDeleteEnvVarParams { account_id: string;
netlify_list_build_hooks
List build hooks
export interface NetlifyListBuildHooksParams { site_id: string }
netlify_create_build_hook
Create build hook
export interface NetlifyCreateBuildHookParams { site_id: string;
netlify_delete_build_hook
Delete build hook
export interface NetlifyDeleteBuildHookParams { site_id: string;
netlify_list_forms
List forms
export interface NetlifyListFormsParams { site_id: string }
netlify_list_form_submissions
List form submissions
export interface NetlifyListFormSubmissionsParams { form_id: string;
netlify_list_dns_zones
List dns zones
No parameters.
netlify_get_dns_records
Get dns records
export interface NetlifyGetDnsRecordsParams { zone_id: string }
netlify_create_dns_record
Create dns record
export interface NetlifyCreateDnsRecordParams { dns_zone_id: string;
netlify_delete_dns_record
Delete dns record
export interface NetlifyDeleteDnsRecordParams { record_id: string }
netlify_list_functions
List functions
export interface NetlifyListFunctionsParams { site_id: string }
netlify_list_files
List files
export interface NetlifyListFilesParams { site_id: string }
netlify_purge_cache
Purge cache
export interface NetlifyPurgeCacheParams { site_id?: string;
Notes
- Category: Infrastructure
- Authentication mode: OAuth