Built by Metorial, the integration platform for agentic AI.

Learn More

    Server Summary

    • Manage Vercel deployments

    • Configure environment variables

    • Control custom domains

    • Monitor build logs

Vercel MCP Server

A comprehensive Model Context Protocol (MCP) server that provides seamless integration with Vercel's deployment platform. This server enables AI assistants and automated workflows to manage projects, deployments, domains, environment variables, and team resources directly through Vercel's API. Whether you're deploying applications, managing infrastructure, or monitoring deployments, this MCP server gives you programmatic access to the full power of Vercel's platform.

Overview

The Vercel MCP server bridges the gap between AI-powered development tools and Vercel's cloud platform. It exposes Vercel's complete project lifecycle management capabilities through a standardized MCP interface, allowing you to create and configure projects, trigger deployments, manage custom domains, configure environment variables, and collaborate with team members - all without leaving your development environment or AI assistant context.

This server is ideal for development teams looking to automate their deployment workflows, DevOps engineers managing multiple projects, or anyone who wants to streamline their interaction with Vercel's platform through natural language or programmatic interfaces.

Features

Complete Project Management

Manage your entire Vercel project lifecycle with full CRUD operations. Create new projects with framework-specific presets, connect Git repositories, configure build settings, and update project configurations on the fly. The server supports framework detection for popular tools like Next.js, Vite, and Remix, making it easy to get started with properly configured projects.

Deployment Control

Trigger, monitor, and manage deployments with granular control. Create new deployments from Git sources, target specific environments (production or preview), cancel running deployments, and retrieve detailed build and runtime logs. Track deployment states including building, queued, ready, error, and canceled states to maintain full visibility into your deployment pipeline.

Domain Management

Configure custom domains for your projects with comprehensive domain operations. Add domains to projects, remove unused domains, and verify domain ownership. The server handles all the complexity of domain configuration, making it simple to set up production-ready URLs for your applications.

Environment Variable Configuration

Manage environment variables across all deployment targets with precision. Create, update, and delete environment variables with support for environment-specific targeting (production, preview, development). Scope variables to specific Git branches for granular control over configuration across your deployment environments.

Team Collaboration

Work seamlessly across team boundaries with full team management capabilities. List all teams you belong to, retrieve team member information, and perform team-scoped operations on projects, deployments, and domains. Perfect for agencies and organizations managing multiple client projects.

Alias Management

Control deployment aliases and URLs with dedicated alias operations. List existing aliases, assign custom aliases to specific deployments, and manage your application's URL structure with precision.

Tools

list_projects

Lists all Vercel projects for the authenticated user or team. Supports pagination through a limit parameter, search filtering to find specific projects by name, and team-based filtering to view projects belonging to specific teams.

Parameters:

  • limit (number, optional): Maximum number of projects to return
  • search (string, optional): Search query to filter projects by name
  • teamId (string, optional): Filter projects by team ID

create_project

Creates a new Vercel project with comprehensive configuration options. Supports framework presets for optimized build configurations, Git repository connections for automatic deployments, and initial environment variable setup.

Parameters:

  • name (string, required): The name of the project
  • framework (string, optional): Framework preset such as nextjs, vite, or remix
  • gitRepository (object, optional): Git repository configuration with type (github, gitlab, bitbucket) and repo path
  • environmentVariables (array, optional): Initial environment variables with key, value, and target environments
  • teamId (string, optional): Team ID to create the project under

update_project

Updates settings for an existing project including build configuration, commands, and output directories.

Parameters:

  • projectId (string, required): The project ID to update
  • name (string, optional): New project name
  • framework (string, optional): Framework preset
  • buildCommand (string, optional): Custom build command override
  • devCommand (string, optional): Custom development command override
  • installCommand (string, optional): Custom install command override
  • outputDirectory (string, optional): Custom output directory path
  • teamId (string, optional): Team ID for team-scoped operations

delete_project

Permanently deletes a Vercel project and all associated resources.

Parameters:

  • projectId (string, required): The project ID to delete
  • teamId (string, optional): Team ID for team-scoped operations

list_deployments

Lists deployments with flexible filtering options. Can list all deployments or filter by project, state, and pagination limits.

Parameters:

  • projectId (string, optional): Filter deployments by project ID
  • state (string, optional): Filter by deployment state (BUILDING, ERROR, INITIALIZING, QUEUED, READY, CANCELED)
  • limit (number, optional): Maximum number of deployments to return
  • teamId (string, optional): Team ID for team-scoped operations

create_deployment

Triggers a new deployment from a Git source with environment targeting.

Parameters:

  • projectId (string, required): The project ID to deploy
  • gitSource (object, required): Git source configuration with type, repoId, and ref (branch or commit SHA)
  • target (string, optional): Target environment (production or preview)
  • teamId (string, optional): Team ID for team-scoped operations

cancel_deployment

Cancels a deployment that is currently building or queued.

Parameters:

  • deploymentId (string, required): The deployment ID to cancel
  • teamId (string, optional): Team ID for team-scoped operations

get_deployment_logs

Retrieves build and runtime logs for a specific deployment, essential for debugging and monitoring.

Parameters:

  • deploymentId (string, required): The deployment ID to retrieve logs for
  • limit (number, optional): Maximum number of log entries to return
  • teamId (string, optional): Team ID for team-scoped operations

list_domains

Lists all domains associated with the authenticated account or team, with optional project filtering.

Parameters:

  • projectId (string, optional): Filter domains by project ID
  • teamId (string, optional): Team ID for team-scoped operations

add_domain

Adds a custom domain to a Vercel project.

Parameters:

  • projectId (string, required): The project ID to add the domain to
  • domain (string, required): The domain name to add
  • teamId (string, optional): Team ID for team-scoped operations

remove_domain

Removes a domain from a project and your Vercel account.

Parameters:

  • domain (string, required): The domain name to remove
  • teamId (string, optional): Team ID for team-scoped operations

verify_domain

Verifies ownership of a domain by checking DNS records.

Parameters:

  • domain (string, required): The domain name to verify
  • teamId (string, optional): Team ID for team-scoped operations

list_env_variables

Lists all environment variables configured for a project.

Parameters:

  • projectId (string, required): The project ID to list environment variables for
  • teamId (string, optional): Team ID for team-scoped operations

create_env_variable

Creates a new environment variable with target environment specification.

Parameters:

  • projectId (string, required): The project ID to create the variable in
  • key (string, required): Environment variable name
  • value (string, required): Environment variable value
  • target (array, required): Target environments (production, preview, development)
  • gitBranch (string, optional): Scope the variable to a specific Git branch
  • teamId (string, optional): Team ID for team-scoped operations

update_env_variable

Updates an existing environment variable's value or target environments.

Parameters:

  • projectId (string, required): The project ID containing the variable
  • envId (string, required): The environment variable ID to update
  • value (string, optional): New value for the variable
  • target (array, optional): Updated target environments
  • gitBranch (string, optional): Updated Git branch scope
  • teamId (string, optional): Team ID for team-scoped operations

delete_env_variable

Permanently deletes an environment variable from a project.

Parameters:

  • projectId (string, required): The project ID containing the variable
  • envId (string, required): The environment variable ID to delete
  • teamId (string, optional): Team ID for team-scoped operations

list_teams

Lists all teams that the authenticated user is a member of.

Parameters: None required

get_team_members

Retrieves a list of all members belonging to a specific team.

Parameters:

  • teamId (string, required): The team ID to retrieve members for

list_aliases

Lists all aliases for deployments, with optional filtering by project or specific deployment.

Parameters:

  • projectId (string, optional): Filter aliases by project ID
  • deploymentId (string, optional): Filter aliases by deployment ID
  • teamId (string, optional): Team ID for team-scoped operations

assign_alias

Assigns a custom alias or domain to a specific deployment.

Parameters:

  • deploymentId (string, required): The deployment ID to assign the alias to
  • alias (string, required): The alias or domain to assign
  • teamId (string, optional): Team ID for team-scoped operations

Resources

The server exposes several resource templates that provide structured access to Vercel entities:

vercel://project/{projectId}

Provides detailed information about a specific Vercel project, including configuration, settings, and metadata. Use this resource to retrieve comprehensive project details without executing multiple API calls.

vercel://deployment/{deploymentId}

Accesses detailed information about a specific deployment, including status, URLs, build information, and associated metadata. Essential for monitoring and debugging deployment processes.

vercel://domain/{domain}

Retrieves information about a specific domain, including verification status, DNS configuration requirements, and associated projects.

vercel://team/{teamId}

Accesses team information including settings, members, and team-level configuration. Useful for understanding team structure and permissions.

vercel://project/{projectId}/env/{envId}

Provides detailed information about a specific environment variable, including its value (if accessible), target environments, and Git branch scope.

Use Cases

This MCP server excels in scenarios where automation and AI-assisted workflows can enhance productivity:

  • Automated Deployment Pipelines: Trigger deployments in response to external events or AI-determined conditions
  • Infrastructure as Code: Programmatically create and configure projects with consistent settings
  • Multi-Project Management: Manage dozens or hundreds of projects through natural language commands
  • Environment Synchronization: Keep environment variables synchronized across projects and teams
  • Deployment Monitoring: Track deployment status and retrieve logs without switching contexts
  • Domain Management: Configure and verify domains for new projects automatically
  • Team Collaboration: Query team membership and manage team-scoped resources efficiently

Getting Started

To use this MCP server, you'll need a Vercel account and an API token with appropriate permissions for the operations you want to perform. Once configured, the server provides immediate access to all Vercel platform capabilities through your MCP-compatible client or AI assistant.

The server handles authentication, rate limiting, and error handling automatically, allowing you to focus on building and deploying applications rather than managing API complexity.