Skip to content

Connectors · Developer & infrastructure

Vercel MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Vercel and the rest of your systems. It gives your agent 414 Vercel actions (171 reads, 173 writes and 70 that wait for a confirmation) and holds the Vercel credential itself, so the agent never does. It paces Vercel's limits and records every call.

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

claude mcp add --transport http actionlake https://connect.actionlake.com/mcp
the first call
do {  action: "vercel.projects.get_projects",  intent: "check which Vercel account is connected"}# Retrieve a list of projects · read · 1 upstream call
  • 414actionsin one signed file
  • 171readlook, never change
  • 173writecreate and update
  • 70wait for a yesdestructive, confirmed first

Set up

Connect Vercel in three steps.

  1. 01

    Add actionlake to Claude.

    Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.

    https://connect.actionlake.com/mcp
  2. 02

    Connect Vercel.

    Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.

    • tokenVercel access token
    • team_idYour Vercel team id
    • team_slugYour Vercel team slug
    account { op: "connections.requirements", service: "vercel" }
    # free: exactly what to paste, and what is found for you
  3. 03

    Make the first call. Check before a write.

    Ask in plain words; Claude picks the action. Before anything changes, check validates the call and prices it, for free.

    do    { action: "vercel.projects.get_projects" }# retrieve a list of projects · read · 1 upstream callcheck { action: "vercel.projects.create_project", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent

Vercel at a glance

Sign-in
Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
You provide
token
Setup fields
team_idteam_slug
Limits we pace to
1,000 calls an hour, per connection
API covered
Vercel API 2026-09api.vercel.com
Built from
Vercel's documentation, read 19 September 2026openapi.vercel.sh
Service file
Version 1.0.0, signed (Ed25519)
Cached reads
167 of 171 reads, for up to an hour; a write clears what it affects
Ready-made plans
10 in the store
Shared entities
4, so ask can line Vercel up with your other systems
Data
Processed and stored in Sydney, Australia. No US region yet

Capabilities

What an AI agent can do in Vercel.

414 actions in 38 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

  • 171readlook, never change
  • 173writecreate and update
  • 70destructivewait for a confirmation
  1. Projects

    32

    8 read · 19 write · 5 destructive

    Retrieve a list of projects · Create a new project · Find a project by id or name · Update an existing project

  2. Sandboxes

    30

    11 read · 14 write · 5 destructive

    List sessions · Create a directory · List snapshots · List drives

  3. Domains

    28

    18 read · 8 write · 2 destructive

    Get supported TLDs · Buy multiple domains · Buy a domain · Transfer-in a domain

  4. VCR

    25

    12 read · 6 write · 7 destructive

    List image tags · List repository tags · List repository images · Create a repository

  5. Marketplace

    24

    6 read · 14 write · 4 destructive

    Get Member Information · Get Integration Resources · Submit Invoice · Submit Prepayment Balances

  6. Feature flags

    21

    12 read · 6 write · 3 destructive

    Retrieve the feature flags of a deployment · List flag versions · List flags · List flags

  7. Edge config

    18

    9 read · 6 write · 3 destructive

    Create a Global Config token · Get all tokens of a Global Config · Get Global Config token meta data · Delete one or more Global Config tokens

  8. Teams

    16

    4 read · 8 write · 4 destructive

    List all teams · List team members · Create a Team · Get a Team

30 more areas · 220 actions
  • Checks 15
  • Connect 13
  • KMS 13
  • Log drains 13
  • Security 13
  • AI gateway 12
  • Access groups 11
  • Environment 11
  • Networking 11
  • Deployments 9
  • Integrations 9
  • Other 8
  • Project routes 8
  • Rolling releases 8
  • Bulk redirects 7
  • Aliases 6
  • Artifacts 6
  • Authentication 5
  • Certs 5
  • Microfrontends 5
  • Analytics 4
  • DNS 4
  • Edge cache 4
  • User 4
  • Webhooks 4
  • Billing 3
  • Project members 3
  • Storage 3
  • Observability 2
  • Logs 1

Vercel's own MCP server

Vercel's MCP server, or actionlake?

Vercel runs a remote MCP server at mcp.vercel.com, signed in with OAuth, for the AI clients Vercel has reviewed and approved.

Use Vercel's server when one person wants to work in Vercel from their own AI client. Use actionlake when you also want Vercel behind the same endpoint as your other systems: a key per agent with allowed actions and a spending cap, a named person's approval before destructive actions, a sealed record of every call, and one ask across Vercel and another system.

Source: Vercel's documentation, checked 22 October 2026.

Top actions

The Vercel API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 239 of Vercel's 254 action names are shared with at least one other connector, so an agent learns them once.

ActionWhat it doesEffectSame name in
vercel.projects.get_projectsRetrieve a list of projectsRetrieve a list of projectsreaddevops.repository.list28 connectors
vercel.deployments.get_deploymentsList deploymentsList deploymentsreaddevops.deployment.list22 connectors
vercel.teams.get_teamsList all teamsList all teamsreadidentity.group.list262 connectors
vercel.teams_members.get_team_membersList team membersList team membersreadidentity.group_member.list103 connectors
vercel.integrations_search_repo.search_repoList git repositories linked to namespace by providerList git repositories linked to namespace by providerreaddevops.repository.list28 connectors
vercel.projects.create_projectCreate a new projectCreate a new projectwritedevops.repository.create18 connectors
vercel.deployments.create_deploymentCreate a new deploymentCreate a new deploymentwritedevops.deployment.create17 connectors
vercel.access_groups.list_access_groupsList access groups for a team, project or memberList access groups for a team, project or memberreadidentity.group.list262 connectors
vercel.access_groups_members.list_access_group_membersList members of an access groupList members of an access groupreadidentity.group_member.list103 connectors
vercel.projects.delete_projectDelete a ProjectDelete a Projectdestructivedevops.repository.delete20 connectors
vercel.projects_custom_environments.get_projects_by_id_or_name_custom_environmentsRetrieve custom environmentsRetrieve custom environmentsreaddevops.environment.list24 connectors
vercel.projects_custom_environments.create_custom_environmentCreate a custom environment for the current project.Create a custom environment for the current project.writedevops.environment.create18 connectors

Try it

Prompts to paste into Claude.

Each one names the Vercel actions it will call, so you know what it reads and what it changes before you send it.

  1. Readread

    List our Vercel repositories with their visibility and default branch.

    callsvercel.projects.get_projects

  2. Planread

    Gather everything about a bad deployment in Vercel.

    callsvercel.deployments_events.get_deployment_eventsvercel.projects_deployments.get_runtime_logsvercel.deployments_checks.get_all_checksvercel.deployments_feature_flags.get_deployment_feature_flagsvercel.deployments_aliases.list_deployment_aliases+1 more

  3. Planwrite

    Price a domain, buy it on approval and attach it to a project in Vercel. Ask me before anything is sent or changed.

    callsvercel.registrar_domains.get_domain_availabilityvercel.registrar_domains.get_domain_pricevercel.registrar_domains.buy_single_domainvercel.projects_domains.add_project_domainvercel.domains_verification.get_domain_verification_record

  4. Writewrite

    Create a new project in Vercel. Show me exactly what you will send before you save it.

    callsvercel.projects.create_project

The plan store

Ready-made plans for Vercel.

10 plans in the store. Install one and your agent runs it by name; the reply says which connections are still missing. A schedule can run a plan on a timetable. There are no triggers or webhooks, by design.

  1. Audit a project's domains and their DNS records

    Use it when Someone asks which domains a Vercel project serves and whether their DNS is correct.

    Effect
    read
    Steps
    3 · loops
    Needs
    project
    Install
    vercel-audit-project-domains
  2. Weekly traffic and events report for a project

    Use it when Someone asks how much traffic a Vercel project got and where it came from.

    Effect
    read
    Steps
    4
    Needs
    project id, since and until
    Install
    vercel-traffic-report
  3. Gather everything about a bad deployment

    Use it when A Vercel deployment failed or behaved badly and you need all of its evidence in one place.

    Effect
    read
    Steps
    6
    Needs
    deployment id and project id
    Install
    vercel-investigate-failed-deployment
  4. Invalidate edge cache tags for a project

    Use it when Stale content is being served from the Vercel edge and specific cache tags need purging.

    Effect
    write
    Steps
    4
    Needs
    project and tags
    Install
    vercel-purge-edge-cache
  5. Check for an attack and raise the challenge wall

    Use it when A Vercel project looks like it is under attack and challenge mode may need turning on.

    A person decidesEnable attack challenge mode on project project id until attack mode active until. Every visitor will be challenged.

    Effect
    write
    Steps
    5
    Needs
    project id and attack mode active until
    Install
    vercel-attack-mode-response
  6. Promote a deployment to production after sign off

    Use it when A verified deployment should go to production but a person must sign off first.

    A person decidesPromote deployment deployment id to production for project project id.

    Effect
    write
    Steps
    5
    Needs
    project id and deployment id
    Install
    vercel-promote-deployment-with-approval
  7. Advance a rolling release to its next stage

    Use it when A canary stage looks healthy and someone wants to widen it to the next slice of traffic.

    A person decidesAdvance the rolling release on project to stage next stage index, widening live traffic to canary canary deployment id.

    Effect
    write
    Steps
    5
    Needs
    project, canary deployment id and next stage index
    Install
    vercel-rolling-release-advance
  8. Price a domain, buy it on approval and attach it to a project

    Use it when A new domain needs buying through Vercel and wiring onto an existing project.

    A person decidesBuy domain for years year(s) at price and attach it to project project.

    Effect
    write
    Steps
    7
    Needs
    domain, project, years and contact information
    Install
    vercel-register-domain-and-attach
  9. Remove a person from a project after sign off

    Use it when Someone has left a team or a project and their Vercel project access must be revoked.

    A person decidesRemove member uid from project project. This revokes their access immediately.

    Effect
    destructive
    Steps
    4
    Needs
    project and uid
    Install
    vercel-offboard-project-member
  10. Run a command in a named sandbox and collect its output

    Use it when A command must be run inside an existing Vercel sandbox and its output brought back.

    A person decidesRun `command` in Vercel sandbox sandbox name, session session id.

    Effect
    destructive
    Steps
    6
    Needs
    sandbox name, session id, cmd id and command
    Install
    vercel-sandbox-run-command
install a plan
account { op: "plans.install", slug: "vercel-audit-project-domains" }
# then ask for it by name; a schedule can run it on a timetable

Governance for Vercel

Destructive actions wait for a yes.

70 Vercel actions are destructive. The first 10:

  • Delete a Projectvercel.projects.delete_project
  • Delete a Teamvercel.teams.delete_team
  • Deletes an access groupvercel.access_groups.delete_access_group
  • Delete a Deploymentvercel.deployments.delete_deployment
  • Cancel a deploymentvercel.deployments_cancel.cancel_deployment
  • Remove a Team Membervercel.teams_members.remove_team_member
  • Create project transfer requestvercel.projects_transfer_request.create_project_transfer_request
  • Delete one or more Env Varvercel.env.delete_shared_env_variable
  • Remove an environment variablevercel.projects_env.remove_project_env
  • Batch remove environment variablesvercel.projects_env.batch_remove_project_env

A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

dovercel.projects.delete_projectconfirm_policy: human

Delete a Project?

intent: the user asked me to delete a Project

run suspended · waiting for a named person · key vercel-agent cannot confirm itself
In the console, or from an emailed signed link.
a key for this connector
account {  op: "keys.create", name: "vercel-agent",  allowed_actions: ["vercel.*"], cap_calls: 2000,  confirm_policy: "human_for_writes",  approval_rules: [    { match: "vercel.projects.delete_project", approver: "[email protected]" },    { match: "vercel.teams.delete_team", approver: "[email protected]" },    { match: "vercel.access_groups.delete_access_group", approver: "[email protected]" }  ]}
Illustrative. Scoped to Vercel only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

What Vercel costs on actionlake.

Every Vercel action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Vercel refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

  • 1upstream call per actionall 414 Vercel actions
  • 414actions pageeach page of a long list is one call
  • 167reads can be cacheda cache hit costs nothing
  • 100,000calls a month, freepaid plans from US$49 a month for 250,000

See pricing

Action index

Every Vercel action.

414 actions by area: the id your agent calls, what it does, and its effect.

Projects32
  • vercel.projects.create_projectCreate a new projectwrite
  • vercel.projects.get_projectFind a project by id or nameread
  • vercel.projects.get_projectsRetrieve a list of projectsread
  • vercel.projects.update_projectUpdate an existing projectwrite
  • vercel.projects.delete_projectDelete a Projectdestructive
  • vercel.projects_avatar.upload_project_avatarUpload a project avatarwrite
  • and 26 more in this area
Sandboxes30
  • vercel.sandboxes_drives.list_drivesList drivesread
  • vercel.sandboxes_sessions.create_session_directoryCreate a directorywrite
  • vercel.sandboxes_sessions.list_sessionsList sessionsread
  • vercel.sandboxes_snapshots.list_session_snapshotsList snapshotsread
  • vercel.sandboxes.create_sandboxes_v2Create a named sandboxwrite
  • vercel.sandboxes.create_sandboxes_v3Create a named sandboxwrite
  • and 24 more in this area
Domains28
  • vercel.registrar_domains.buy_domainsBuy multiple domainswrite
  • vercel.registrar_domains.buy_single_domainBuy a domainwrite
  • vercel.registrar_domains.transfer_in_domainTransfer-in a domaindestructive
  • vercel.registrar_tlds.get_supported_tldsGet supported TLDsread
  • vercel.domains.create_or_transfer_domainAdd an existing domain to the Vercel platformwrite
  • vercel.domains.delete_domainRemove a domain by namedestructive
  • and 22 more in this area
VCR25
  • vercel.tags.get_by_team_slug_by_project_slug_by_repository_name_tags_listList image tagsread
  • vercel.vcr.create_repositoryCreate a repositorywrite
  • vercel.vcr.list_repository_imagesList repository imagesread
  • vercel.vcr.list_repository_tagsList repository tagsread
  • vercel.blobs.create_by_team_slug_by_project_slug_by_repository_name_blobs_uploadsStart a blob uploadwrite
  • vercel.blobs.delete_by_team_slug_by_project_slug_by_repository_name_blobs_by_digestDelete a blobdestructive
  • and 19 more in this area
Marketplace24
  • vercel.installations_billing.submit_invoiceSubmit Invoicewrite
  • vercel.installations_billing.submit_prepayment_balancesSubmit Prepayment Balanceswrite
  • vercel.installations_member.get_memberGet Member Informationread
  • vercel.installations_resources.get_integration_resourcesGet Integration Resourcesread
  • vercel.installations.update_installationUpdate Installationwrite
  • vercel.installations_account.get_account_infoGet Account Informationread
  • and 18 more in this area
Feature flags21
  • vercel.deployments_feature_flags.get_deployment_feature_flagsRetrieve the feature flags of a deploymentread
  • vercel.projects_feature_flags.list_flag_versionsList flag versionsread
  • vercel.projects_feature_flags.list_flagsList flagsread
  • vercel.projects_feature_flags.list_flags_v2List flagsread
  • vercel.projects_feature_flags.create_flagCreate a flagwrite
  • vercel.projects_feature_flags.create_flag_segmentCreate a segmentwrite
  • and 15 more in this area
Edge config18
  • vercel.global_config_token.create_edge_config_tokenCreate a Global Config tokenwrite
  • vercel.global_config_token.get_edge_config_tokenGet Global Config token meta dataread
  • vercel.global_config_tokens.delete_edge_config_tokensDelete one or more Global Config tokensdestructive
  • vercel.global_config_tokens.get_edge_config_tokensGet all tokens of a Global Configread
  • vercel.global_config.create_edge_configCreate a Global Configwrite
  • vercel.global_config.delete_edge_configDelete a Global Configdestructive
  • and 12 more in this area
Teams16
  • vercel.teams.create_teamCreate a Teamwrite
  • vercel.teams.get_teamGet a Teamread
  • vercel.teams.get_teamsList all teamsread
  • vercel.teams_members.get_team_membersList team membersread
  • vercel.teams.delete_teamDelete a Teamdestructive
  • vercel.teams.patch_teamUpdate a Teamwrite
  • and 10 more in this area
Checks15
  • vercel.deployments_check_runs.list_deployment_check_runsList check runs for a deploymentread
  • vercel.deployments_checks.get_all_checksRetrieve a list of all checksread
  • vercel.projects_checks.list_check_runsList runs for a checkread
  • vercel.projects_checks.list_project_checksList all checks for a projectread
  • vercel.deployments_check_runs.create_deployment_check_runCreate a check runwrite
  • vercel.deployments_check_runs.get_deployment_check_runGet a check runread
  • and 9 more in this area
Connect13
  • vercel.connect_connectors.create_connectorCreate a connectorwrite
  • vercel.connect_connectors.get_connectorGet a connectorread
  • vercel.connect_connectors.list_connectorsList connectorsread
  • vercel.connect_token.get_connector_tokenGet a Connect tokenwrite
  • vercel.connect_authorize.create_connector_authorization_requestCreate a Connect authorization requestwrite
  • vercel.connect_connectors.delete_connectorDelete a connectordestructive
  • and 7 more in this area
KMS13
  • vercel.kms_issuers.create_kms_issuer_policyCreate an issuer policywrite
  • vercel.kms_issuers.create_kms_signing_keyCreate a signing keywrite
  • vercel.kms_issuers.sign_kms_tokenSign a tokenwrite
  • vercel.kms_issuers.update_kms_issuer_policyUpdate an issuer policywrite
  • vercel.kms_issuers.activate_kms_signing_keyActivate a signing keywrite
  • vercel.kms_issuers.create_kms_issuerCreate an issuerwrite
  • and 7 more in this area
Log drains13
  • vercel.drains.create_drainCreate a new Drainwrite
  • vercel.drains.get_drainsRetrieve a list of all Drainsread
  • vercel.integrations_log_drains.get_integration_log_drainsRetrieves a list of Integration log drains (deprecated)read
  • vercel.log_drains.get_all_log_drainsRetrieves a list of all the Log Drains (deprecated)read
  • vercel.drains.delete_drainDelete a draindestructive
  • vercel.drains.get_drainFind a Drain by idread
  • and 7 more in this area
Security13
  • vercel.security_attack_mode.update_attack_challenge_modeUpdate Attack Challenge modewrite
  • vercel.security_firewall.create_security_firewall_config_by_config_version_activateReturns activated WAF configwrite
  • vercel.security_firewall.delete_security_firewall_config_by_config_versionReturns activated WAF configdestructive
  • vercel.security_firewall.get_firewall_configRead Firewall Configurationread
  • vercel.security_firewall.get_security_firewall_configReturns activated WAF configread
  • vercel.security_firewall.update_firewall_configUpdate Firewall Configurationwrite
  • and 7 more in this area
AI gateway12
  • vercel.ai_gateway_rules.create_ai_gateway_ruleCreate rulewrite
  • vercel.ai_gateway_rules.list_ai_gateway_rulesList rulesread
  • vercel.ai_gateway_rules.update_ai_gateway_ruleUpdate rulewrite
  • vercel.ai_gateway_virtual_model_configs.create_ai_gateway_virtual_model_configCreate virtual model configwrite
  • vercel.ai_gateway_rules.delete_ai_gateway_ruleDelete ruledestructive
  • vercel.ai_gateway_virtual_model_configs.delete_ai_gateway_virtual_model_configDelete virtual model configdestructive
  • and 6 more in this area
Access groups11
  • vercel.access_groups.create_access_groupCreates an access groupwrite
  • vercel.access_groups.list_access_groupsList access groups for a team, project or memberread
  • vercel.access_groups.read_access_groupReads an access groupread
  • vercel.access_groups_members.list_access_group_membersList members of an access groupread
  • vercel.access_groups.delete_access_groupDeletes an access groupdestructive
  • vercel.access_groups.update_access_groupUpdate an access groupwrite
  • and 5 more in this area
Environment11
  • vercel.env.create_shared_env_variableCreate one or more shared environment variableswrite
  • vercel.env.list_shared_env_variableLists all Shared Environment Variables for a teamread
  • vercel.projects_custom_environments.create_custom_environmentCreate a custom environment for the current project.write
  • vercel.projects_custom_environments.get_projects_by_id_or_name_custom_environmentsRetrieve custom environmentsread
  • vercel.env.delete_shared_env_variableDelete one or more Env Vardestructive
  • vercel.env.get_shared_env_varRetrieve the decrypted value of a Shared Environment Variable by id.read
  • and 5 more in this area
Networking11
  • vercel.connect_networks.create_networkCreate a Secure Compute networkwrite
  • vercel.connect_networks.list_networksList Secure Compute networksread
  • vercel.networking_privatelink.create_private_link_endpointCreate a PrivateLink endpointwrite
  • vercel.networking_privatelink.list_private_link_endpointsList PrivateLink endpointsread
  • vercel.connect_networks.delete_networkDelete a Secure Compute networkdestructive
  • vercel.connect_networks.read_networkRead a Secure Compute networkread
  • and 5 more in this area
Deployments9
  • vercel.deployments.create_deploymentCreate a new deploymentwrite
  • vercel.deployments.delete_deploymentDelete a Deploymentdestructive
  • vercel.deployments.get_deploymentGet a deployment by ID or URLread
  • vercel.deployments.get_deploymentsList deploymentsread
  • vercel.deployments_cancel.cancel_deploymentCancel a deploymentdestructive
  • vercel.deployments_events.get_deployment_eventsGet deployment eventsread
  • and 3 more in this area
Integrations9
  • vercel.integrations_configuration.get_configuration_productsList products for integration configurationread
  • vercel.integrations_configurations.get_configurationsGet configurations for the authenticated user or teamread
  • vercel.integrations_git_namespaces.git_namespacesList git namespaces by providerread
  • vercel.integrations_search_repo.search_repoList git repositories linked to namespace by providerread
  • vercel.integrations_configuration.delete_configurationDelete an integration configurationdestructive
  • vercel.integrations_configuration.get_configurationRetrieve an integration configurationread
  • and 3 more in this area
Other8
  • vercel.api_keys.create_api_keyscreateApiKeyswrite
  • vercel.domains_records.get_domains_records_by_record_idgetDomainsRecordsByRecordIdread
  • vercel.observability.get_observability_schemagetObservabilitySchemaread
  • vercel.observability.get_observability_schema_by_metric_idgetObservabilitySchemaByMetricIdread
  • vercel.domains_records.replace_domains_by_domain_recordsreplaceDomainsByDomainRecordswrite
  • vercel.observability.create_observability_querycreateObservabilityQuerywrite
  • and 2 more in this area
Project routes8
  • vercel.projects_routes.add_routeAdd a routing rulewrite
  • vercel.projects_routes.generate_routeGenerate a routing rule from natural languagewrite
  • vercel.projects_routes.get_route_versionsGet routing rule version historyread
  • vercel.projects_routes.get_routesGet project routing rulesread
  • vercel.projects_routes.delete_routesDelete routing rulesdestructive
  • vercel.projects_routes.edit_routeEdit a routing rulewrite
  • and 2 more in this area
Rolling releases8
  • vercel.projects_rolling_release.approve_rolling_release_stageUpdate the active rolling release to the next stage for a projectwrite
  • vercel.projects_rolling_release.complete_rolling_releaseComplete the rolling release for the projectwrite
  • vercel.projects_rolling_release.get_rolling_releaseGet the active rolling release information for a projectread
  • vercel.projects_rolling_release.start_rolling_releaseStart a rolling release for the projectwrite
  • vercel.projects_rolling_release.delete_rolling_release_configDelete rolling release configurationdestructive
  • vercel.projects_rolling_release.get_rolling_release_billing_statusGet rolling release billing statusread
  • and 2 more in this area
Bulk redirects7
  • vercel.bulk_redirects.edit_redirectEdit a project-level redirect.write
  • vercel.bulk_redirects.get_redirectsGets project-level redirects.read
  • vercel.bulk_redirects.get_versionsGet the version history for a project's redirects.read
  • vercel.bulk_redirects.restore_redirectsRestore staged project-level redirects to their production version.write
  • vercel.bulk_redirects.delete_redirectsDelete project-level redirects.destructive
  • vercel.bulk_redirects.stage_redirectsStages new redirects for a project.write
  • and 1 more in this area
Aliases6
  • vercel.aliases.get_aliasGet an Aliasread
  • vercel.aliases.list_aliasesList aliasesread
  • vercel.deployments_aliases.assign_aliasAssign an Aliaswrite
  • vercel.deployments_aliases.list_deployment_aliasesList Deployment Aliasesread
  • vercel.aliases.delete_aliasDelete an Aliasdestructive
  • vercel.aliases.patch_url_protection_bypassUpdate the protection bypass for a URLwrite
Artifacts6
  • vercel.artifacts.artifact_queryQuery information about an artifactread
  • vercel.artifacts.delete_all_artifactsDelete all cache artifactsdestructive
  • vercel.artifacts.download_artifactDownload a cache artifactread
  • vercel.artifacts.upload_artifactUpload a cache artifactwrite
  • vercel.artifacts_events.record_eventsRecord an artifacts cache usage eventwrite
  • vercel.artifacts_status.statusGet status of Remote Caching for this principalread
Authentication5
  • vercel.integrations_sso.exchange_sso_tokenSSO Token Exchangewrite
  • vercel.user_tokens.create_auth_tokenCreate an Auth Tokenwrite
  • vercel.user_tokens.get_auth_tokenGet Auth Token Metadataread
  • vercel.user_tokens.list_auth_tokensList Auth Tokensread
  • vercel.user_tokens.delete_auth_tokenDelete an authentication tokendestructive
Certs5
  • vercel.certs.get_cert_by_idGet cert by idread
  • vercel.certs.get_certsGet certsread
  • vercel.certs.issue_certIssue a new certwrite
  • vercel.certs.remove_certRemove certdestructive
  • vercel.certs.upload_certUpload a certwrite
Microfrontends5
  • vercel.microfrontends.create_microfrontends_group_with_applicationsCreate a microfrontends group with applicationswrite
  • vercel.microfrontends.get_microfrontends_configGet microfrontends config for a deploymentread
  • vercel.microfrontends.get_microfrontends_groupsList microfrontends groupsread
  • vercel.microfrontends.get_microfrontends_in_groupList projects in a microfrontends groupread
  • vercel.microfrontends.get_microfrontends_config_for_projectGet microfrontends config for a projectread
Analytics4
  • vercel.query.aggregate_eventsAggregates custom eventsread
  • vercel.query.aggregate_pageviewsAggregates page viewsread
  • vercel.query.count_eventsCounts custom eventsread
  • vercel.query.count_pageviewsCounts page viewsread
DNS4
  • vercel.domains_records.create_recordCreate a DNS recordwrite
  • vercel.domains_records.get_recordsList existing DNS recordsread
  • vercel.domains_records.remove_recordDelete a DNS recorddestructive
  • vercel.domains_records.update_recordUpdate an existing DNS recordwrite
Edge cache4
  • vercel.edge_cache_dangerously_delete_by_src_images.dangerously_delete_by_src_imagesDangerously delete by source imagedestructive
  • vercel.edge_cache_dangerously_delete_by_tags.dangerously_delete_by_tagsDangerously delete by tagdestructive
  • vercel.edge_cache_invalidate_by_src_images.invalidate_by_src_imagesInvalidate by source imagewrite
  • vercel.edge_cache_invalidate_by_tags.invalidate_by_tagsInvalidate by tagwrite
User4
  • vercel.events.list_event_typesList Event Typesread
  • vercel.events.list_user_eventsList User Eventsread
  • vercel.user.get_auth_userGet the Userread
  • vercel.user.request_deleteDelete User Accountdestructive
Webhooks4
  • vercel.webhooks.create_webhookCreates a webhookwrite
  • vercel.webhooks.delete_webhookDeletes a webhookdestructive
  • vercel.webhooks.get_webhookGet a webhookread
  • vercel.webhooks.get_webhooksGet a list of webhooksread
Billing3
  • vercel.billing.buy_creditsPurchase creditswrite
  • vercel.billing.list_billing_chargesList FOCUS billing chargesread
  • vercel.billing.list_contract_commitmentsList FOCUS contract commitmentsread
Project members3
  • vercel.projects_members.add_project_memberAdds a new member to a project.write
  • vercel.projects_members.get_project_membersList project membersread
  • vercel.projects_members.remove_project_memberRemove a Project Memberdestructive
Storage3
  • vercel.storage_stores.create_storage_stores_blobCreate a Blob storewrite
  • vercel.storage_stores.delete_storage_stores_blob_by_idDelete a Blob storedestructive
  • vercel.storage_stores.get_storage_stores_by_idGet a storeread
Observability2
  • vercel.observability.get_observability_configuration_projectsLists disabled Observability Plus projectsread
  • vercel.observability.update_observability_configuration_projectUpdates a disabled Observability Plus project settingwrite
Logs1
  • vercel.projects_deployments.get_runtime_logsGet logs for a deploymentread

This index shows a sample of each area. All 414 actions, with their inputs and prices, are in the catalogue, which a free sandbox key can search.

Questions

The Vercel MCP server, answered.

Is there a Vercel MCP server for Claude?

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 414 Vercel actions across projects, sandboxes, domains and VCR, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Vercel.

Does Vercel have its own MCP server?

Vercel runs a remote MCP server at mcp.vercel.com, signed in with OAuth, for the AI clients Vercel has reviewed and approved. (Vercel's documentation, checked 22 October 2026.) Use Vercel's server when one person wants to work in Vercel from their own AI client. Use actionlake when you also want Vercel behind the same endpoint as your other systems: a key per agent with allowed actions and a spending cap, a named person's approval before destructive actions, a sealed record of every call, and one ask across Vercel and another system.

What do I need to connect Vercel?

Vercel access token. Plus your team id and your team slug. The free call account { op: "connections.requirements", service: "vercel" } lists exactly what to paste.

Can an AI agent delete or change things in Vercel?

Only if its key allows it, and only with an explicit confirmation. 70 Vercel actions are destructive, including delete a Project, delete a Team and deletes an access group. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

Will an AI agent use up my Vercel API limit?

actionlake paces every call to the limits in the Vercel service file: 1,000 calls an hour per connection. Repeated reads are answered from cache (167 Vercel actions can be), which never reaches Vercel.

What does a Vercel action cost?

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (414 Vercel actions page). Cache hits, searches, dry runs and calls Vercel refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

Which Vercel API does it cover?

The Vercel API 2026-09 at api.vercel.com. It is built from Vercel's documentation as read on 19 September 2026. 414 actions in 38 areas, each one in the signed service file (version 1.0.0).

Does actionlake keep my Vercel data, and where?

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to an hour, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Vercel credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

Which AI clients can use it?

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

Give your agent Vercel today.

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.