Vercel Automation via Rube MCP
Automate Vercel platform operations through Composio's Vercel toolkit via Rube MCP.
Toolkit docs: composio.dev/toolkits/vercel
Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Vercel connection via
RUBE_MANAGE_CONNECTIONS with toolkit vercel
- Always call
RUBE_SEARCH_TOOLS first to get current tool schemas
Setup
Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
- Verify Rube MCP is available by confirming
RUBE_SEARCH_TOOLS responds
- Call
RUBE_MANAGE_CONNECTIONS with toolkit vercel
- 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:
VERCEL_LIST_ALL_DEPLOYMENTS or VERCEL_GET_DEPLOYMENTS - List deployments with filters [Required]
VERCEL_GET_DEPLOYMENT or VERCEL_GET_DEPLOYMENT_DETAILS - Get specific deployment info [Optional]
VERCEL_GET_DEPLOYMENT_LOGS or VERCEL_GET_RUNTIME_LOGS - View build/runtime logs [Optional]
VERCEL_GET_DEPLOYMENT_EVENTS - Get deployment event timeline [Optional]
VERCEL_LIST_DEPLOYMENT_CHECKS - View deployment check results [Optional]
Key parameters:
projectId: Filter deployments by project
state: Filter by deployment state (e.g., 'READY', 'ERROR', 'BUILDING')
limit: Number of deployments to return
target: Filter by environment ('production', 'preview')
deploymentId or idOrUrl: Specific deployment identifier
Pitfalls:
- Deployment IDs and URLs are both accepted as identifiers in most endpoints
- Build logs and runtime logs are separate; use the appropriate tool
VERCEL_GET_DEPLOYMENT_LOGS returns build logs; VERCEL_GET_RUNTIME_LOGS returns serverless function 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:
VERCEL_LIST_PROJECTS - Find the target project [Prerequisite]
VERCEL_CREATE_NEW_DEPLOYMENT - Trigger a new deployment [Required]
VERCEL_GET_DEPLOYMENT - Monitor deployment progress [Optional]
Key parameters:
name: Project name for the deployment
target: Deployment target ('production' or 'preview')
gitSource: Git repository source with ref/branch info
files: Array of file objects for file-based deployments
Pitfalls:
- Either
gitSource or files must be provided, not both
- 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:
VERCEL_LIST_PROJECTS - Find the project ID [Prerequisite]
VERCEL_LIST_ENV_VARIABLES - List existing env vars [Required]
VERCEL_ADD_ENVIRONMENT_VARIABLE - Add a new env var [Optional]
VERCEL_DELETE_ENVIRONMENT_VARIABLE - Remove an env var [Optional]
Key parameters:
projectId: Target project identifier
key: Environment variable name
value: Environment variable value
target: Array of environments ('production', 'preview', 'development')
type: Variable type ('plain', 'secret', 'encrypted', 'sensitive')
Pitfalls:
- Environment variable names must be unique per target environment
type: 'secret' variables cannot be read back after creation; only the ID is returned
- Deleting an env var requires both
projectId and the env var id (not the key name)
- 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:
VERCEL_GET_DOMAIN - Check domain status and configuration [Required]
VERCEL_GET_DOMAIN_CONFIG - Get DNS/SSL configuration details [Optional]
VERCEL_LIST_PROJECT_DOMAINS - List domains attached to a project [Optional]
VERCEL_GET_DNS_RECORDS - List DNS records for a domain [Optional]
VERCEL_CREATE_DNS_RECORD - Add a new DNS record [Optional]
VERCEL_UPDATE_DNS_RECORD - Modify an existing DNS record [Optional]
Key parameters:
domain: Domain name (e.g., 'example.com')
name: DNS record name/subdomain
type: DNS record type ('A', 'AAAA', 'CNAME', 'MX', 'TXT', 'SRV')
value: DNS record value
ttl: Time-to-live in seconds
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:
VERCEL_LIST_PROJECTS - List all projects [Required]
VERCEL_GET_PROJECT - Get detailed project information [Optional]
VERCEL_UPDATE_PROJECT - Modify project settings [Optional]
Key parameters:
idOrName: Project ID or name for lookup
name: Project name for updates
framework: Framework preset (e.g., 'nextjs', 'vite', 'remix')
buildCommand: Custom build command override
rootDirectory: Root directory if not repo root
Pitfalls:
- Project names are globally unique within a team/account
- Changing framework settings affects subsequent deployments
rootDirectory is relative to the repository root
6. Team Management
When to use: User wants to view team info or list team members
Tool sequence:
VERCEL_LIST_TEAMS - List all teams the user belongs to [Required]
VERCEL_GET_TEAM - Get detailed team information [Optional]
VERCEL_GET_TEAM_MEMBERS - List members of a specific team [Optional]
Key parameters:
teamId: Team identifier
limit: Number of results per page
role: Filter members by 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 operations
Domain -> DNS Records:
1. Call VERCEL_GET_DNS_RECORDS with domain name
2. Extract record IDs for update/delete operations
Pagination
- Use
limit parameter to control page size
- Check response for pagination tokens or
next fields
- 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 |
Powered by Composio
1---2name: vercel-automation3description: Automate Vercel tasks via Rube MCP (Composio): manage deployments, domains, DNS, env vars, projects, and teams. Always search tools first for current schemas.4---56# Vercel Automation via Rube MCP78Automate Vercel platform operations through Composio's Vercel toolkit via Rube MCP.910**Toolkit docs**: [composio.dev/toolkits/vercel](https://composio.dev/toolkits/vercel)1112## Prerequisites1314- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)15- Active Vercel connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `vercel`16- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas1718## Setup1920**Get Rube MCP**: Add `https://rube.app/mcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.2122231. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds242. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `vercel`253. If connection is not ACTIVE, follow the returned auth link to complete Vercel OAuth264. Confirm connection status shows ACTIVE before running any workflows2728## Core Workflows2930### 1. Monitor and Inspect Deployments3132**When to use**: User wants to list, inspect, or debug deployments3334**Tool sequence**:351. `VERCEL_LIST_ALL_DEPLOYMENTS` or `VERCEL_GET_DEPLOYMENTS` - List deployments with filters [Required]362. `VERCEL_GET_DEPLOYMENT` or `VERCEL_GET_DEPLOYMENT_DETAILS` - Get specific deployment info [Optional]373. `VERCEL_GET_DEPLOYMENT_LOGS` or `VERCEL_GET_RUNTIME_LOGS` - View build/runtime logs [Optional]384. `VERCEL_GET_DEPLOYMENT_EVENTS` - Get deployment event timeline [Optional]395. `VERCEL_LIST_DEPLOYMENT_CHECKS` - View deployment check results [Optional]4041**Key parameters**:42- `projectId`: Filter deployments by project43- `state`: Filter by deployment state (e.g., 'READY', 'ERROR', 'BUILDING')44- `limit`: Number of deployments to return45- `target`: Filter by environment ('production', 'preview')46- `deploymentId` or `idOrUrl`: Specific deployment identifier4748**Pitfalls**:49- Deployment IDs and URLs are both accepted as identifiers in most endpoints50- Build logs and runtime logs are separate; use the appropriate tool51- `VERCEL_GET_DEPLOYMENT_LOGS` returns build logs; `VERCEL_GET_RUNTIME_LOGS` returns serverless function logs52- Deployment events include status transitions and are useful for debugging timing issues5354### 2. Create and Manage Deployments5556**When to use**: User wants to trigger a new deployment5758**Tool sequence**:591. `VERCEL_LIST_PROJECTS` - Find the target project [Prerequisite]602. `VERCEL_CREATE_NEW_DEPLOYMENT` - Trigger a new deployment [Required]613. `VERCEL_GET_DEPLOYMENT` - Monitor deployment progress [Optional]6263**Key parameters**:64- `name`: Project name for the deployment65- `target`: Deployment target ('production' or 'preview')66- `gitSource`: Git repository source with ref/branch info67- `files`: Array of file objects for file-based deployments6869**Pitfalls**:70- Either `gitSource` or `files` must be provided, not both71- Git-based deployments require proper repository integration72- Production deployments update the production domain alias automatically73- Deployment creation is asynchronous; poll with GET_DEPLOYMENT for status7475### 3. Manage Environment Variables7677**When to use**: User wants to add, list, or remove environment variables for a project7879**Tool sequence**:801. `VERCEL_LIST_PROJECTS` - Find the project ID [Prerequisite]812. `VERCEL_LIST_ENV_VARIABLES` - List existing env vars [Required]823. `VERCEL_ADD_ENVIRONMENT_VARIABLE` - Add a new env var [Optional]834. `VERCEL_DELETE_ENVIRONMENT_VARIABLE` - Remove an env var [Optional]8485**Key parameters**:86- `projectId`: Target project identifier87- `key`: Environment variable name88- `value`: Environment variable value89- `target`: Array of environments ('production', 'preview', 'development')90- `type`: Variable type ('plain', 'secret', 'encrypted', 'sensitive')9192**Pitfalls**:93- Environment variable names must be unique per target environment94- `type: 'secret'` variables cannot be read back after creation; only the ID is returned95- Deleting an env var requires both `projectId` and the env var `id` (not the key name)96- Changes require a new deployment to take effect9798### 4. Manage Domains and DNS99100**When to use**: User wants to configure custom domains or manage DNS records101102**Tool sequence**:1031. `VERCEL_GET_DOMAIN` - Check domain status and configuration [Required]1042. `VERCEL_GET_DOMAIN_CONFIG` - Get DNS/SSL configuration details [Optional]1053. `VERCEL_LIST_PROJECT_DOMAINS` - List domains attached to a project [Optional]1064. `VERCEL_GET_DNS_RECORDS` - List DNS records for a domain [Optional]1075. `VERCEL_CREATE_DNS_RECORD` - Add a new DNS record [Optional]1086. `VERCEL_UPDATE_DNS_RECORD` - Modify an existing DNS record [Optional]109110**Key parameters**:111- `domain`: Domain name (e.g., 'example.com')112- `name`: DNS record name/subdomain113- `type`: DNS record type ('A', 'AAAA', 'CNAME', 'MX', 'TXT', 'SRV')114- `value`: DNS record value115- `ttl`: Time-to-live in seconds116117**Pitfalls**:118- Domain must be added to the Vercel account before DNS management119- SSL certificates are auto-provisioned but may take time for new domains120- CNAME records at the apex domain are not supported; use A records instead121- MX records require priority values122123### 5. Manage Projects124125**When to use**: User wants to list, inspect, or update project settings126127**Tool sequence**:1281. `VERCEL_LIST_PROJECTS` - List all projects [Required]1292. `VERCEL_GET_PROJECT` - Get detailed project information [Optional]1303. `VERCEL_UPDATE_PROJECT` - Modify project settings [Optional]131132**Key parameters**:133- `idOrName`: Project ID or name for lookup134- `name`: Project name for updates135- `framework`: Framework preset (e.g., 'nextjs', 'vite', 'remix')136- `buildCommand`: Custom build command override137- `rootDirectory`: Root directory if not repo root138139**Pitfalls**:140- Project names are globally unique within a team/account141- Changing framework settings affects subsequent deployments142- `rootDirectory` is relative to the repository root143144### 6. Team Management145146**When to use**: User wants to view team info or list team members147148**Tool sequence**:1491. `VERCEL_LIST_TEAMS` - List all teams the user belongs to [Required]1502. `VERCEL_GET_TEAM` - Get detailed team information [Optional]1513. `VERCEL_GET_TEAM_MEMBERS` - List members of a specific team [Optional]152153**Key parameters**:154- `teamId`: Team identifier155- `limit`: Number of results per page156- `role`: Filter members by role157158**Pitfalls**:159- Team operations require appropriate team-level permissions160- Personal accounts have no teams; team endpoints return empty results161- Member roles include 'OWNER', 'MEMBER', 'DEVELOPER', 'VIEWER'162163## Common Patterns164165### ID Resolution166167**Project name -> Project ID**:168```1691. Call VERCEL_LIST_PROJECTS1702. Find project by name in response1713. Extract id field for subsequent operations172```173174**Domain -> DNS Records**:175```1761. Call VERCEL_GET_DNS_RECORDS with domain name1772. Extract record IDs for update/delete operations178```179180### Pagination181182- Use `limit` parameter to control page size183- Check response for pagination tokens or `next` fields184- Continue fetching until no more pages are indicated185186## Known Pitfalls187188**Deployment States**:189- States include: INITIALIZING, ANALYZING, BUILDING, DEPLOYING, READY, ERROR, CANCELED, QUEUED190- Only READY deployments are live and serving traffic191- ERROR deployments should be inspected via logs for failure details192193**Environment Variables**:194- Secret type vars are write-only; values cannot be retrieved after creation195- Env vars are scoped to environments (production, preview, development)196- A redeployment is needed for env var changes to take effect197198**Rate Limits**:199- Vercel API has rate limits per endpoint200- Implement backoff on 429 responses201- Batch operations where possible to reduce API calls202203## Quick Reference204205| Task | Tool Slug | Key Params |206|------|-----------|------------|207| List projects | VERCEL_LIST_PROJECTS | limit |208| Get project details | VERCEL_GET_PROJECT | idOrName |209| Update project | VERCEL_UPDATE_PROJECT | idOrName, name, framework |210| List deployments | VERCEL_LIST_ALL_DEPLOYMENTS | projectId, state, limit |211| Get deployment | VERCEL_GET_DEPLOYMENT | idOrUrl |212| Create deployment | VERCEL_CREATE_NEW_DEPLOYMENT | name, target, gitSource |213| Deployment logs | VERCEL_GET_DEPLOYMENT_LOGS | deploymentId |214| Runtime logs | VERCEL_GET_RUNTIME_LOGS | deploymentId |215| List env vars | VERCEL_LIST_ENV_VARIABLES | projectId |216| Add env var | VERCEL_ADD_ENVIRONMENT_VARIABLE | projectId, key, value, target |217| Delete env var | VERCEL_DELETE_ENVIRONMENT_VARIABLE | projectId, id |218| Get domain | VERCEL_GET_DOMAIN | domain |219| Get domain config | VERCEL_GET_DOMAIN_CONFIG | domain |220| List DNS records | VERCEL_GET_DNS_RECORDS | domain |221| Create DNS record | VERCEL_CREATE_DNS_RECORD | domain, name, type, value |222| Update DNS record | VERCEL_UPDATE_DNS_RECORD | domain, recordId |223| List project domains | VERCEL_LIST_PROJECT_DOMAINS | projectId |224| List teams | VERCEL_LIST_TEAMS | (none) |225| Get team | VERCEL_GET_TEAM | teamId |226| Get team members | VERCEL_GET_TEAM_MEMBERS | teamId, limit |227228---229*Powered by [Composio](https://composio.dev)*