# AX Check: vercel.com
Checked 2026-09-19.

Vercel's docs, CLI, and pricing are all clear to agents out of the box.
All 23 checked items passed: setup guide, CLI install, OpenAPI/MCP docs, and pricing tables all readable without login or interaction.

## Onboarding needs a login

## Coding sessions
Three independent coding sessions (DeepSeek V4 Pro, Kimi K3, Qwen 3.8 Max) each completed the task and correctly reported Vercel's pricing: free Hobby tier, $20/month Pro tier with usage-based overages, and custom Enterprise pricing, including relevant assumptions like personal versus commercial use.

### DeepSeek V4 Pro
[View public run](https://agents.withgauge.com/p/runs/af9e8bde-c8a0-4b7d-acb2-a2ea74e03c41) · [Read transcript](https://www.ax-check.com/vercel.com/sessions/deepseek.json)
Final output lists Hobby $0 (personal/non-commercial), Pro $20/member/month (commercial, more usage), Enterprise custom, plus usage-based add-ons for overage, naming plan tier and workload/usage as the driving assumptions and flagging it may change.
#### End-to-end onboarding
- **Onboarding needs a login**: Agent scaffolded a Vercel serverless function locally but never obtained real Vercel credentials. It searched for env vars and ~/.vercel config, found none, tried an unauthenticated API call that returned 403, and then stopped, explicitly stating deployment requires either interactive browser login or a VERCEL_TOKEN it did not have. No authenticated operation against the hosted Vercel product was ever performed.
  Event 18:

  ```text
  ls -la ~/.vercel 2>/dev/null; ls -la ~/.config/vercel 2>/dev/null; find / -maxdepth 4 -name 'auth.json' -path '*vercel*' 2>/dev/null | head; echo "done"
  ```
  Event 36:

  ```text
  curl -sS -o /dev/null -w "%{http_code}\n" https://api.vercel.com/v2/projects 2>&1 || echo "network-blocked"
  ```
  Event 40:

  ```text
  The quickstart's deploy step requires either an interactive login (I can't click through) or a token (I don't have one). So I'm stopping here rather than pretending — I scaffolded the example but **could not deploy or manage the live product**.
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No Vercel credentials available to deploy**: The agent checked the environment and filesystem for a VERCEL_TOKEN or ~/.vercel auth file and found none. An unauthenticated call to the Vercel API returned 403. This is a missing-credentials limitation of the test environment, not a product defect — Vercel's CLI and API both require normal authentication (browser login or token) by design.
  Event 18:

  ```text
  ls -la ~/.vercel 2>/dev/null; ls -la ~/.config/vercel 2>/dev/null; find / -maxdepth 4 -name 'auth.json' -path '*vercel*' 2>/dev/null | head; echo "done"
  ```
  Event 38:

  ```text
  403
  
  ```
  Event 40:

  ```text
  No `VERCEL_TOKEN` or stored `~/.vercel` credentials exist in this environment.
  - An unauthenticated `GET /v2/projects` returned **403**.
  ```

#### Suggested Changes
None identified in this transcript.

### Kimi K3
[View public run](https://agents.withgauge.com/p/runs/c8e11a8a-16e8-452f-9ebe-6a7d26708d44) · [Read transcript](https://www.ax-check.com/vercel.com/sessions/kimi.json)
Final output gives a pricing table (Hobby $0, Pro ~$20/user/month, Enterprise custom) and names assumptions — personal vs commercial use, usage-based overages, and that this specific example would stay within free Hobby limits.
#### End-to-end onboarding
- **Onboarding needs a login**: Agent checked for a Vercel token/CLI session and found none, then confirmed api.vercel.com is reachable but rejects unauthenticated requests (403). No credential acquisition or authenticated operation occurred; the agent explicitly stopped and asked the human to supply a VERCEL_TOKEN. It built local example files but never deployed or called an authenticated Vercel endpoint.
  Event 14:

  ```text
  PI_GATEWAY_API_KEY=<redacted>
  ```
  Event 15:

  ```text
  403
  
  ```
  Event 17:

  ```text
  I can't deploy to Vercel right now because there are no credentials.** I checked:
  - No `VERCEL_TOKEN` in the environment
  - No Vercel CLI installed, no cached login (`~/.vercel` doesn't exist)
  - Network access to `api.vercel.com` works (it returns 403 without a token)
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No Vercel access token available for deployment**: The sandbox environment has no VERCEL_TOKEN, no installed Vercel CLI, and no cached login. This is a missing-credentials situation rather than a product defect: Vercel requires either a browser login or a personal access token to authenticate, and neither was present or obtainable without human action. The agent correctly identified this and stopped short of a real deployment, building local files only.
  Event 17:

  ```text
  I can't deploy to Vercel right now because there are no credentials.** I checked:
  - No `VERCEL_TOKEN` in the environment
  - No Vercel CLI installed, no cached login (`~/.vercel` doesn't exist)
  - Network access to `api.vercel.com` works (it returns 403 without a token)
  ```
  Event 15:

  ```text
  403
  
  ```

#### Suggested Changes
- **Add a scriptable token hint to CLI/API unauthenticated errors**: The agent's only path to unblocking deployment was a manual token creation at vercel.com/account/tokens, since api.vercel.com returned a bare 403 with no guidance and the CLI login flow is interactive. Consider having the 403 response body or CLI error text include a direct pointer to the token creation URL and a non-interactive setup flag, so agents/developers do not have to search separately. Verify by re-running the same unauthenticated request against api.vercel.com/v2/user and checking the response body for actionable guidance.
  Event 15:

  ```text
  403
  
  ```
  Event 17:

  ```text
  generate a token at vercel.com/account/tokens and set it as `VERCEL_TOKEN`
  ```

### Qwen 3.8 Max
[View public run](https://agents.withgauge.com/p/runs/6118a813-e618-49a2-a7c0-a40df292a5f2) · [Read transcript](https://www.ax-check.com/vercel.com/sessions/qwen.json)
Final output gives Hobby (free, ~100GB bandwidth/100GB-hrs), Pro ($20/seat/month, metered bandwidth ~$0.15-0.23/GB, $0.60/million invocations), and ties cost estimate ('$0 on Hobby and pennies on Pro') to the specific workload assumption of a tiny static site plus one function.
#### End-to-end onboarding
- **Onboarding needs a login**: Agent checked environment for a Vercel token, found none, and never obtained credentials on its own. It scaffolded local example files but never deployed or made any authenticated call to the Vercel API. The session ends with an explicit statement that deployment is blocked pending a human-supplied VERCEL_TOKEN.
  Event 4:

  ```text
  PI_GATEWAY_API_KEY=<set>
  ```
  Event 9:

  ```text
  403
  ```
  Event 21:

  ```text
  ⛔ Where I'm blocked:** deploying requires a `VERCEL_TOKEN`, which isn't set in this environment.
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No Vercel token available to deploy**: The environment had no VERCEL_TOKEN or Vercel credential of any kind. The agent confirmed the Vercel API is reachable (403 unauthenticated) but had no way to authenticate, so it could only scaffold local files and never actually deployed. This is a missing-credentials limitation of the test environment, not a product defect.
  Event 4:

  ```text
  PI_GATEWAY_API_KEY=<set>
  ```
  Event 9:

  ```text
  403
  ```
  Event 21:

  ```text
  deploying requires a `VERCEL_TOKEN`, which isn't set in this environment
  ```

#### Suggested Changes
None identified in this transcript.

### Task given to each agent
Help me build a simple example using Vercel. Tell me how pricing works, and briefly tell me whether this product will be easy for you to manage. Let me know if you get blocked. If this product has no developer workflow you can act on, say so plainly and stop. Stay light: use the hosted product through its SDK or API. Do not start local service stacks or wait for long-running commands; if the quickstart requires either, say so plainly and stop.

No product credentials were supplied and no purchases were authorized.

## Score: A · 100/100 (provisional)
Grades come from completed site checks. Coding sessions and skipped checks do not affect the score.

### Clarity
- **Pass** — Homepage answers Markdown requests

  ```text
  Homepage returned text/markdown with a setup guide link when requested with Accept: text/markdown.
  ```

- **Pass** — llms.txt provides an actionable documentation index

  ```text
  llms.txt links docs indexes, sitemap, full content, REST API, MCP, and skills.
  ```

- **Pass** — llms.txt provides navigation guidance

  ```text
  llms.txt gives agent guidance: fetch Markdown indexes, follow links, read OpenAPI before calls.
  ```

- **Pass** — llms.txt mentions offered API, MCP, and skills

  ```text
  llms.txt mentions REST API/OpenAPI, Vercel MCP, and Vercel Skills with install commands.
  ```

- **Pass** — A compact guide representation exists

  ```text
  Homepage negotiates text/markdown and links a compact setup guide at /get-started.md.
  ```

- **Pass** — A focused guide is directly retrievable

  ```text
  get-started.md is a directly retrievable, actionable agent playbook with CLI, plugin, and MCP steps.
  ```

- **Pass** — Equivalent instructions fit a token budget

  ```text
  get-started.md measures 1607 tokens, well under the 8000-token budget.
  ```

- **Pass** — Product-docs links survive format changes

  ```text
  Markdown homepage retains the setup-guide link and key product links like Deploy now.
  ```

- **Pass** — The compact guide is independently actionable

  ```text
  get-started.md gives concrete steps: install CLI, add plugin/skills, connect MCP, verify.
  ```

- **Pass** — Install and next-step links resolve

  ```text
  Fetched install/next-step links resolve: get-started.md, skills.md, vercel-mcp.md, connect quickstart all 200.
  ```


### Onboarding
- **Pass** — Docs lead to a relevant quickstart

  ```text
  llms.txt links a getting-started guide and Connect quickstart with concrete first steps.
  ```

- **Pass** — Installation commands are extractable

  ```text
  CLI install commands shown: npm install --global vercel@latest and npm i vercel.
  ```

- **Pass** — Code examples are available without interaction

  ```text
  Quickstart shows full TypeScript token-request and consent code inline without interaction.
  ```

- **Pass** — Prerequisites and auth boundaries are explicit

  ```text
  Prerequisites list Vercel account, CLI, Node 18; OIDC token auth and consent flow explained.
  ```


### Pricing
- **Pass** — Pricing is readable without interaction

  ```text
  Pricing page renders full plan and usage tables as static Markdown, no interaction needed.
  ```

- **Pass** — Prices are stated, not gated

  ```text
  Hobby $0/mo, Pro $20/mo, Enterprise Custom stated openly; usage rates listed.
  ```

- **Pass** — Pricing units and limits are explicit

  ```text
  Included quotas and per-unit rates explicit, e.g. 1M Edge Requests then $2 per 1M.
  ```

- **Pass** — Agents identify pricing and its assumptions

  ```text
  3 of 3 sessions were judged on pricing; 0 fell short. DeepSeek V4 Pro: Final output lists Hobby $0 (personal/non-commercial), Pro $20/member/month (commercial, more usage), Enterprise custom, plus usage-based add-ons for overage, naming plan tier and workload/usage as the driving assumptions and flagging it may change. Kimi K3: Final output gives a pricing table (Hobby $0, Pro ~$20/user/month, Enterprise custom) and names assumptions — personal vs commercial use, usage-based overages, and that this specific example would stay within free Hobby limits. Qwen 3.8 Max: Final output gives Hobby (free, ~100GB bandwidth/100GB-hrs), Pro ($20/seat/month, metered bandwidth ~$0.15-0.23/GB, $0.60/million invocations), and ties cost estimate ('$0 on Hobby and pennies on Pro') to the specific workload assumption of a tiny static site plus one function. This behavioural item does not affect the fast grade.
  ```


### Activation
- **Pass** — An API reference or OpenAPI spec is reachable

  ```text
  Vercel's OpenAPI 3.0 description is served at /openapi.json and linked from llms.txt.
  ```

- **Pass** — An MCP server is documented and well-formed

  ```text
  Vercel MCP documented at https://mcp.vercel.com with OAuth, tools, and per-client setup.
  ```

- **Pass** — A CLI install path is documented

  ```text
  CLI install documented: npm i -g vercel, plus npx plugins and native binaries.
  ```

- **Pass** — SDK packages resolve on their registries

  ```text
  npm registry lookups for vercel and @vercel/connect both returned HTTP 200.
  ```

- **Pass** — Agent skills are published

  ```text
  Vercel-published agent skills listed with npx skills add install commands.
  ```



[Full report data](https://www.ax-check.com/vercel.com/report.json)
