com.vercel/vercel-mcp
REMOTE · MCP.VERCEL.COM
An MCP server for Vercel
Available components
Last scanned (10 hours ago)
Scores higher than 35% of remote servers
Reachable. Last reached 5 Nov 2026.
Category Cloud Infrastructure
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security97
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- The endpoint enforces authorisation, advertised via RFC 9728 protected-resource metadata. View diagnostics → Pass
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
- The authorisation server supports Client ID Metadata Documents, the current MCP client-registration mechanism. View diagnostics → Pass
Transport & Reachability0
- Transport blocked by authentication: the endpoint requires auth we don't have to verify streamable-http. See how to fix → View diagnostics → Unverified
Schema Quality & AI Usability0
- Schema blocked by authentication: the endpoint requires auth we don't have to read it. See how to fix → Unverified
Stability & Change Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage0
- Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.Unverified
Tool Safety0
- Tool safety blocked by authentication: the endpoint requires auth we don't have to read its tools.Unverified
Capabilities0
- Capabilities blocked by authentication: the endpoint requires auth we don't have to read them. See how to fix → Unverified
Unverified: 6 categories
Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm. Claim this server and supply a read-only token to verify it and lift the score.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 24 Oct 26 +1
- Authorization: partial → pass ▲ security
- 28 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Sept 26 0
- Endpoint reachability: reachable → behind authorisation ▼ security
- Tool safety: pass → unverified ▼ security
- Transport: pass → unverified ▼ security
- Authorization: The endpoint enforces authorisation, advertised via RFC 9728 protected-resource metadata. security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Schema quality: 100 → unverified ▼ functional
- 25 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Aug 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 11 Aug 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 31 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 27 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Probed https://mcp.vercel.com
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=*.vercel.com | CN=YR1,O=Let's Encrypt,C=US | 25 Sept 2026 | 24 Dec 2026 | RSA 2048 | SHA256-RSA | 5874cc9478db8b58f4c1abab98eb994abd1 |
| SANs: *.vercel.com, vercel.com | ||||||
| CN=YR1,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | a20253f15f2691c05dc1ce13b9bcca4e |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.vercel.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| vercel.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Enforced and verified
The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.
| Result | Enforced and verified |
|---|---|
| Enforced | On connection |
| HTTP status | 401 |
WWW-Authenticate challenge Bearer error="invalid_token", error_description="No authorization provided", resource_metadata="https://mcp.vercel.com/.well-known/oauth-protected-resource"
Bearer error="invalid_token", error_description="No authorization provided", resource_metadata="https://mcp.vercel.com/.well-known/oauth-protected-resource" | Header | Value |
|---|---|
| strict-transport-security | max-age=63072000; includeSubDomains; preload |
| www-authenticate | Bearer error="invalid_token", error_description="No authorization provided", resource_metadata="https://mcp.vercel.com/.well-known/oauth-protected-resource" |
Protected resource metadata
| Document | https://mcp.vercel.com/.well-known/oauth-protected-resource |
|---|---|
| Retrieved | Yes |
| Resource | https://mcp.vercel.com/ |
| Authorisation server | https://vercel.com |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.vercel.com | Auth required | 401 | |
| http (plaintext) | http://mcp.vercel.com | HTTPS enforced | 308 | https://mcp.vercel.com/ |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
add_toolbar_reaction ~149
Add an emoji reaction to a message in a toolbar thread.
| Name | Type | Req | Description |
|---|---|---|---|
| emoji | string | yes | The emoji to add as a reaction (e.g. 👍) |
| messageId | string | yes | The message ID to react to |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| threadId | string | yes | The thread ID containing the message |
No output schema declared.
No examples provided.
buy_addon ~328
Executes a Vercel add-on purchase (currently only "siem"), by integer quantity, previously quoted by get_purchase_quote — quoting first is REQUIRED; this tool rejects un-quoted calls. Get the quote, present it to the user for explicit approval (use a structured question tool such as AskUserQuestion when available), then call with confirm:true, the quote's idempotencyKey, and the same parameters. The team must be on the Flex plan. No price quote exists for add-ons; the charge is non-refundable. The quote returns required disclosures the assistant must relay before approval: the payment method (default card on file), that taxes/fees may apply on top of the price, the item terms (Flex plan required, billed on the next invoice), and a full-terms link.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm | boolean | – | Set true to execute the charge; requires the idempotencyKey from get_purchase_quote. |
| idempotencyKey | string | – | The idempotencyKey returned by get_purchase_quote. |
| productAlias | string | yes | The add-on to purchase. Only "siem" is available today. |
| quantity | integer | yes | Number of units to purchase. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
No output schema declared.
No examples provided.
buy_credits ~448
Executes a prepaid Vercel credits purchase (v0, AI Gateway, or Vercel Agent) previously quoted by get_purchase_quote — quoting first is REQUIRED; this tool rejects un-quoted calls. Get the quote, present it to the user for explicit approval (use a structured question tool such as AskUserQuestion when available), then call with confirm:true, the quote's idempotencyKey, and the same parameters. When the user has not named an amount, offer quick-picks — $10, $25, $50, or $100 — or let them enter any custom amount ($1–$1000); do not just quote the range. Some credit types require a plan: Vercel Agent credits require the team to be on Vercel Pro (use buy_pro first), and v0 credits require a paid v0 plan (set up at v0.dev); AI Gateway credits have no plan prerequisite. If the required plan is missing the purchase is rejected (nothing is charged) with guidance. The charge is immediate and non-refundable. The quote returns required disclosures the assistant must relay before approval: the payment method (default card on file), that taxes/fees may apply on top of the base price, the item terms (credits expire in one year), and a full-terms link.
| Name | Type | Req | Description |
|---|---|---|---|
| amount | integer | yes | Amount to purchase, in whole US dollars (1–1000). |
| confirm | boolean | – | Set true to execute the charge; requires the idempotencyKey from get_purchase_quote. |
| creditType | string | yes | Which credit balance to top up: v0, gateway (AI Gateway), or agent (Vercel Agent). |
| idempotencyKey | string | – | The idempotencyKey returned by get_purchase_quote. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
No output schema declared.
No examples provided.
buy_domain ~455
Executes a single-domain registration previously quoted by get_purchase_quote (product:domain) — quoting first is REQUIRED; this tool rejects un-quoted calls. Get the quote, present it to the user for explicit approval (use a structured question tool such as AskUserQuestion when available), then call with confirm:true, the quote's idempotencyKey, the expectedPrice and years from the quote, and the full registrant contact to execute the non-refundable purchase. Vercel stores no reusable registrant profile, so contact details must be supplied each time. The quote returns required disclosures the assistant must relay before approval: the payment method (default card on file), that taxes/fees may apply on top of the price, the item terms (non-refundable), and, when auto-renew is on, the recurring-charge terms in disclosures.subscription (renews automatically each term at the then-current price until auto-renew is turned off), plus a full-terms link.
| Name | Type | Req | Description |
|---|---|---|---|
| autoRenew | boolean | – | Whether to auto-renew at the end of the term. Defaults to true. |
| confirm | boolean | – | Set true to execute the purchase; requires the idempotencyKey from get_purchase_quote. |
| contact | object | – | Registrant (WHOIS) contact. Not needed for the quote; REQUIRED on confirm. All fields must be provided. |
| domain | string | yes | The domain to register, e.g. "example.com". |
| expectedPrice | number | – | Required on confirm: the purchasePrice (USD) from the quote. The server rejects the order if it no longer matches the live price. |
| idempotencyKey | string | – | The idempotencyKey returned by get_purchase_quote. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| years | integer | – | Registration term in years. Required on confirm — must match the term shown in the quote. |
No output schema declared.
No examples provided.
buy_pro ~277
Executes a Vercel Pro upgrade previously quoted by get_purchase_quote — quoting first is REQUIRED; this tool rejects un-quoted calls. Get the quote, present it to the user for explicit approval (use a structured question tool such as AskUserQuestion when available), then call with confirm:true, the quote's idempotencyKey, and the same parameters. This starts RECURRING Pro billing immediately at the standard Pro price. The quote returns required disclosures the assistant must relay before approval: the payment method (default card on file), that taxes/fees may apply on top of the price, the subscription terms (recurring monthly charge, no trial, cancel anytime in billing settings), and a full-terms link.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm | boolean | – | Set true to execute the upgrade; requires the idempotencyKey from get_purchase_quote. |
| idempotencyKey | string | – | The idempotencyKey returned by get_purchase_quote. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
No output schema declared.
No examples provided.
change_toolbar_thread_resolve_status ~151
Change the resolve status of a toolbar thread. Can be used to mark a thread as resolved or unresolve a previously resolved thread.
| Name | Type | Req | Description |
|---|---|---|---|
| resolved | boolean | yes | Set to true to resolve the thread, false to unresolve it |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| threadId | string | yes | The thread ID to update |
No output schema declared.
No examples provided.
check_domain_availability_and_price ~51
Check if domain names are available for purchase and get pricing information
| Name | Type | Req | Description |
|---|---|---|---|
| names | array | yes | Array of domain names to check availability for (e.g., ["example.com", "test.org"]) |
No output schema declared.
No examples provided.
deploy_to_vercel ~373
Deploy a small, simple project from inline file contents only when the Vercel CLI is unavailable and no usable remote git repository exists, or the user explicitly requests an inline file deployment. Prefer the Vercel CLI for local projects: it reads and uploads files directly without reproducing source as model output. If the intended source is pushed to a repository's production branch, use create_git_project. Do not reconstruct medium or large projects, binary assets, or dependency trees in tool arguments. This remote tool cannot read local paths or attachments: files with actual contents are required. Limits: 300 files, 3 MiB per file, 4 MiB total encoded contents. Creation is asynchronous; poll get_deployment until READY, ERROR, or CANCELED before reporting the build outcome.
| Name | Type | Req | Description |
|---|---|---|---|
| files | array | yes | Required non-empty array of source files with their actual contents. A project name or local path alone cannot deploy. Do not include node_modules, .git, .env files, or secrets. Vercel installs depen… |
| name | string | yes | Project name. Vercel creates the project if it does not already exist. |
| projectSettings | object | – | Optional build settings. Omit to let Vercel auto-detect the framework. |
| target | string | yes | Required. "preview" for a shareable non-production URL, or "production" to go live. |
| teamId | string | – | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
No output schema declared.
No examples provided.
edit_toolbar_message ~139
Edit an existing message in a toolbar thread.
| Name | Type | Req | Description |
|---|---|---|---|
| markdown | string | yes | The updated message content in markdown format |
| messageId | string | yes | The message ID to edit |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| threadId | string | yes | The thread ID containing the message |
No output schema declared.
No examples provided.
get_access_to_vercel_url ~177
Creates a temporary shareable link that bypasses authentication for protected Vercel deployments. When you encounter a Vercel deployment URL (like https://myapp-abc123.vercel.app), you might receive a 403 (Forbidden) error when trying to access it. This tool generates a special URL with a '_vercel_share' parameter that allows temporary access without requiring login credentials. The shareable URL will expire in 23 hours. When you use the returned URL, that URL will redirect and set an auth cookie. If your fetch implementation does not support cookies, use the 'web_fetch_vercel_url' tool instead.
| Name | Type | Req | Description |
|---|---|---|---|
| url | string | yes | The full URL of the Vercel deployment (e.g. "https://myapp.vercel.app"). |
No output schema declared.
No examples provided.
get_agent_run ~348
Get detailed metadata for a single Agent Run from an eve agent, including events, workflow metadata, usage, and subagent breakout data. Use list_agent_runs first if you need to discover a run ID.
| Name | Type | Req | Description |
|---|---|---|---|
| environment | string | – | Agent run environment, usually "production" or "preview". Defaults to "production". |
| from | string | – | Start time as ISO 8601, Unix seconds, Unix milliseconds, or a relative duration like "12h". Must be used with to. |
| period | string | – | Preset time range. Ignored when both from and to are provided. Defaults to the dashboard endpoint default. |
| projectId | string | yes | The project ID to get the deployment events for. Alternatively the project slug can be used. Project IDs start with "prj_". If you do not know the project ID or slug, it can be found through these me… |
| runId | string | yes | The Agent Run ID to inspect. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| to | string | – | End time as ISO 8601, Unix seconds, Unix milliseconds, a relative duration like "1h", or "now". Must be used with from. |
No output schema declared.
No examples provided.
get_agent_run_trace ~504
Get one page of the trace for a single Agent Run from an eve agent, including turns, messages, reasoning, tool calls, token usage, and tool input/output when available. To read all available turns, follow the trace payload’s later cursor until absent; use earlier to read backwards. Pages can overlap: deduplicate turns by ID, keeping the more complete turn. Use maxFieldLength: 0 to preserve full string content.
| Name | Type | Req | Description |
|---|---|---|---|
| environment | string | – | Agent run environment, usually "production" or "preview". Defaults to "production". |
| from | string | – | Start time as ISO 8601, Unix seconds, Unix milliseconds, or a relative duration like "12h". Must be used with to. |
| maxFieldLength | number | – | Maximum length for individual string fields in the returned trace. Defaults to 8000; use 0 to disable truncation. |
| period | string | – | Preset time range. Ignored when both from and to are provided. Defaults to the dashboard endpoint default. |
| projectId | string | yes | The project ID to get the deployment events for. Alternatively the project slug can be used. Project IDs start with "prj_". If you do not know the project ID or slug, it can be found through these me… |
| runId | string | yes | The Agent Run ID to inspect. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| to | string | – | End time as ISO 8601, Unix seconds, Unix milliseconds, a relative duration like "1h", or "now". Must be used with from. |
| traceAfterCursor | string | – | Copy cursor from later to fetch the next page, with its traceStreamId. |
| traceBeforeChunk | integer | – | Copy beforeChunk from earlier to fetch the previous page, with its traceStreamId. |
| traceStreamId | string | – | Copy streamId from the trace payload’s later or earlier object. Requires exactly one pagination cursor. |
No output schema declared.
No examples provided.
get_bulk_availability ~110
Get availability for multiple domains. If the domains are available, they can be purchased using the [Buy a domain](https://vercel.com/docs/rest-api/reference/endpoints/domains-registrar/buy-a-domain) endpoint or the [Buy multiple domains](https://vercel.com/docs/rest-api/reference/endpoints/domains-registrar/buy-multiple-domains) endpoint.
| Name | Type | Req | Description |
|---|---|---|---|
| requestBody | object | yes | – |
| teamId | string | – | Team ID to use for this operation. |
No output schema declared.
No examples provided.
get_bulk_price ~43
Get price data for multiple domains in a single request.
| Name | Type | Req | Description |
|---|---|---|---|
| requestBody | object | yes | – |
| teamId | string | – | Team ID to use for this operation. |
No output schema declared.
No examples provided.
get_contact_info_schema ~63
Some TLDs require additional contact information. Use this endpoint to get the schema for the tld-specific contact information for a domain.
| Name | Type | Req | Description |
|---|---|---|---|
| domain | string | yes | A valid domain name |
| teamId | string | – | Team ID to use for this operation. |
No output schema declared.
No examples provided.
get_deployment ~115
Get a specific deployment by ID or URL.
| Name | Type | Req | Description |
|---|---|---|---|
| idOrUrl | string | yes | The unique identifier or hostname of the deployment. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
No output schema declared.
No examples provided.
get_deployment_build_logs ~346
Get the build logs for a deployment by ID or URL, to investigate why a build failed. Returns the most recent lines by default (where build errors appear). Use errorsOnly to see just the failing lines. Omit since and until for latest logs; use since to narrow the window and omit until when the end should be the current time.
| Name | Type | Req | Description |
|---|---|---|---|
| buildId | string | – | Filter to a specific build ID (bld_...) for multi-build deployments. |
| direction | string | – | Which end of the build log to return. "tail" (default) returns the most recent lines, where build errors appear. "head" returns the earliest lines. |
| errorsOnly | boolean | – | Return only error, stderr, exit, and fatal events. |
| idOrUrl | string | yes | The unique identifier or hostname of the deployment. |
| limit | number | – | Maximum number of log lines to return. Defaults is 100. |
| since | string | – | Start of the window as an ISO date or relative lookback from now (e.g. "1h", "30m"). |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| until | string | – | Optional end of the window as an ISO date, relative lookback, or "now". Omit this when the end should be the current time. |
No output schema declared.
No examples provided.
get_domain_availability ~114
Get availability for a specific domain. If the domain is available, it can be purchased using the [Buy a domain](https://vercel.com/docs/rest-api/reference/endpoints/domains-registrar/buy-a-domain) endpoint or the [Buy multiple domains](https://vercel.com/docs/rest-api/reference/endpoints/domains-registrar/buy-multiple-domains) endpoint.
| Name | Type | Req | Description |
|---|---|---|---|
| domain | string | yes | A valid domain name |
| teamId | string | – | Team ID to use for this operation. |
No output schema declared.
No examples provided.
get_domain_order ~124
Get the status of a domain purchase order returned by buy_domain, to confirm whether the registration completed.
| Name | Type | Req | Description |
|---|---|---|---|
| orderId | string | yes | The orderId returned by buy_domain. |
| teamId | string | – | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
No output schema declared.
No examples provided.
get_domain_price ~76
Get price data for a specific domain
| Name | Type | Req | Description |
|---|---|---|---|
| domain | string | yes | A valid domain name |
| teamId | string | – | Team ID to use for this operation. |
| years | string | – | The number of years to get the price for. If not provided, the minimum number of years for the TLD will be used. |
No output schema declared.
No examples provided.
get_git_deployment_context ~34
Lists the user's Vercel teams with each team's plan, connected Cursor Origin workspaces, and linked Git projects.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_project ~177
Get a specific project in Vercel
| Name | Type | Req | Description |
|---|---|---|---|
| projectId | string | yes | The project ID to get the deployment events for. Alternatively the project slug can be used. Project IDs start with "prj_". If you do not know the project ID or slug, it can be found through these me… |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
No output schema declared.
No examples provided.
get_project_deployment_protection ~200
Get the effective password protection, Vercel Authentication, and Trusted IP settings for a Vercel project. Password values are never returned.
| Name | Type | Req | Description |
|---|---|---|---|
| projectId | string | yes | The project ID to get the deployment events for. Alternatively the project slug can be used. Project IDs start with "prj_". If you do not know the project ID or slug, it can be found through these me… |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
No output schema declared.
No examples provided.
get_purchase_quote ~479
Read-only price quote for a Vercel purchase. NEVER charges. This is the ONLY way to obtain an idempotencyKey — the buy_* tools no longer quote and reject un-quoted calls, so this is the REQUIRED first step before any buy_* tool. It returns the cost (when Vercel exposes one) and an idempotencyKey to pass to the matching buy tool (buy_credits, buy_domain, buy_addon, buy_pro) with confirm:true within 5 minutes to execute the charge. Present the quote to the user for explicit approval (use a structured question tool such as AskUserQuestion when available) before confirming. Products with no API price (add-ons, Pro) return a priceNote and billing URL instead of a number. Every quote includes a disclosures object the assistant must relay to the user before approval: the payment method (default card on file), that taxes/fees may apply on top of the base price, the item terms, and a link to the full terms.
| Name | Type | Req | Description |
|---|---|---|---|
| amount | integer | – | Required for product:credits — amount in whole US dollars (1–1000). |
| autoRenew | boolean | – | For product:domain — whether to auto-renew at term end. Defaults to true. Cosmetic in the quote; not part of the signed idempotencyKey. |
| creditType | string | – | Required for product:credits — which credit balance to top up. |
| domain | string | – | Required for product:domain — the domain to register, e.g. "example.com". |
| product | string | yes | Which purchase to quote. |
| productAlias | string | – | Required for product:addon — the add-on to quote. Only "siem" is available today. |
| quantity | integer | – | Required for product:addon — number of units. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| years | integer | – | For product:domain — registration term in years (defaults to the TLD minimum). |
No output schema declared.
No examples provided.
get_runtime_errors ~303
Get grouped runtime error clusters for a project (error name, occurrence count, affected routes, sample messages, first/last seen). Use this first to answer "why is production erroring" — it reads a pre-aggregated table and does not time out. For recent windows, pass since like "24h" or "7d" and omit until; until is only needed for historical end times. Max 7-day range.
| Name | Type | Req | Description |
|---|---|---|---|
| projectId | string | yes | The project ID to get runtime errors for. |
| routes | string | – | Comma-separated route paths to filter by (e.g. "/api/checkout"). |
| since | string | – | Start of the window as an ISO date or relative lookback from now (e.g. "1h", "24h", "7d"). Defaults to 24h ago; max lookback is 7d. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| until | string | – | Optional end of the window as an ISO date, relative lookback, or "now". Omit this when the end should be the current time. |
No output schema declared.
No examples provided.
get_runtime_logs ~485
Get runtime logs for a project or deployment. Runtime logs show application output (console.log, errors, etc.) from serverless functions and edge functions during execution. Supports filtering by environment, log level, status code, source, time range, and full-text search. For recent windows, pass since like "30m" or "24h" and omit until; until is only needed for historical end times. For wide time ranges, scope to a deploymentId for speed, or use group_by to get counts instead of individual lines. To investigate production errors specifically, prefer get_runtime_errors.
| Name | Type | Req | Description |
|---|---|---|---|
| deploymentId | string | – | Filter logs to a specific deployment ID or URL. |
| environment | string | – | Filter by environment: "production" or "preview". |
| group_by | string | – | Return counts grouped by this attribute instead of individual log lines. Use for "how many errors", "status code breakdown", "top paths". Fast even over wide time ranges. |
| level | array | – | Filter by log level(s). Can specify multiple levels. |
| limit | number | – | Maximum number of log entries to return. Defaults to 50, max 100. |
| projectId | string | yes | The project ID to get runtime logs for. |
| query | string | – | Full-text search query to filter logs. |
| requestId | string | – | Filter by specific request ID. |
| since | string | – | Start of the window as an ISO date or relative lookback from now (e.g., "1h", "30m", "7d"). Defaults to 24 hours ago. |
| source | array | – | Filter by source type(s). Can specify multiple sources. |
| statusCode | string | – | Filter by HTTP status code (e.g., "500", "4xx"). |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| until | string | – | Optional end of the window as an ISO date, relative lookback, or "now". Omit this when the end should be the current time. |
No output schema declared.
No examples provided.
get_tld ~46
Get the metadata for a specific TLD.
| Name | Type | Req | Description |
|---|---|---|---|
| teamId | string | – | Team ID to use for this operation. |
| tld | string | yes | A valid TLD name |
No output schema declared.
No examples provided.
get_tld_price ~142
Get price data for a specific TLD. This only reflects base prices for the given TLD. Premium domains may have different prices. Use the [Get price data for a domain](https://vercel.com/docs/rest-api/reference/endpoints/domains-registrar/get-price-data-for-a-domain) endpoint to get the price data for a specific domain.
| Name | Type | Req | Description |
|---|---|---|---|
| teamId | string | – | Team ID to use for this operation. |
| tld | string | yes | A valid TLD name |
| years | string | – | The number of years to get the price for. If not provided, the minimum number of years for the TLD will be used. |
No output schema declared.
No examples provided.
get_toolbar_thread ~116
Get a specific toolbar thread by ID, including all messages and context.
| Name | Type | Req | Description |
|---|---|---|---|
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| threadId | string | yes | The thread ID to retrieve |
No output schema declared.
No examples provided.
get_web_analytics ~515
Query Web Analytics for a Vercel project. Count mode returns total visitors and pageviews (or custom event count). Aggregate mode groups results over time or by dimensions such as route, requestPath, country, referrerHostname, deviceType, browserName, eventName, flags/<name>, or eventData/<property>. Web Analytics must be enabled for the project.
| Name | Type | Req | Description |
|---|---|---|---|
| by | array | – | One or two dimensions for aggregate mode. Time dimensions: hour, day, week, month, year. Other common dimensions: country, deviceType, environment, requestPath, referrerHostname, osName, browserName,… |
| dataset | string | – | Data to query: visits for automatically tracked pageviews, or events for custom events sent with track(). Defaults to visits. |
| filter | string | – | OData filter expression, for example requestPath eq '/pricing' and country eq 'US', eventName eq 'signup', or eventData/plan eq 'pro'. |
| limit | integer | – | Maximum distinct results in aggregate mode. Remaining values are grouped into Others. Defaults to 10. |
| mode | string | – | Count returns one total. Aggregate returns rows grouped by one or two by dimensions and requires since, until, and by. Defaults to count. |
| projectId | string | yes | The project ID to get the deployment events for. Alternatively the project slug can be used. Project IDs start with "prj_". If you do not know the project ID or slug, it can be found through these me… |
| since | – | – | Start or end of the date range as a date string, ISO 8601 timestamp, or Unix timestamp in milliseconds. Since and until must be provided together. |
| teamId | string | – | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| until | – | – | Start or end of the date range as a date string, ISO 8601 timestamp, or Unix timestamp in milliseconds. Since and until must be provided together. |
No output schema declared.
No examples provided.
import-claude-design-from-url ~113
Import a design into Vercel from a publicly fetchable URL. The file is a self-contained HTML bundle with all images, fonts, and styles inlined.
| Name | Type | Req | Description |
|---|---|---|---|
| claude_design_project_id | string | – | Stable Claude Design project identifier. Reuse it to update the same imported Vercel project. |
| title | string | – | Suggested title for the imported design. |
| url | string | yes | Public HTTPS URL to the design file. Valid for ~1 hour. Fetched server-side. |
No output schema declared.
No examples provided.
list_agent_run_projects ~262
List projects in a Vercel team that have Agent Runs observability data for agents built with the eve framework, with run counts and average duration rollups. Use this to discover which projects have eve agent activity before drilling into a project.
| Name | Type | Req | Description |
|---|---|---|---|
| environment | string | – | Agent run environment, usually "production" or "preview". Defaults to "production". |
| from | string | – | Start time as ISO 8601, Unix seconds, Unix milliseconds, or a relative duration like "12h". Must be used with to. |
| period | string | – | Preset time range. Ignored when both from and to are provided. Defaults to the dashboard endpoint default. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| to | string | – | End time as ISO 8601, Unix seconds, Unix milliseconds, a relative duration like "1h", or "now". Must be used with from. |
No output schema declared.
No examples provided.
list_agent_runs ~410
List Agent Runs for a Vercel project. Agent Runs are the observability layer for agents built with the eve framework. The response includes summaries, status, model, trigger, token usage, time series, and pagination metadata. Use this to find recent or matching production eve agent runs before fetching detail or trace data.
| Name | Type | Req | Description |
|---|---|---|---|
| environment | string | – | Agent run environment, usually "production" or "preview". Defaults to "production". |
| from | string | – | Start time as ISO 8601, Unix seconds, Unix milliseconds, or a relative duration like "12h". Must be used with to. |
| page | number | – | 1-based page number. Defaults to 1. |
| pageSize | number | – | Number of runs per page. The dashboard endpoint caps this at 100. |
| period | string | – | Preset time range. Ignored when both from and to are provided. Defaults to the dashboard endpoint default. |
| projectId | string | yes | The project ID to get the deployment events for. Alternatively the project slug can be used. Project IDs start with "prj_". If you do not know the project ID or slug, it can be found through these me… |
| search | string | – | Server-side title search for Agent Runs. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| to | string | – | End time as ISO 8601, Unix seconds, Unix milliseconds, a relative duration like "1h", or "now". Must be used with from. |
No output schema declared.
No examples provided.
list_deployments ~73
List all deployments for a project
| Name | Type | Req | Description |
|---|---|---|---|
| projectId | string | yes | The project ID to list deployments for. |
| since | number | – | Get deployments created after this timestamp. |
| teamId | string | yes | The team ID to list deployments for. |
| until | number | – | Get deployments created before this timestamp. |
No output schema declared.
No examples provided.
list_projects ~123
List all Vercel projects for a user (with a max of 50). Use this to help discover the Project ID of the project that the user is working on.
| Name | Type | Req | Description |
|---|---|---|---|
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
No output schema declared.
No examples provided.
list_supported_tlds ~38
Get a list of TLDs supported by Vercel
| Name | Type | Req | Description |
|---|---|---|---|
| teamId | string | – | Team ID to use for this operation. |
No output schema declared.
No examples provided.
list_teams ~32
List the user's teams. Use this to help discover the Team ID of the teams that the user is part of.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_toolbar_threads ~222
List Vercel toolbar comment threads for a team. Returns unresolved threads by default. Use this to see feedback, comments, or discussions on deployments and previews.
| Name | Type | Req | Description |
|---|---|---|---|
| branch | string | – | Filter by branch name |
| limit | number | – | Maximum number of results to return. Defaults to 20. |
| offset | number | – | Pagination offset |
| page | string | – | Filter by page path (e.g. /docs) or glob (e.g. /docs*) |
| projectId | string | – | Filter by project ID |
| search | string | – | Search text in comments |
| status | string | – | Filter by status. Defaults to unresolved. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
No output schema declared.
No examples provided.
pause_project ~198
Pause a Vercel project. Its production deployment will stop serving traffic and return 503 DEPLOYMENT_PAUSED until the project is unpaused.
| Name | Type | Req | Description |
|---|---|---|---|
| projectId | string | yes | The project ID to get the deployment events for. Alternatively the project slug can be used. Project IDs start with "prj_". If you do not know the project ID or slug, it can be found through these me… |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
No output schema declared.
No examples provided.
reply_to_toolbar_thread ~127
Add a reply message to an existing toolbar thread.
| Name | Type | Req | Description |
|---|---|---|---|
| markdown | string | yes | The message content in markdown format |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| threadId | string | yes | The thread ID to reply to |
No output schema declared.
No examples provided.
search_domains ~71
Start domain research here. Get registration availability and pricing for 1–200 exact domain names. Returns results in input order, with registration and renewal prices in USD for available domains. No authentication required.
| Name | Type | Req | Description |
|---|---|---|---|
| requestBody | object | yes | – |
| teamId | string | – | Team ID to use for this operation. |
No output schema declared.
No examples provided.
search_vercel_documentation Search Vercel Documentation ~267
Search the Vercel documentation. Use this tool to answer any questions about Vercel’s platform, features, and best practices, including: - Core Concepts: Projects, Deployments, Git Integration, Preview Deployments, Environments - Frontend & Frameworks: Next.js, SvelteKit, Nuxt, Astro, Remix, frameworks configuration and optimization - APIs: REST API, Vercel SDK, Build Output API - Compute: Fluid Compute, Functions, Routing Middleware, Cron Jobs, OG Image Generation, Sandbox, Data Cache - AI: Vercel AI SDK, AI Gateway, MCP, v0 - Performance & Delivery: Edge Network, Caching, CDN, Image Optimization, Headers, Redirects, Rewrites - Pricing: Plans, Spend Management, Billing - Security: Audit Logs, Firewall, Bot Management, BotID, OIDC, RBAC, Secure Compute, 2FA - Storage: Blog, Edge Config
| Name | Type | Req | Description |
|---|---|---|---|
| tokens | number | – | Maximum number of tokens to include in the result. Default is 2500. |
| topic | string | yes | Topic to focus the documentation search on (e.g., 'routing', 'data-fetching'). |
No output schema declared.
No examples provided.
unpause_project ~190
Unpause a Vercel project so its production deployment can resume serving traffic and consuming metered resources.
| Name | Type | Req | Description |
|---|---|---|---|
| projectId | string | yes | The project ID to get the deployment events for. Alternatively the project slug can be used. Project IDs start with "prj_". If you do not know the project ID or slug, it can be found through these me… |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
No output schema declared.
No examples provided.
update_project_deployment_protection ~274
Partially update password protection, Vercel Authentication, and Trusted IPs for a Vercel project. Omitted settings are preserved. Availability depends on the Vercel team plan and caller permissions.
| Name | Type | Req | Description |
|---|---|---|---|
| passwordProtection | – | – | Enable or disable password protection. Omit to preserve the current setting. |
| projectId | string | yes | The project ID to get the deployment events for. Alternatively the project slug can be used. Project IDs start with "prj_". If you do not know the project ID or slug, it can be found through these me… |
| ssoProtection | – | – | Enable or disable Vercel Authentication. Omit to preserve the current setting. |
| teamId | string | yes | The team ID to get the deployment events for. Alternatively the team slug can be used. Team IDs start with "team_". If you do not know the team ID or slug, it can be found through these mechanism: -… |
| trustedIps | – | – | Enable or disable Trusted IPs. Omit to preserve the current setting. |
No output schema declared.
No examples provided.
use_vercel_cli ~62
Instructs the LLM to use Vercel CLI commands with --help flag for information
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | What you want to accomplish with Vercel CLI |
| command | string | – | Specific Vercel CLI command to run. |
No output schema declared.
No examples provided.
web_fetch_vercel_url ~106
Fetches a Vercel deployment URL and returns the response. This is useful if another web fetch tool returns 401 (Unauthorized) or 403 (Forbidden) for a Vercel URL. Supports accessing deployments protected with Vercel Authentication which the user of this MCP server has access to.
| Name | Type | Req | Description |
|---|---|---|---|
| url | string | yes | The full URL of the Vercel deployment including the path (e.g. "https://myapp.vercel.app/my-page"). |
No output schema declared.
No examples provided.
How do I install the com.vercel/vercel-mcp server?
com.vercel/vercel-mcp is a hosted endpoint at https://mcp.vercel.com/, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.vercel.com
claude mcp add --transport http com-vercel-vercel-mcp 'https://mcp.vercel.com/'
What is the com.vercel/vercel-mcp server?
com.vercel/vercel-mcp is listed in the public MCP registry as com.vercel/vercel-mcp. An MCP server for Vercel. This page covers its hosted endpoint (https://mcp.vercel.com).
Is the com.vercel/vercel-mcp server safe to use?
com.vercel/vercel-mcp scores 39 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the com.vercel/vercel-mcp server expose?
com.vercel/vercel-mcp exposes 46 tools: search_vercel_documentation, deploy_to_vercel, get_git_deployment_context, list_projects, get_project, and 41 more. Their descriptions and schemas cost roughly 9,456 tokens of context every time the server is loaded.
Does the com.vercel/vercel-mcp server require authentication?
Yes. com.vercel/vercel-mcp asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.
Is the com.vercel/vercel-mcp server still maintained?
com.vercel/vercel-mcp is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.