# Country Calling Codes > Source-linked international calling-code data, reviewed dialing walkthroughs, > E.164 formatting guidance, and a read-only lookup API. Prefer the JSON API or hosted MCP tool for structured lookups. Use reviewed HTML guides and country pages when a user needs an attributable explanation. Static numbering-plan guidance does not prove that a phone number is allocated, active, reachable, owned, or consented for contact. ## Best LLM Entry Points - [Full LLM guide](https://www.countrycalling.codes/llms-full.md) - [Guides hub](https://www.countrycalling.codes/guides) - [International dialing format](https://www.countrycalling.codes/guides/international-dialing-format) - [Country dialing walkthroughs](https://www.countrycalling.codes/guides/country-dialing-walkthroughs) - [Phone number validation](https://www.countrycalling.codes/guides/phone-number-validation) - [Common formatting errors](https://www.countrycalling.codes/guides/common-phone-number-formatting-errors) - [Editorial methodology](https://www.countrycalling.codes/methodology) - [Private browser format checker](https://www.countrycalling.codes/tools/format-checker) - [Interactive developer documentation](https://www.countrycalling.codes/developers) - [Skill manifest](https://www.countrycalling.codes/skill.json) - [Official MCP Registry manifest](https://www.countrycalling.codes/server.json) - [Hosted MCP server](https://www.countrycalling.codes/api/mcp) - [OpenAPI tool schema](https://www.countrycalling.codes/api/calling-codes/openapi.json) - [Live API status](https://www.countrycalling.codes/api/calling-codes/status) - [Phone format API](https://www.countrycalling.codes/api/phone/format) - [Search API example](https://www.countrycalling.codes/api/calling-codes?q=united%20kingdom) - [Reviewed example data](https://www.countrycalling.codes/api/calling-codes?code=GB&include=examples) - [Direct lookup API](https://www.countrycalling.codes/api/calling-codes/gb) - [Dial-code lookup](https://www.countrycalling.codes/api/calling-codes?dialCode=44) - [Region filter](https://www.countrycalling.codes/api/calling-codes?region=Europe) - [Sitemap](https://www.countrycalling.codes/sitemap.xml) - [Robots](https://www.countrycalling.codes/robots.txt) ## Formatting Facts - An international E.164 number combines a country calling code with the destination national significant number and contains at most 15 digits. - The plus sign signifies the international prefix in written notation. It is not itself a country code or an E.164 digit. - An exit prefix such as 00, 010, 011, or 0011 belongs to the origin dial string, not the stored destination number. - A leading zero is country-specific. It is removed in many plans but retained on Italian geographic numbers. - Spaces and punctuation are display characters. Store extensions separately. - Use X placeholders in published patterns unless a reserved example number is explicitly identified. ## API Summary GET /api/calling-codes Query parameters: - q: free text search across country name, official name, ISO codes, dial code, capital, and area codes. - code: ISO 3166-1 alpha-2 or alpha-3 country code, such as GB or GBR. - dialCode: country calling code with or without "+", such as +44 or 44. This field is not a complete phone number. - region: Africa, Americas, Asia, Europe, or Oceania. - limit: maximum number of returned countries. - include: set to examples to add reviewed dialingGuide content, source URLs, safe mobile/landline patterns, exceptions, and lastVerified metadata. Omitted by default to keep lookup payloads compact. GET /api/calling-codes/{lookup} Lookup may be an ISO alpha-2 code, ISO alpha-3 code, country slug, country name, or dial code. Dial codes can be passed as 44 or encoded as %2B44. Append ?include=examples for reviewed guidance when available. GET /api/calling-codes/openapi.json OpenAPI 3.1 schema for generating a read-only LLM tool. GET /api/calling-codes/status Uncached live status, API version, dataset counts, and canonical endpoint links. The REST endpoints support cross-origin GET requests and return structured HTTP 400 errors for invalid query parameters. POST /api/phone/format Accepts JSON with a required phoneNumber and optional two-letter countryCode. It applies the same reviewed formatter as the browser tool, processes the value ephemerally, never caches the response, and never represents the result as a carrier, HLR/HSS, MNP, allocation, reachability, ownership, or consent check. GET /skill.json Machine-readable skill manifest with guide, API, MCP, and OpenAPI entry points. POST /api/mcp Streamable HTTP MCP server exposing lookup_country_calling_code and format_international_phone_number. Set includeExamples=true to request the reviewed dialing guide. Phone-format input is processed ephemerally. A normal browser GET returns discovery and client-configuration JSON; MCP clients negotiate the Streamable HTTP transport at the same URL. The Registry-format manifest is at /server.json. ## Validation Boundaries Formatting/plausibility checks are not live verification. Carrier, MNP, or HLR/HSS results are provider-reported and time-sensitive. They do not prove identity, ownership, current ability to answer, or consent. When control matters, use a short-lived challenge and retain the result only for the defined purpose. ## Public Pages - [Homepage](https://www.countrycalling.codes/) - [Directory](https://www.countrycalling.codes/directory) - [Guides](https://www.countrycalling.codes/guides) - [International dialing format](https://www.countrycalling.codes/guides/international-dialing-format) - [Country dialing walkthroughs](https://www.countrycalling.codes/guides/country-dialing-walkthroughs) - [Phone number validation](https://www.countrycalling.codes/guides/phone-number-validation) - [Common formatting errors](https://www.countrycalling.codes/guides/common-phone-number-formatting-errors) - [Format checker](https://www.countrycalling.codes/tools/format-checker) - [Methodology](https://www.countrycalling.codes/methodology) - [Developer documentation](https://www.countrycalling.codes/developers) - Country detail template: `/country/{slug}` - [Privacy](https://www.countrycalling.codes/privacy) - [Contact](https://www.countrycalling.codes/contact)