Vercel MCP Pro vs AWS MCP Server

A side-by-side look at the Vercel MCP Pro and AWS MCP Server MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Vercel MCP Pro logoVercel MCP ProCloud Platforms · Local subprocess (stdio)Complete Vercel MCP: deploys, logs, projects, env, domains, DNS, certs via the full REST API60GoodAuth: not declaredAWS MCP Server logoAWS MCP ServerCloud Platforms · Local subprocess (stdio)AWS MCP server — call any AWS API from AI assistants, with first-class SSO re-login64GoodAuth: not declared

Verdict: choose Vercel MCP Pro for cloud platforms work as a local process; choose AWS MCP Server for cloud platforms as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Vercel MCP Pro logoChoose Vercel MCP Pro when

  • You need dedicated capabilities in the Cloud Platforms domain.
  • You prefer a local stdio subprocess transport.
  • You have the keys it needs: VERCEL_TOKEN.
  • You want tools like list_deployments, get_deployment, create_deployment.
Explore Vercel MCP Pro

AWS MCP Server logoChoose AWS MCP Server when

  • You need dedicated capabilities in the Cloud Platforms domain.
  • You prefer a local stdio subprocess transport.
  • You want tools like aws_whoami, aws_login_start, aws_login_complete.
Explore AWS MCP Server

Feature & specification comparison

Rows where the two servers differ are marked.

SpecVercel MCP Pro logoVercel MCP ProAWS MCP Server logoAWS MCP Server
CategoryCloud PlatformsCloud Platforms
Quality signal60/100 · Good64/100 · Good
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthNot declaredNot declared
PricingNot declaredNot declared
Required env varsVERCEL_TOKENNone listed
Verified ownerCommunity listingCommunity listing
GitHub stars05
Directory activity 2 views 0 installs 0 upvotes 1 views 0 installs 0 upvotes
Tools7028

Tools & capabilities

Vercel MCP Pro tools 70

  • list_deploymentsList deployments, most recent first. Filter by project, target (production/preview), state, or time window. Use this to see deploy history and find a deployment id.
  • get_deploymentGet full details of one deployment by id or URL (state, build, meta, aliases).
  • create_deploymentCreate a new deployment. The simplest path is to deploy from a connected Git source: pass `name` (project) and a `gitSource` ({ type, repoId/org+repo, ref }). For file-based deploys, provide `files`. For most workflows the /vercel CLI skill is easier — use this when you need API-driven, headless deploys.
  • cancel_deploymentCancel an in-progress (BUILDING/QUEUED) deployment.
  • delete_deploymentDelete a deployment by id (or by URL via the `url` param).
  • get_deployment_eventsGet the build/runtime event log of a deployment (this is where build logs and errors live). Use to diagnose failed builds and runtime bugs. Returns log lines with text, type and timestamps.
  • list_deployment_filesList the file tree of a deployment.
  • get_deployment_file_contentsGet the contents of a single file within a deployment by file id.
  • promote_deploymentPromote an existing deployment to production for a project (instant promotion, no rebuild). This is how you ship a previously-built preview to prod.
  • rollback_deploymentRoll a project's production back to a previous deployment (instant rollback). Pass the deployment id you want to roll back to.
  • get_promote_aliasesCheck the status of the most recent promote/rollback for a project (which aliases were assigned).
  • list_projectsList projects in the account/team. Optionally filter by name or repo.
  • +58 more on the listing page

AWS MCP Server tools 28

  • aws_whoamiShow the current AWS identity (account, role ARN, user ID) plus SSO token status and time remaining. Use this first to verify auth before running other AWS operations. Returns a structured fix-it message if SSO is expired.
  • aws_login_startStart an AWS SSO login via the device-code flow (no browser spawned from this process). Returns a verification URL and short code -- surface these to the user so they can open the URL in their own browser and paste the code. After they auth, call aws_login_complete with the returned sessionId to confirm completion.
  • aws_login_completeBlock until the SSO login started by aws_login_start finishes (user completed auth in browser, or subprocess exited with error). Returns the new identity on success, or a structured error.
  • aws_refresh_if_expiring_soonProactive SSO token check. If the cached token has fewer than `thresholdMinutes` left (default 10), this kicks off aws_login_start and returns the verification URL + code in one round-trip. If plenty of time remains, returns `status: 'ok'` with the minutes left. Use at the start of a multi-step AWS workflow to avoid mid-session expiry. `status: 'ok'` is a point-in-time reading of the cache, not a lease: nothing re-checks afterwards, so a token that lapses mid-workflow still surfaces as an sso_expired error from the next aws_call / aws_whoami. Raise `thresholdMinutes` to cover the expected length of the workflow rather than treating 'ok' as a guarantee.
  • aws_session_setSet the default AWS profile and/or region for the rest of this MCP session. Subsequent calls to aws_whoami, aws_login_*, and other AWS tools will use these values unless they override explicitly. Use when the user says 'switch to prod', 'use us-west-2', 'look at the staging account', etc. Both params are optional; pass whichever changed. Returns the resulting session state.
  • aws_session_getShow the current session's default AWS profile and region, and where each value came from ('session' = set by aws_session_set, 'env' = AWS_PROFILE/AWS_REGION env var, 'default' = built-in fallback). Useful for confirming state before running operations or debugging why a call hit the wrong account.
  • aws_session_clearRemove session-set profile and/or region overrides so subsequent calls fall back to env vars / defaults. No args clears both. Pass `profile: true` or `region: true` to clear just one. Use when the user says 'go back to the default profile,' 'unset the region,' or 'reset session.'
  • aws_callRun an arbitrary AWS API operation via the aws CLI. Use kebab-case service and operation names as in `aws help` (service='s3api', operation='list-buckets'). Pass params as a JSON object using the AWS API's PascalCase keys (e.g. {Bucket: 'foo'}); they go through --cli-input-json. Session profile/region (from aws_session_set) are used by default; override per-call when needed. Hand-written CLI commands (aws s3 cp/ls/sync, aws logs tail) and operations that stream their response to an output file (s3api get-object, bedrock-runtime invoke-model, bedrock-agentcore invoke-agent-runtime, lambda invoke) do not accept --cli-input-json and cannot run here -- use aws_lambda_invoke or aws_logs_tail where they exist, bedrock-runtime converse for text inference, otherwise your shell. Waiters work: operation 'wait instance-running'. Blob-typed members of params (KMS Plaintext, Kinesis Data, DynamoDB B) take base64 -- the server runs the CLI with --cli-binary-format base64 whatever your AWS config says. Returns parsed JSON output by default, plus the literal command that was run.
  • aws_list_profilesList AWS profiles configured in ~/.aws/config. Returns profile name, region, and SSO metadata (start URL, region, session name) where set, plus an `isSso` flag. Use when the user hasn't named a profile, when they ask to switch profiles, or when an SSO-expired error mentions a profile you haven't seen.
  • aws_paginateFetch one page of a paginated AWS list/describe operation. Identical to aws_call plus `maxItems` (page size) and `startingToken` (resume cursor). When `query` is supplied it is wrapped server-side as {NextToken, items: <query>} so pagination survives a projection that would otherwise drop NextToken; the handler unwraps `items` before returning. Returns the parsed response, a `nextToken` (null when the list is exhausted), and `hasMore`. Call again with the returned nextToken as startingToken until hasMore is false. Use this instead of aws_call for operations that might exceed the 5 MB stdout cap: list-objects-v2, describe-instances, describe-log-streams, list-roles, etc.
  • aws_assume_roleCall STS AssumeRole and stash the returned temporary credentials as a named profile in the shared credentials file ($AWS_SHARED_CREDENTIALS_FILE when set, otherwise ~/.aws/credentials; the resolved path is returned as credentialsPath). Subsequent calls to aws_call / aws_whoami / aws_paginate can use profile='mcp-<sessionName>' (or your overridden targetProfile name). The raw secret key / session token are NOT returned to the caller — only the profile name, expiration, and assumed identity. Use for cross-account access: a source profile (your SSO identity) assumes a role in another account. Default timeout is 120s (raise via timeoutMs for slow SAML / credential_process setups on cold start).
  • aws_logs_tailFetch the newest CloudWatch Logs events for one log group over the last `since` (default 10m), via FilterLogEvents ('aws logs filter-log-events'). Returns events oldest first as {timestamp (ISO 8601 UTC), logStreamName, message (verbatim)}; any of the three is null on an event that arrived without it, which is kept rather than dropped. At most `maxEvents` come back (default 500, max 10000); when the window held more, the OLDEST are dropped and `truncated` is true. On AWS CLI 2.35.8+ the read goes newest-first and stops once it has enough, so a busy group costs a page or two -- and a truncated result reports `totalEvents: null` because the rest was never read. Older CLIs read the whole window (exact `totalEvents`); narrow `since` or add `filterPattern` if a wide window times out. `logGroupName` takes a bare name or a log-group ARN in the call's region; an ARN is sent as logGroupIdentifier, so a source-account ARN works from a cross-account monitoring account (AWS CLI 2.9.15+). Does not stream: call again for newer events. eventId and ingestionTime are omitted -- use aws_call for them.
  • +16 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Vercel MCP Pro

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "vercel-mcp-pro": {
      "command": "npx",
      "args": [
        "-y",
        "vercel-mcp-pro"
      ],
      "env": {
        "VERCEL_TOKEN": "YOUR_VERCEL_TOKEN_HERE"
      }
    }
  }
}

AWS MCP Server

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "aws-mcp-server-3": {
      "command": "npx",
      "args": [
        "-y",
        "@yawlabs/aws-mcp"
      ]
    }
  }
}

Frequently asked questions

Vercel MCP Pro is categorized under Cloud Platforms and uses a local stdio subprocess. AWS MCP Server belongs to Cloud Platforms and uses a local stdio subprocess. Pick Vercel MCP Pro for cloud platforms work and AWS MCP Server for cloud platforms.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Vercel MCP Pro has no declared pricing — check the project's own site. AWS MCP Server has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add vercel-mcp-pro and aws-mcp-server-3 as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Vercel MCP Pro has a quality signal of 60/100 (Good) with 2 views, 0 installs and 0 GitHub stars. AWS MCP Server has 64/100 (Good) with 1 views, 0 installs and 5 GitHub stars.