vercel-automation
Original:🇺🇸 English
Not Translated
Automate Vercel tasks via Rube MCP (Composio): manage deployments, domains, DNS, env vars, projects, and teams. Always search tools first for current schemas.
2installs
Added on
NPX Install
npx skill4agent add aaaaqwq/claude-code-skills vercel-automationSKILL.md Content
Vercel Automation via Rube MCP
Automate Vercel platform operations through Composio's Vercel toolkit via Rube MCP.
Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Vercel connection via with toolkit
RUBE_MANAGE_CONNECTIONSvercel - Always call first to get current tool schemas
RUBE_SEARCH_TOOLS
Setup
Get Rube MCP: Add as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
https://rube.app/mcp- Verify Rube MCP is available by confirming responds
RUBE_SEARCH_TOOLS - Call with toolkit
RUBE_MANAGE_CONNECTIONSvercel - If connection is not ACTIVE, follow the returned auth link to complete Vercel OAuth
- Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. Monitor and Inspect Deployments
When to use: User wants to list, inspect, or debug deployments
Tool sequence:
- or
VERCEL_LIST_ALL_DEPLOYMENTS- List deployments with filters [Required]VERCEL_GET_DEPLOYMENTS - or
VERCEL_GET_DEPLOYMENT- Get specific deployment info [Optional]VERCEL_GET_DEPLOYMENT_DETAILS - or
VERCEL_GET_DEPLOYMENT_LOGS- View build/runtime logs [Optional]VERCEL_GET_RUNTIME_LOGS - - Get deployment event timeline [Optional]
VERCEL_GET_DEPLOYMENT_EVENTS - - View deployment check results [Optional]
VERCEL_LIST_DEPLOYMENT_CHECKS
Key parameters:
- : Filter deployments by project
projectId - : Filter by deployment state (e.g., 'READY', 'ERROR', 'BUILDING')
state - : Number of deployments to return
limit - : Filter by environment ('production', 'preview')
target - or
deploymentId: Specific deployment identifieridOrUrl
Pitfalls:
- Deployment IDs and URLs are both accepted as identifiers in most endpoints
- Build logs and runtime logs are separate; use the appropriate tool
- returns build logs;
VERCEL_GET_DEPLOYMENT_LOGSreturns serverless function logsVERCEL_GET_RUNTIME_LOGS - Deployment events include status transitions and are useful for debugging timing issues
2. Create and Manage Deployments
When to use: User wants to trigger a new deployment
Tool sequence:
- - Find the target project [Prerequisite]
VERCEL_LIST_PROJECTS - - Trigger a new deployment [Required]
VERCEL_CREATE_NEW_DEPLOYMENT - - Monitor deployment progress [Optional]
VERCEL_GET_DEPLOYMENT
Key parameters:
- : Project name for the deployment
name - : Deployment target ('production' or 'preview')
target - : Git repository source with ref/branch info
gitSource - : Array of file objects for file-based deployments
files
Pitfalls:
- Either or
gitSourcemust be provided, not bothfiles - Git-based deployments require proper repository integration
- Production deployments update the production domain alias automatically
- Deployment creation is asynchronous; poll with GET_DEPLOYMENT for status
3. Manage Environment Variables
When to use: User wants to add, list, or remove environment variables for a project
Tool sequence:
- - Find the project ID [Prerequisite]
VERCEL_LIST_PROJECTS - - List existing env vars [Required]
VERCEL_LIST_ENV_VARIABLES - - Add a new env var [Optional]
VERCEL_ADD_ENVIRONMENT_VARIABLE - - Remove an env var [Optional]
VERCEL_DELETE_ENVIRONMENT_VARIABLE
Key parameters:
- : Target project identifier
projectId - : Environment variable name
key - : Environment variable value
value - : Array of environments ('production', 'preview', 'development')
target - : Variable type ('plain', 'secret', 'encrypted', 'sensitive')
type
Pitfalls:
- Environment variable names must be unique per target environment
- variables cannot be read back after creation; only the ID is returned
type: 'secret' - Deleting an env var requires both and the env var
projectId(not the key name)id - Changes require a new deployment to take effect
4. Manage Domains and DNS
When to use: User wants to configure custom domains or manage DNS records
Tool sequence:
- - Check domain status and configuration [Required]
VERCEL_GET_DOMAIN - - Get DNS/SSL configuration details [Optional]
VERCEL_GET_DOMAIN_CONFIG - - List domains attached to a project [Optional]
VERCEL_LIST_PROJECT_DOMAINS - - List DNS records for a domain [Optional]
VERCEL_GET_DNS_RECORDS - - Add a new DNS record [Optional]
VERCEL_CREATE_DNS_RECORD - - Modify an existing DNS record [Optional]
VERCEL_UPDATE_DNS_RECORD
Key parameters:
- : Domain name (e.g., 'example.com')
domain - : DNS record name/subdomain
name - : DNS record type ('A', 'AAAA', 'CNAME', 'MX', 'TXT', 'SRV')
type - : DNS record value
value - : Time-to-live in seconds
ttl
Pitfalls:
- Domain must be added to the Vercel account before DNS management
- SSL certificates are auto-provisioned but may take time for new domains
- CNAME records at the apex domain are not supported; use A records instead
- MX records require priority values
5. Manage Projects
When to use: User wants to list, inspect, or update project settings
Tool sequence:
- - List all projects [Required]
VERCEL_LIST_PROJECTS - - Get detailed project information [Optional]
VERCEL_GET_PROJECT - - Modify project settings [Optional]
VERCEL_UPDATE_PROJECT
Key parameters:
- : Project ID or name for lookup
idOrName - : Project name for updates
name - : Framework preset (e.g., 'nextjs', 'vite', 'remix')
framework - : Custom build command override
buildCommand - : Root directory if not repo root
rootDirectory
Pitfalls:
- Project names are globally unique within a team/account
- Changing framework settings affects subsequent deployments
- is relative to the repository root
rootDirectory
6. Team Management
When to use: User wants to view team info or list team members
Tool sequence:
- - List all teams the user belongs to [Required]
VERCEL_LIST_TEAMS - - Get detailed team information [Optional]
VERCEL_GET_TEAM - - List members of a specific team [Optional]
VERCEL_GET_TEAM_MEMBERS
Key parameters:
- : Team identifier
teamId - : Number of results per page
limit - : Filter members by role
role
Pitfalls:
- Team operations require appropriate team-level permissions
- Personal accounts have no teams; team endpoints return empty results
- Member roles include 'OWNER', 'MEMBER', 'DEVELOPER', 'VIEWER'
Common Patterns
ID Resolution
Project name -> Project ID:
1. Call VERCEL_LIST_PROJECTS
2. Find project by name in response
3. Extract id field for subsequent operationsDomain -> DNS Records:
1. Call VERCEL_GET_DNS_RECORDS with domain name
2. Extract record IDs for update/delete operationsPagination
- Use parameter to control page size
limit - Check response for pagination tokens or fields
next - Continue fetching until no more pages are indicated
Known Pitfalls
Deployment States:
- States include: INITIALIZING, ANALYZING, BUILDING, DEPLOYING, READY, ERROR, CANCELED, QUEUED
- Only READY deployments are live and serving traffic
- ERROR deployments should be inspected via logs for failure details
Environment Variables:
- Secret type vars are write-only; values cannot be retrieved after creation
- Env vars are scoped to environments (production, preview, development)
- A redeployment is needed for env var changes to take effect
Rate Limits:
- Vercel API has rate limits per endpoint
- Implement backoff on 429 responses
- Batch operations where possible to reduce API calls
Quick Reference
| Task | Tool Slug | Key Params |
|---|---|---|
| List projects | VERCEL_LIST_PROJECTS | limit |
| Get project details | VERCEL_GET_PROJECT | idOrName |
| Update project | VERCEL_UPDATE_PROJECT | idOrName, name, framework |
| List deployments | VERCEL_LIST_ALL_DEPLOYMENTS | projectId, state, limit |
| Get deployment | VERCEL_GET_DEPLOYMENT | idOrUrl |
| Create deployment | VERCEL_CREATE_NEW_DEPLOYMENT | name, target, gitSource |
| Deployment logs | VERCEL_GET_DEPLOYMENT_LOGS | deploymentId |
| Runtime logs | VERCEL_GET_RUNTIME_LOGS | deploymentId |
| List env vars | VERCEL_LIST_ENV_VARIABLES | projectId |
| Add env var | VERCEL_ADD_ENVIRONMENT_VARIABLE | projectId, key, value, target |
| Delete env var | VERCEL_DELETE_ENVIRONMENT_VARIABLE | projectId, id |
| Get domain | VERCEL_GET_DOMAIN | domain |
| Get domain config | VERCEL_GET_DOMAIN_CONFIG | domain |
| List DNS records | VERCEL_GET_DNS_RECORDS | domain |
| Create DNS record | VERCEL_CREATE_DNS_RECORD | domain, name, type, value |
| Update DNS record | VERCEL_UPDATE_DNS_RECORD | domain, recordId |
| List project domains | VERCEL_LIST_PROJECT_DOMAINS | projectId |
| List teams | VERCEL_LIST_TEAMS | (none) |
| Get team | VERCEL_GET_TEAM | teamId |
| Get team members | VERCEL_GET_TEAM_MEMBERS | teamId, limit |