Back to list
different-ai

vercel-dns

by different-ai

CLI-first banking for agents

175🍴 32📅 Jan 23, 2026

SKILL.md


name: vercel-dns description: Manage DNS records for domains hosted on Vercel using the Vercel CLI license: MIT compatibility: opencode metadata: service: vercel category: infrastructure

What I Do

Manage DNS records for domains hosted on Vercel, including:

  • List existing DNS records
  • Add new DNS records (A, AAAA, CNAME, TXT, MX, etc.)
  • Remove DNS records
  • Switch between Vercel teams/accounts

Prerequisites

  • Vercel CLI installed: npm i -g vercel or brew install vercel-cli
  • Logged in: vercel login
  • Domain must be on Vercel nameservers or have Vercel as DNS provider

0 Finance Project

For the 0 Finance project, always use --scope prologe:

vercel dns ls 0.finance --scope prologe
vercel logs www.0.finance --scope prologe

Common Commands

Check Login & Team

# Check who you're logged in as
vercel whoami

# List available teams
vercel teams ls

# Switch to a specific team (use slug, not display name)
vercel switch <team-slug>

# Or use --scope flag instead of switching
vercel domains ls --scope prologe

List Domains & Records

# List all domains in current team/account
vercel domains ls --scope prologe

# List DNS records for a specific domain
vercel dns ls <domain> --scope prologe

Add DNS Records

# Add A record
vercel dns add <domain> <subdomain> A <ip-address>

# Add CNAME record
vercel dns add <domain> <subdomain> CNAME <target>

# Add TXT record (use quotes for values with special chars)
vercel dns add <domain> <subdomain> TXT '<value>'

# Add MX record with priority
# NOTE: MX priority is a separate argument (not embedded in the value)
vercel dns add <domain> <subdomain> MX <mail-server> <priority>

# Add record at apex (root domain) - use empty string or @
vercel dns add <domain> '' TXT '<value>'
vercel dns add <domain> @ MX mail.example.com 10

Remove DNS Records

# First list to get record ID
vercel dns ls <domain>

# Remove by record ID
vercel dns rm <record-id>

# Remove with confirmation skip
vercel dns rm <record-id> --yes

Examples

Add Email DNS Records (MX + SPF)

# Add MX record for receiving email
# WARNING: Setting MX at the apex (root) will route *all* inbound mail for the domain.
# If the domain already uses Google Workspace / Fastmail / etc, prefer a dedicated subdomain.
vercel dns add example.com '' MX inbound-smtp.us-east-1.amazonaws.com 10

# Safer: use a subdomain for inbound routing
vercel dns add example.com inbound MX inbound-smtp.us-east-1.amazonaws.com 10

# Add SPF record
vercel dns add example.com '' TXT 'v=spf1 include:amazonses.com ~all'

Add DKIM Records for Email Authentication

# DKIM CNAME records (common for SES, Google Workspace, etc.)
vercel dns add example.com selector._domainkey CNAME selector.dkim.provider.com

Add Domain Verification TXT Record

# Google/AWS/other service verification
vercel dns add example.com _amazonses TXT 'verification-token-here'
vercel dns add example.com '' TXT 'google-site-verification=token'

Subdomain Setup

# Point subdomain to a service
vercel dns add example.com api CNAME api.service.com
vercel dns add example.com app A 192.0.2.1

Troubleshooting

"You don't have permission to list the domain record"

The domain is in a different team. List teams and switch:

vercel teams ls
vercel switch <correct-team-slug>

Domain Not Listed

  • Domain might be in a different team/account
  • Domain might not have Vercel as nameservers
  • Check with vercel domains ls

Record Not Propagating

  • DNS propagation can take up to 48 hours (usually 5-30 minutes)
  • Check propagation: dig +short <record-name> <record-type> or use dnschecker.org
  • Verify record was added: vercel dns ls <domain>

Token Saving Tips

Fast Verification With dig

When a third-party UI says "Looking for DNS records", verify what the public internet sees:

dig +short TXT resend._domainkey.example.com
dig +short TXT send.example.com
dig +short MX send.example.com
dig +short TXT example.com

Tips

  1. Always check which team you're in before making changes
  2. Use single quotes around TXT values to preserve special characters
  3. For apex/root domain records, use empty string '' as subdomain
  4. Record IDs are shown in vercel dns ls output - needed for removal
  5. Some records (like those added by Vercel automatically) cannot be removed

Score

Total Score

75/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

+5
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

+5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

Reviews

💬

Reviews coming soon