data
Vercel CLI for AI Agents
Use the Vercel CLI from KosmoKrator to call Vercel tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.Vercel CLI Setup
Vercel can be configured headlessly with `kosmokrator integrations:configure vercel`.
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash
# Configure and verify this integration.
kosmokrator integrations:configure vercel --set token="$VERCEL_TOKEN" --enable --read allow --write ask --json
kosmokrator integrations:doctor vercel --json
kosmokrator integrations:status --json Credentials
Authentication type: API token api_token. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.
| Key | Env var | Type | Required | Label |
|---|---|---|---|---|
token | VERCEL_TOKEN | Secret secret | yes | Vercel API Token |
url | VERCEL_URL | URL url | no | API Base URL |
Command Patterns
The generic command is stable across every integration. The provider shortcut is shorter for humans.
kosmo integrations:call vercel.vercel_create_deployment '{"name":"example_name","files":"example_files","git_source":"example_git_source","target":"example_target","framework":"example_framework","regions":"example_regions","project_settings":"example_project_settings","team_id":"example_team_id"}' --json kosmo integrations:vercel vercel_create_deployment '{"name":"example_name","files":"example_files","git_source":"example_git_source","target":"example_target","framework":"example_framework","regions":"example_regions","project_settings":"example_project_settings","team_id":"example_team_id"}' --json Discovery
These commands return structured output for coding agents that need to inspect capabilities before choosing a function.
kosmo integrations:docs vercel --json
kosmo integrations:docs vercel.vercel_create_deployment --json
kosmo integrations:schema vercel.vercel_create_deployment --json
kosmo integrations:search "Vercel" --json
kosmo integrations:list --json Automation Contexts
The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.
CLI Functions
Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.
vercel.vercel_create_deployment
Create a new deployment on Vercel. Provide a project name and either file contents or a Git source reference. Returns the new deployment ID and URL.
write - Parameters
- name, files, git_source, target, framework, regions, project_settings, team_id, slug
kosmo integrations:call vercel.vercel_create_deployment '{"name":"example_name","files":"example_files","git_source":"example_git_source","target":"example_target","framework":"example_framework","regions":"example_regions","project_settings":"example_project_settings","team_id":"example_team_id"}' --json kosmo integrations:vercel vercel_create_deployment '{"name":"example_name","files":"example_files","git_source":"example_git_source","target":"example_target","framework":"example_framework","regions":"example_regions","project_settings":"example_project_settings","team_id":"example_team_id"}' --json vercel.vercel_get_current_user
Get the currently authenticated Vercel user profile, including username, email, and plan.
read - Parameters
- none
kosmo integrations:call vercel.vercel_get_current_user '{}' --json kosmo integrations:vercel vercel_get_current_user '{}' --json vercel.vercel_get_deployment
Get details for a specific Vercel deployment by ID, including status, URL, and build logs.
read - Parameters
- id, team_id, slug
kosmo integrations:call vercel.vercel_get_deployment '{"id":"example_id","team_id":"example_team_id","slug":"example_slug"}' --json kosmo integrations:vercel vercel_get_deployment '{"id":"example_id","team_id":"example_team_id","slug":"example_slug"}' --json vercel.vercel_get_project
Get details for a specific Vercel project by ID, including framework, domains, and settings.
read - Parameters
- id, team_id, slug
kosmo integrations:call vercel.vercel_get_project '{"id":"example_id","team_id":"example_team_id","slug":"example_slug"}' --json kosmo integrations:vercel vercel_get_project '{"id":"example_id","team_id":"example_team_id","slug":"example_slug"}' --json vercel.vercel_list_deployments
List deployments across your Vercel projects. Filter by project, state, or target.
read - Parameters
- project_id, state, target, limit, team_id, slug
kosmo integrations:call vercel.vercel_list_deployments '{"project_id":"example_project_id","state":"example_state","target":"example_target","limit":1,"team_id":"example_team_id","slug":"example_slug"}' --json kosmo integrations:vercel vercel_list_deployments '{"project_id":"example_project_id","state":"example_state","target":"example_target","limit":1,"team_id":"example_team_id","slug":"example_slug"}' --json vercel.vercel_list_domains
List all domains configured in Vercel, including verification and DNS status.
read - Parameters
- limit, team_id, slug
kosmo integrations:call vercel.vercel_list_domains '{"limit":1,"team_id":"example_team_id","slug":"example_slug"}' --json kosmo integrations:vercel vercel_list_domains '{"limit":1,"team_id":"example_team_id","slug":"example_slug"}' --json vercel.vercel_list_projects
List all Vercel projects. Returns project names, IDs, framework, and deployment status.
read - Parameters
- limit, team_id, slug
kosmo integrations:call vercel.vercel_list_projects '{"limit":1,"team_id":"example_team_id","slug":"example_slug"}' --json kosmo integrations:vercel vercel_list_projects '{"limit":1,"team_id":"example_team_id","slug":"example_slug"}' --json vercel.vercel_list_teams
List all Vercel teams you belong to, including membership roles and member counts.
read - Parameters
- limit
kosmo integrations:call vercel.vercel_list_teams '{"limit":1}' --json kosmo integrations:vercel vercel_list_teams '{"limit":1}' --json Function Schemas
Use these parameter tables when building CLI payloads without calling integrations:schema first.
vercel.vercel_create_deployment 9 parameters
kosmo integrations:schema vercel.vercel_create_deployment --json | Parameter | Type | Required | Description |
|---|---|---|---|
name | string | yes | The project name to deploy to (must match an existing Vercel project). |
files | array | no | Array of file objects with "file" (path) and "content" (base64-encoded or sha+size). Required for direct uploads. |
git_source | object | no | Git source reference, e.g. {"type": "github", "ref": "main", "repoId": 12345}. Alternative to files. |
target | string | no | Deployment target: "production" or "preview" (default: "preview"). |
framework | string | no | Framework preset slug (e.g., "nextjs", "remix", "nuxtjs"). |
regions | array | no | List of region codes to deploy to (e.g., ["iad1", "sfo1"]). |
project_settings | object | no | Override project settings for this deployment (buildCommand, outputDirectory, installCommand, etc.). |
team_id | string | no | Optional team ID to create the deployment under. |
slug | string | no | Optional team slug to create the deployment under. |
vercel.vercel_get_current_user 0 parameters
kosmo integrations:schema vercel.vercel_get_current_user --json | Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
vercel.vercel_get_deployment 3 parameters
kosmo integrations:schema vercel.vercel_get_deployment --json | Parameter | Type | Required | Description |
|---|---|---|---|
id | string | yes | The deployment ID. |
team_id | string | no | Optional team ID if the deployment belongs to a team. |
slug | string | no | Optional team slug if the deployment belongs to a team. |
vercel.vercel_get_project 3 parameters
kosmo integrations:schema vercel.vercel_get_project --json | Parameter | Type | Required | Description |
|---|---|---|---|
id | string | yes | The project ID. |
team_id | string | no | Optional team ID if the project belongs to a team. |
slug | string | no | Optional team slug if the project belongs to a team. |
vercel.vercel_list_deployments 6 parameters
kosmo integrations:schema vercel.vercel_list_deployments --json | Parameter | Type | Required | Description |
|---|---|---|---|
project_id | string | no | Filter deployments by project ID. |
state | string | no | Filter by deployment state (e.g., READY, ERROR, BUILDING, QUEUED). |
target | string | no | Filter by target environment (e.g., production, preview, development). |
limit | integer | no | Maximum number of deployments to return (default 20, max 100). |
team_id | string | no | Optional team ID to scope deployments to a specific team. |
slug | string | no | Optional team slug to scope deployments to a specific team. |
vercel.vercel_list_domains 3 parameters
kosmo integrations:schema vercel.vercel_list_domains --json | Parameter | Type | Required | Description |
|---|---|---|---|
limit | integer | no | Maximum number of domains to return (default 20, max 100). |
team_id | string | no | Optional team ID to scope domains to a specific team. |
slug | string | no | Optional team slug to scope domains to a specific team. |
vercel.vercel_list_projects 3 parameters
kosmo integrations:schema vercel.vercel_list_projects --json | Parameter | Type | Required | Description |
|---|---|---|---|
limit | integer | no | Maximum number of projects to return (default 20, max 100). |
team_id | string | no | Optional team ID to scope projects to a specific team. |
slug | string | no | Optional team slug to scope projects to a specific team. |
vercel.vercel_list_teams 1 parameters
kosmo integrations:schema vercel.vercel_list_teams --json | Parameter | Type | Required | Description |
|---|---|---|---|
limit | integer | no | Maximum number of teams to return (default 20, max 100). |
Permissions
Headless calls still follow the integration read/write permission policy. Configure read/write defaults with
integrations:configure. Add --force only for trusted automation that should bypass that policy.