Skip to content

vercel connect

The vercel connect command is currently in beta. Features and behavior may change.

The vercel connect command manages Vercel Connect connectors. Use it to create connectors, attach them to projects, request runtime tokens, and remove them.

It supports the following subcommands:

  • create: Create a new connector
  • list: List connectors for your team or project
  • token: Get a runtime token from a connector
  • attach: Attach a project to a connector
  • detach: Detach a project from a connector
  • update: Update connector branding
  • remove: Delete a connector
  • open: Open a connector in the Vercel dashboard

Connectors are identified by their ID (for example, scl_abc123) or their UID (for example, slack/my-bot).

Creates a new connector for a service.

terminal
vercel connect create <service>
Create a new connector for the given service.

Pass a service name such as slack, notion, or okta, or the URL of an OAuth or MCP server such as mcp.linear.app.

terminal
vercel connect create slack --name acme-slack
Create a Slack connector named acme-slack.

For a known service, the CLI reads the connection methods that Vercel publishes for it and prompts you for what the connector needs, so you can finish setup in the terminal. It opens your browser only when the provider requires you to sign in or install an app.

Depending on the service, the CLI asks you for:

  • Product: which part of the service to connect to, such as its API or its MCP server. You only see this when a service exposes more than one.
  • Connection method: how to authenticate, such as oauth or api-key. Each method shows whether Vercel registers the application with the provider for you (automatic registration) or whether you supply your own credentials (bring your own credentials).
  • Setup values: values the method needs to reach your account, such as an Okta domain.
  • Credentials: a client ID, client secret, or API key, when the method needs them. The CLI masks secret values as you type them.

When a service publishes a single connection method, the CLI asks you to confirm it instead of showing a list. Pass --yes to skip that confirmation.

For a service that publishes no connection methods, such as an OAuth server URL that Vercel doesn't recognize, Vercel sets up what it can and opens your browser for the remaining steps.

Run --help against a service to list its products, its connection methods, the credentials and setup values each method needs, and a runnable example for each:

terminal
vercel connect create notion --help
Describe how you can connect to Notion.

To create a connector from a script or in CI, pass your choices as flags. Use --connection-method to pick the method, --target to pick the product, --param KEY=VALUE for setup values, and --data for credentials:

terminal
vercel connect create okta --connection-method custom-server \
  --param domain=acme.okta.com --param auth_server_id=default \
  --name okta --data @credentials.json
Create an Okta connector with no prompts.

Pass --data @<path> to read credentials from a file, or --data @- to read them from stdin. Inline --data values leak into your shell history and into process listings, so use a file or stdin for anything secret.

OptionShorthandDescription
--name <NAME>-nName for the connector.
--connection-method <METHOD>How to connect to the service (for example, oauth, api-key, mcp). Omit it to choose interactively.
--target <TARGET>Which of the service's products to connect to (for example, api, mcp). Only needed when a service exposes more than one.
--param <KEY=VALUE>Value for a setup field on the connection method (for example, domain=acme.okta.com). Repeatable.
--data <JSON>JSON object of credentials and configuration for the connector. Pass @<path> to read from a file or @- to read from stdin.
--connector-type <TYPE>Connector type to create. Only valid with --data. By default, Vercel resolves the type from the service.
--triggersEnable webhook trigger forwarding for this connector.
--trigger-event <EVENT>Webhook event to receive. Repeatable. Requires --triggers, and replaces the provider's default events.
--yes-ySkip the confirmation prompt shown when a service has a single connection method.
--icon <PATH>Path to a PNG or JPEG image to use as the connector icon.
--background-color <HEX>Background color for the connector icon (for example, #1A2B3C).
--accent-color <HEX>Accent color for the connector icon (for example, #FF0066).
--format <FORMAT>-FSpecify the output format (json).
terminal
vercel connect create slack
vercel connect create notion --help
vercel connect create notion --connection-method mcp --name notion-mcp
vercel connect create notion --target api --connection-method oauth --name notion --data @credentials.json
vercel connect create notion --connection-method api-key --name notion --data @key.json
vercel connect create okta --connection-method custom-server --param domain=acme.okta.com --name okta --data @credentials.json
vercel connect create slack --name my-bot --triggers
vercel connect create mcp.linear.app --name linear-connector
vercel connect create slack --name my-bot --icon ./logo.png --background-color '#1A2B3C'
vercel connect create slack --format=json

Lists connectors for your team or project, with optional filtering by type, service, or search text. Also available as vercel connect ls.

terminal
vercel connect list
List connectors linked to the current project.

By default, only connectors linked to the currently linked project are shown. Use --all-projects to list every connector in the team.

terminal
vercel connect list --all-projects
List every connector in the team regardless of project link.
OptionShorthandDescription
--all-projectsList every connector in the team, regardless of project link.
--type <TYPE>Filter by connector type (slack, github, oauth, custom). Repeatable.
--service <NAME>Filter by service name (for example, slack, mcp.linear.app). Repeatable.
--search <TEXT>Search connectors by name or UID.
--limit <COUNT>Number of connectors to return per page.
--next <CURSOR>Cursor for the next page of results.
--format <FORMAT>-FSpecify the output format (json).
terminal
vercel connect list --all-projects
vercel connect list --type slack
vercel connect list --type oauth --type github
vercel connect list --service mcp.linear.app
vercel connect list --search prod
vercel connect list --limit 10
vercel connect list --format=json

Requests a runtime token from a connector. Plain output is the raw token value, suitable for TOKEN=$(vercel connect token ...).

terminal
vercel connect token <connector>
Get a user token for the given connector.

By default the command requests a user token (acting on behalf of you). Use --subject app to request an app token using the connector's default installation.

terminal
vercel connect token slack/my-bot --subject app
Get an app token using the connector's default installation.

If authorization or installation is required and the session is interactive, the CLI opens your browser and polls for the result. Pass --yes to allow this in non-interactive contexts.

OptionShorthandDescription
--subject <TYPE>-sSubject type: user (default) or app.
--installation-id <ID>Target a specific installation. Only applies with --subject app.
--scopes <SCOPES>Scopes for the token request. Comma- or space-separated.
--yes-yAllow opening the browser automatically if authorization or installation is required.
--format <FORMAT>-FSpecify the output format (json). JSON output includes expiresAt, installationId, and other fields.
terminal
vercel connect token scl_abc123
vercel connect token slack/my-bot
vercel connect token scl_abc123 --subject app
vercel connect token scl_abc123 --subject app --installation-id inst_1
vercel connect token scl_abc123 --scopes channels:read,chat:write
vercel connect token scl_abc123 --yes
vercel connect token scl_abc123 --format=json

Attaches a Vercel project to a connector for one or more environments, so the project can request tokens from that connector at runtime.

terminal
vercel connect attach <connector>
Attach the currently linked project to a connector for all built-in environments: Production (production), Preview (preview), and Development (development).
terminal
vercel connect attach scl_abc123 -e production -e preview
Attach and restrict to specific environments.

Passing --environment replaces the built-in environment defaults. The example command below enables only the qa Custom Environment for a project with no existing trigger destinations to other Custom Environments:

terminal
vercel connect attach scl_abc123 --environment qa
Attach the connector to the qa Custom Environment.

If the project already has trigger destinations that target other Custom Environments, the CLI preserves those environments on the project link.

Use --triggers to also register the project as a trigger destination. When registered, the connector forwards verified incoming webhooks to the project. A connector can have up to three trigger destinations.

terminal
vercel connect attach scl_abc123 --triggers
Attach and register the project as a trigger destination.

If you do not pass --trigger-branch or --trigger-environment, the destination targets Production.

If you omit --trigger-path, Vercel derives the receiver path from the connector and project framework. Pass --trigger-path to select the receiver path explicitly.

Use --trigger-environment to forward incoming webhooks to a Custom Environment:

terminal
vercel connect attach scl_abc123 --environment qa --triggers \
  --trigger-environment qa --trigger-path /api/slack-events
Allow token requests from qa and forward webhooks to it.

The CLI combines the environments passed to --environment with the trigger target. For a project with no existing trigger destinations, the example above produces a project link that contains only qa. Existing trigger destinations remain registered, and the CLI preserves any Custom Environments they require on the project link. If you omit --environment, the CLI links production, preview, and development, adds qa because it is the trigger target, and preserves Custom Environments required by existing destinations.

Detaching a project (via vercel connect detach) removes the token-access link but does not remove the project from the connector's trigger destinations. Manage trigger destinations separately.

OptionShorthandDescription
--project <NAME_OR_ID>-pProject name or ID. Defaults to the currently linked project.
--environment <ENV>-eEnvironments to enable by built-in name or Custom Environment slug. Repeatable and comma-separated. Defaults to production, preview, and development.
--triggersRegister this project as a trigger destination for incoming webhooks.
--trigger-branch <BRANCH>Git branch for the trigger destination. Mutually exclusive with --trigger-environment and only valid with --triggers.
--trigger-environment <ENV>Custom Environment slug for the trigger destination. Mutually exclusive with --trigger-branch and only valid with --triggers.
--trigger-path <PATH>Path on the project that receives forwarded webhooks. Only valid with --triggers.
--yes-ySkip the confirmation prompt.
--format <FORMAT>-FSpecify the output format (json).
terminal
vercel connect attach scl_abc123
vercel connect attach scl_abc123 -e production -e preview
vercel connect attach scl_abc123 -e qa
vercel connect attach slack/my-bot --project my-app
vercel connect attach scl_abc123 --triggers
vercel connect attach scl_abc123 --triggers --trigger-branch staging --trigger-path /slack
vercel connect attach scl_abc123 -e qa --triggers --trigger-environment qa --trigger-path /slack
vercel connect attach scl_abc123 --yes --format=json

Detaches a Vercel project from a connector. The project can no longer request tokens from that connector.

terminal
vercel connect detach <connector>
Detach the currently linked project from a connector.
terminal
vercel connect detach slack/my-bot --project my-app
Detach a specific project by name.
OptionShorthandDescription
--project <NAME_OR_ID>-pProject name or ID. Defaults to the currently linked project.
--yes-ySkip the confirmation prompt.
--format <FORMAT>-FSpecify the output format (json).
terminal
vercel connect detach scl_abc123
vercel connect detach slack/my-bot --project my-app
vercel connect detach scl_abc123 --yes --format=json

Updates connector branding: icon and colors.

terminal
vercel connect update <connector>
Update branding for the given connector.
OptionShorthandDescription
--icon <PATH>Path to a PNG or JPEG image to use as the connector icon.
--background-color <HEX>Background color for the connector icon (for example, #1A2B3C).
--accent-color <HEX>Accent color for the connector icon (for example, #FF0066).
--format <FORMAT>-FSpecify the output format (json).
terminal
vercel connect update scl_abc123 --icon ./logo.png
vercel connect update scl_abc123 --background-color '#1A2B3C' --accent-color '#FF0066'
vercel connect update scl_abc123 --icon ./logo.png --format=json

Deletes a connector. By default the command prompts for confirmation. Also available as vercel connect rm.

terminal
vercel connect remove <connector>
Delete a connector by ID or UID.

If the connector still has projects attached, the deletion fails unless you pass --disconnect-all to detach all projects first.

terminal
vercel connect remove scl_abc123 --disconnect-all --yes
Detach all projects from a connector and then delete it without prompting.
OptionShorthandDescription
--disconnect-all-aDisconnect all projects from the connector before deletion.
--yes-ySkip the confirmation prompt.
--format <FORMAT>-FSpecify the output format (json).
terminal
vercel connect remove scl_abc123
vercel connect remove slack/my-bot
vercel connect remove scl_abc123 --disconnect-all
vercel connect remove scl_abc123 --yes
vercel connect remove scl_abc123 --disconnect-all --yes --format=json

Opens a connector in the Vercel dashboard. With --format=json, prints the dashboard URL instead of opening a browser.

terminal
vercel connect open <connector>
Open a connector in the Vercel dashboard.
OptionShorthandDescription
--format <FORMAT>-FSpecify the output format (json).
terminal
vercel connect open scl_abc123
vercel connect open slack/my-bot
vercel connect open scl_abc123 --format=json

The following global options can be passed when using the vercel connect command:

For more information on global options and their usage, refer to the options section.

Last updated August 11, 2026

Was this helpful?