kajdep avatar

Country Calling Codes

kajdep/v0-countrycallingcodes

Gives you programmatic access to international dialing data without hunting through telecom standards docs. You get country calling codes, ISO country codes, E.164 formatting rules, regional information, trunk prefixes, and NANP area codes for North America. Reach for this when you're building phone number validators, formatting international numbers for display, or need to parse and validate user input in contact forms. It's the reference data you'd otherwise scrape from Wikipedia or maintain in a static JSON file, exposed through a queryable interface. Useful for CRM integrations, communication platforms, or any app that handles phone numbers across multiple countries.

tools
11
transport
HTTP
last updated
Nov 12, 2026

Install

From registry metadata
$ npx add-mcp https://www.countrycalling.codes/api/mcp --name countrycallingcodesmcp

Run in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http countrycallingcodesmcp https://www.countrycalling.codes/api/mcp

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 11 tools

Verified live against the running server on Nov 6, 2026.

get_phone_capabilitiesDiscover supported countries, per-operation review coverage, evidence, dataset versions and request limits before choosing a phone workflow.2 params

Discover supported countries, per-operation review coverage, evidence, dataset versions and request limits before choosing a phone workflow.

Parameters* required
countryCodestring
operationstring
one of get_phone_capabilities · analyze_phone_number · get_dialing_instructions · normalize_phone_numbers · compare_phone_numbers · resolve_phone_region
analyze_phone_numberAnalyze a number using versioned numbering metadata. National numbers need numberCountryCode; exit prefixes need originCountryCode. Reports uncertainty and rule evidence, never live subscriber status.4 params

Analyze a number using versioned numbering metadata. National numbers need numberCountryCode; exit prefixes need originCountryCode. Reports uncertainty and rule evidence, never live subscriber status.

Parameters* required
detailstring
one of compact · fulldefault: compact
numberCountryCodestring
originCountryCodevalue
phoneNumber*string
get_dialing_instructionsPrepare origin-specific dialing guidance for reviewed countries. Provide origin and destination separately; no phone number returns safe placeholder patterns. Network-dependent results remain conditional.6 params

Prepare origin-specific dialing guidance for reviewed countries. Provide origin and destination separately; no phone number returns safe placeholder patterns. Network-dependent results remain conditional.

Parameters* required
carrierSelectionCodestring
destinationCountryCode*value
detailstring
one of compact · fulldefault: compact
devicestring
one of mobile · landline · unknowndefault: unknown
originCountryCode*string
phoneNumberstring
normalize_phone_numbersNormalize up to 100 records with unique IDs. Invalid records produce individual errors. Optionally identify canonical duplicate candidates; no contacts are changed or stored.

Normalize up to 100 records with unique IDs. Invalid records produce individual errors. Optionally identify canonical duplicate candidates; no contacts are changed or stored.

No parameters. Call it with no arguments.

compare_phone_numbersCompare two numbers after analysis. Missing context produces indeterminate. Extensions must match unless extensionPolicy is explicitly ignore; equality does not establish ownership.3 params

Compare two numbers after analysis. Missing context produces indeterminate. Extensions must match unless extensionPolicy is explicitly ignore; equality does not establish ownership.

Parameters* required
extensionPolicystring
one of exact · ignoredefault: exact
left*object
right*value
resolve_phone_regionResolve a phone number to metadata-backed country candidates or non-geographic numbering. Results are numbering assignments, not current location or carrier.4 params

Resolve a phone number to metadata-backed country candidates or non-geographic numbering. Results are numbering assignments, not current location or carrier.

Parameters* required
detailstring
one of compact · fulldefault: compact
numberCountryCodestring
originCountryCodevalue
phoneNumber*string
get_phone_input_rulesGet reviewed display placeholders and trunk-prefix guidance. Examples are not validation masks. English fallback and unsupported editorial coverage are explicit.2 params

Get reviewed display placeholders and trunk-prefix guidance. Examples are not validation masks. English fallback and unsupported editorial coverage are explicit.

Parameters* required
countryCode*string
localestring
default: en
diagnose_dialing_problemExplain formatting issues and propose reviewed prefix repairs for confirmation. Uses the same analyzer. Cannot determine why a network rejected a call.7 params

Explain formatting issues and propose reviewed prefix repairs for confirmation. Uses the same analyzer. Cannot determine why a network rejected a call.

Parameters* required
destinationCountryCodevalue
detailstring
one of compact · fulldefault: compact
devicestring
one of mobile · landline · unknowndefault: unknown
numberCountryCodestring
originCountryCodevalue
phoneNumber*string
symptomstring
one of format-rejected · call-failed · uncertain-formatdefault: uncertain-format
find_calling_windowsFind overlapping working hours using explicit IANA time zones and dates. Handles overnight shifts and DST; never infers location from phone numbers or contacts participants.

Find overlapping working hours using explicit IANA time zones and dates. Handles overnight shifts and DST; never infers location from phone numbers or contacts participants.

No parameters. Call it with no arguments.

lookup_country_calling_codeLook up international country calling codes by free text, ISO code, dial code, or region. Optionally return reviewed, source-linked dialing examples. This tool does not verify live subscriber numbers.6 params

Look up international country calling codes by free text, ISO code, dial code, or region. Optionally return reviewed, source-linked dialing examples. This tool does not verify live subscriber numbers.

Parameters* required
codestring
ISO 3166-1 alpha-2 or alpha-3 code, such as GB or GBR.
dialCodestring
Calling code with or without plus sign, such as +44 or 44.
includeExamplesboolean
When true, include reviewed safe mobile/landline patterns, transformation rules, source URLs, and lastVerified metadata.
limitinteger
Maximum number of countries to return.
qstring
Free-text search, such as "United Kingdom", "London", or "AUS".
regionstring
Optional region filter.one of Africa · Americas · Asia · Europe · Oceania
format_international_phone_numberNormalize a phone number into a plausible international format using reviewed country-specific rules. Processing is ephemeral. This tool does not query carriers, HLR/HSS, MNP databases, or live subscribers.2 params

Normalize a phone number into a plausible international format using reviewed country-specific rules. Processing is ephemeral. This tool does not query carriers, HLR/HSS, MNP databases, or live subscribers.

Parameters* required
countryCodestring
Optional ISO 3166-1 alpha-2 country context, such as GB.
phoneNumber*string
Phone number to format. It is processed ephemerally and is not stored.

Sponsors

Readme

Details

Repository
github.com/kajdep/v0-countrycallingcodes
Website
www.countrycalling.codes/developers#mcp
Transport
HTTP
Registry
MCP registry, active
Resources
2
Tools verified
Nov 6, 2026