MCPサーバー

Country Calling Codes

io.github.Kajdep/countrycallingcodesmcp
コミュニケーション 公開・接続可能 MCP 2025-11-25

このMCPでできること

Analyzes, normalizes, formats, compares, and provides dialing guidance for phone numbers and calling windows without verifying subscribers or carriers.

analyze_phone_number
Analyze phone number
Analyze a number using versioned numbering metadata. National numbers need numberCountryCode; exit prefixes need originCountryCode. Reports uncertainty and rule evidence, never live subscriber status.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['phoneNumber'], 'properties': {'detail': {'enum': ['compact', 'full'], 'type': 'string', 'default': 'compact'}, 'phoneNumber': {'type': 'string', 'maxLength': 64, 'minLength': 1}, 'numberCountryCode': {'type': 'string', 'pattern': '^[a-zA-Z]{2}$'}, 'originCountryCode': {'$ref': '#/properties/numberCountryCode'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['meta', 'result', 'limitations'], 'properties': {'meta': {'type': 'object', 'required': ['apiVersion', 'datasetVersion', 'numberingMetadataVersion', 'processing', 'liveCarrierCheck'], 'properties': {'apiVersion': {'type': 'string'}, 'processing': {'type': 'string', 'const': 'ephemeral'}, 'datasetVersion': {'type': 'string'}, 'liveCarrierCheck': {'type': 'boolean', 'const': False}, 'numberingMetadataVersion': {'type': 'string'}}, 'additionalProperties': False}, 'result': {'type': 'object', 'required': ['status', 'canonicalInternational', 'nationalNumber', 'nationalDisplay', 'internationalDisplay', 'extension', 'category', 'countryCandidates', 'checks', 'reasonCodes', 'requiredContext', 'transformations', 'evidenceIds'], 'properties': {'checks': {'type': 'object', 'required': ['parsing', 'length', 'numberingPlan'], 'properties': {'length': {'$ref': '#/properties/result/properties/checks/properties/parsing'}, 'parsing': {'enum': ['pass', 'fail', 'unknown', 'not-applicable'], 'type': 'string'}, 'numberingPlan': {'$ref': '#/properties/result/properties/checks/properties/parsing'}}, 'additionalProperties': False}, 'status': {'enum': ['analyzed', 'needs-context', 'ambiguous', 'unsupported', 'invalid'], 'type': 'string'}, 'category': {'enum': ['geographic', 'non-geographic', 'unknown'], 'type': 'string'}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'basis', 'version', 'lastVerified', 'sources'], 'properties': {'id': {'type': 'string'}, 'basis': {'enum': ['reviewed-guide', 'numbering-metadata'], 'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['url', 'publisher', 'title'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'title': {'type': 'string'}, 'publisher': {'type': 'string'}}, 'additionalProperties': False}}, 'version': {'type': 'string'}, 'lastVerified': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'extension': {'type': ['string', 'null']}, 'evidenceIds': {'type': 'array', 'items': {'type': 'string'}}, 'reasonCodes': {'type': 'array', 'items': {'type': 'string'}}, 'nationalNumber': {'type': ['string', 'null']}, 'nationalDisplay': {'type': ['string', 'null']}, 'requiredContext': {'type': 'array', 'items': {'type': 'string'}}, 'transformations': {'type': 'array', 'items': {'type': 'object', 'required': ['rule', 'action'], 'properties': {'rule': {'type': 'string'}, 'action': {'type': 'string'}}, 'additionalProperties': False}}, 'countryCandidates': {'type': 'array', 'items': {'type': 'object', 'required': ['countryCode', 'name', 'matchedPrefix', 'basis'], 'properties': {'name': {'type': 'string'}, 'basis': {'type': 'string'}, 'countryCode': {'type': 'string'}, 'matchedPrefix': {'type': 'string'}}, 'additionalProperties': False}}, 'internationalDisplay': {'type': ['string', 'null']}, 'canonicalInternational': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
compare_phone_numbers
Compare phone numbers
Compare two numbers after analysis. Missing context produces indeterminate. Extensions must match unless extensionPolicy is explicitly ignore; equality does not establish ownership.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['left', 'right'], 'properties': {'left': {'type': 'object', 'required': ['phoneNumber'], 'properties': {'detail': {'enum': ['compact', 'full'], 'type': 'string', 'default': 'compact'}, 'phoneNumber': {'type': 'string', 'maxLength': 64, 'minLength': 1}, 'numberCountryCode': {'type': 'string', 'pattern': '^[a-zA-Z]{2}$'}, 'originCountryCode': {'$ref': '#/properties/left/properties/numberCountryCode'}}, 'additionalProperties': False}, 'right': {'$ref': '#/properties/left'}, 'extensionPolicy': {'enum': ['exact', 'ignore'], 'type': 'string', 'default': 'exact'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['meta', 'result', 'limitations'], 'properties': {'meta': {'type': 'object', 'required': ['apiVersion', 'datasetVersion', 'numberingMetadataVersion', 'processing', 'liveCarrierCheck'], 'properties': {'apiVersion': {'type': 'string'}, 'processing': {'type': 'string', 'const': 'ephemeral'}, 'datasetVersion': {'type': 'string'}, 'liveCarrierCheck': {'type': 'boolean', 'const': False}, 'numberingMetadataVersion': {'type': 'string'}}, 'additionalProperties': False}, 'result': {'type': 'object', 'required': ['match', 'baseNumberMatch', 'extensionMatch', 'reasonCodes', 'left', 'right'], 'properties': {'left': {'type': 'object', 'required': ['status', 'canonicalInternational', 'nationalNumber', 'nationalDisplay', 'internationalDisplay', 'extension', 'category', 'countryCandidates', 'checks', 'reasonCodes', 'requiredContext', 'transformations', 'evidenceIds'], 'properties': {'checks': {'type': 'object', 'required': ['parsing', 'length', 'numberingPlan'], 'properties': {'length': {'$ref': '#/properties/result/properties/left/properties/checks/properties/parsing'}, 'parsing': {'enum': ['pass', 'fail', 'unknown', 'not-applicable'], 'type': 'string'}, 'numberingPlan': {'$ref': '#/properties/result/properties/left/properties/checks/properties/parsing'}}, 'additionalProperties': False}, 'status': {'enum': ['analyzed', 'needs-context', 'ambiguous', 'unsupported', 'invalid'], 'type': 'string'}, 'category': {'enum': ['geographic', 'non-geographic', 'unknown'], 'type': 'string'}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'basis', 'version', 'lastVerified', 'sources'], 'properties': {'id': {'type': 'string'}, 'basis': {'enum': ['reviewed-guide', 'numbering-metadata'], 'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['url', 'publisher', 'title'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'title': {'type': 'string'}, 'publisher': {'type': 'string'}}, 'additionalProperties': False}}, 'version': {'type': 'string'}, 'lastVerified': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'extension': {'type': ['string', 'null']}, 'evidenceIds': {'type': 'array', 'items': {'type': 'string'}}, 'reasonCodes': {'type': 'array', 'items': {'type': 'string'}}, 'nationalNumber': {'type': ['string', 'null']}, 'nationalDisplay': {'type': ['string', 'null']}, 'requiredContext': {'type': 'array', 'items': {'type': 'string'}}, 'transformations': {'type': 'array', 'items': {'type': 'object', 'required': ['rule', 'action'], 'properties': {'rule': {'type': 'string'}, 'action': {'type': 'string'}}, 'additionalProperties': False}}, 'countryCandidates': {'type': 'array', 'items': {'type': 'object', 'required': ['countryCode', 'name', 'matchedPrefix', 'basis'], 'properties': {'name': {'type': 'string'}, 'basis': {'type': 'string'}, 'countryCode': {'type': 'string'}, 'matchedPrefix': {'type': 'string'}}, 'additionalProperties': False}}, 'internationalDisplay': {'type': ['string', 'null']}, 'canonicalInternational': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'match': {'enum': ['same', 'different', 'indeterminate'], 'type': 'string'}, 'right': {'$ref': '#/properties/result/properties/left'}, 'reasonCodes': {'type': 'array', 'items': {'type': 'string'}}, 'extensionMatch': {'type': ['boolean', 'null']}, 'baseNumberMatch': {'type': ['boolean', 'null']}}, 'additionalProperties': False}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
diagnose_dialing_problem
Diagnose dialing format
Explain formatting issues and propose reviewed prefix repairs for confirmation. Uses the same analyzer. Cannot determine why a network rejected a call.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['phoneNumber'], 'properties': {'detail': {'enum': ['compact', 'full'], 'type': 'string', 'default': 'compact'}, 'device': {'enum': ['mobile', 'landline', 'unknown'], 'type': 'string', 'default': 'unknown'}, 'symptom': {'enum': ['format-rejected', 'call-failed', 'uncertain-format'], 'type': 'string', 'default': 'uncertain-format'}, 'phoneNumber': {'type': 'string', 'maxLength': 64, 'minLength': 1}, 'numberCountryCode': {'type': 'string', 'pattern': '^[a-zA-Z]{2}$'}, 'originCountryCode': {'$ref': '#/properties/numberCountryCode'}, 'destinationCountryCode': {'$ref': '#/properties/numberCountryCode'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['meta', 'result', 'limitations'], 'properties': {'meta': {'type': 'object', 'required': ['apiVersion', 'datasetVersion', 'numberingMetadataVersion', 'processing', 'liveCarrierCheck'], 'properties': {'apiVersion': {'type': 'string'}, 'processing': {'type': 'string', 'const': 'ephemeral'}, 'datasetVersion': {'type': 'string'}, 'liveCarrierCheck': {'type': 'boolean', 'const': False}, 'numberingMetadataVersion': {'type': 'string'}}, 'additionalProperties': False}, 'result': {'type': 'object', 'required': ['analysis', 'issues', 'suggestedCorrection', 'suggestionReason', 'requiredContext', 'unresolvedPossibilities'], 'properties': {'issues': {'type': 'array', 'items': {'type': 'string'}}, 'analysis': {'type': 'object', 'required': ['status', 'canonicalInternational', 'nationalNumber', 'nationalDisplay', 'internationalDisplay', 'extension', 'category', 'countryCandidates', 'checks', 'reasonCodes', 'requiredContext', 'transformations', 'evidenceIds'], 'properties': {'checks': {'type': 'object', 'required': ['parsing', 'length', 'numberingPlan'], 'properties': {'length': {'$ref': '#/properties/result/properties/analysis/properties/checks/properties/parsing'}, 'parsing': {'enum': ['pass', 'fail', 'unknown', 'not-applicable'], 'type': 'string'}, 'numberingPlan': {'$ref': '#/properties/result/properties/analysis/properties/checks/properties/parsing'}}, 'additionalProperties': False}, 'status': {'enum': ['analyzed', 'needs-context', 'ambiguous', 'unsupported', 'invalid'], 'type': 'string'}, 'category': {'enum': ['geographic', 'non-geographic', 'unknown'], 'type': 'string'}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'basis', 'version', 'lastVerified', 'sources'], 'properties': {'id': {'type': 'string'}, 'basis': {'enum': ['reviewed-guide', 'numbering-metadata'], 'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['url', 'publisher', 'title'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'title': {'type': 'string'}, 'publisher': {'type': 'string'}}, 'additionalProperties': False}}, 'version': {'type': 'string'}, 'lastVerified': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'extension': {'type': ['string', 'null']}, 'evidenceIds': {'type': 'array', 'items': {'type': 'string'}}, 'reasonCodes': {'type': 'array', 'items': {'type': 'string'}}, 'nationalNumber': {'type': ['string', 'null']}, 'nationalDisplay': {'type': ['string', 'null']}, 'requiredContext': {'type': 'array', 'items': {'type': 'string'}}, 'transformations': {'type': 'array', 'items': {'type': 'object', 'required': ['rule', 'action'], 'properties': {'rule': {'type': 'string'}, 'action': {'type': 'string'}}, 'additionalProperties': False}}, 'countryCandidates': {'type': 'array', 'items': {'type': 'object', 'required': ['countryCode', 'name', 'matchedPrefix', 'basis'], 'properties': {'name': {'type': 'string'}, 'basis': {'type': 'string'}, 'countryCode': {'type': 'string'}, 'matchedPrefix': {'type': 'string'}}, 'additionalProperties': False}}, 'internationalDisplay': {'type': ['string', 'null']}, 'canonicalInternational': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'requiredContext': {'type': 'array', 'items': {'type': 'string'}}, 'suggestionReason': {'type': ['string', 'null']}, 'suggestedCorrection': {'type': ['string', 'null']}, 'unresolvedPossibilities': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
find_calling_windows
Find calling windows
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.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {}}
出力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['meta', 'result', 'limitations'], 'properties': {'meta': {'type': 'object', 'required': ['apiVersion', 'datasetVersion', 'numberingMetadataVersion', 'processing', 'liveCarrierCheck'], 'properties': {'apiVersion': {'type': 'string'}, 'processing': {'type': 'string', 'const': 'ephemeral'}, 'datasetVersion': {'type': 'string'}, 'liveCarrierCheck': {'type': 'boolean', 'const': False}, 'numberingMetadataVersion': {'type': 'string'}}, 'additionalProperties': False}, 'result': {'type': 'object', 'required': ['windows', 'truncated', 'policy'], 'properties': {'policy': {'type': 'string'}, 'windows': {'type': 'array', 'items': {'type': 'object', 'required': ['startUtc', 'endUtc', 'durationMinutes', 'participants'], 'properties': {'endUtc': {'type': 'string'}, 'startUtc': {'type': 'string'}, 'participants': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'timeZone', 'startLocal', 'endLocal', 'startOffsetMinutes', 'endOffsetMinutes'], 'properties': {'id': {'type': 'string'}, 'endLocal': {'type': 'string'}, 'timeZone': {'type': 'string'}, 'startLocal': {'type': 'string'}, 'endOffsetMinutes': {'type': 'number'}, 'startOffsetMinutes': {'type': 'number'}}, 'additionalProperties': False}}, 'durationMinutes': {'type': 'number'}}, 'additionalProperties': False}}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
format_international_phone_number
Format International Phone Number
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.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['phoneNumber'], 'properties': {'countryCode': {'type': 'string', 'maxLength': 2, 'minLength': 2, 'description': 'Optional ISO 3166-1 alpha-2 country context, such as GB.'}, 'phoneNumber': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'Phone number to format. It is processed ephemerally and is not stored.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['meta', 'result', 'limitations'], 'properties': {'meta': {'type': 'object', 'additionalProperties': {}}, 'result': {'type': 'object', 'additionalProperties': {}}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
get_dialing_instructions
Dialing instructions
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.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['originCountryCode', 'destinationCountryCode'], 'properties': {'detail': {'enum': ['compact', 'full'], 'type': 'string', 'default': 'compact'}, 'device': {'enum': ['mobile', 'landline', 'unknown'], 'type': 'string', 'default': 'unknown'}, 'phoneNumber': {'type': 'string', 'maxLength': 64, 'minLength': 1}, 'originCountryCode': {'type': 'string', 'pattern': '^[a-zA-Z]{2}$'}, 'carrierSelectionCode': {'type': 'string', 'pattern': '^[0-9]{2}$'}, 'destinationCountryCode': {'$ref': '#/properties/originCountryCode'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['meta', 'result', 'limitations'], 'properties': {'meta': {'type': 'object', 'required': ['apiVersion', 'datasetVersion', 'numberingMetadataVersion', 'processing', 'liveCarrierCheck'], 'properties': {'apiVersion': {'type': 'string'}, 'processing': {'type': 'string', 'const': 'ephemeral'}, 'datasetVersion': {'type': 'string'}, 'liveCarrierCheck': {'type': 'boolean', 'const': False}, 'numberingMetadataVersion': {'type': 'string'}}, 'additionalProperties': False}, 'result': {'type': 'object', 'required': ['status', 'route', 'canonicalInternational', 'recommendedDisplay', 'dialString', 'pattern', 'steps', 'extensionInstructions', 'reasonCodes', 'requiredContext', 'notes', 'evidence'], 'properties': {'notes': {'type': 'array', 'items': {'type': 'string'}}, 'route': {'enum': ['domestic', 'international', 'shared-plan'], 'type': 'string'}, 'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'value'], 'properties': {'label': {'type': 'string'}, 'value': {'type': 'string'}}, 'additionalProperties': False}}, 'status': {'enum': ['ready', 'guidance', 'needs-context', 'unsupported', 'invalid', 'ambiguous'], 'type': 'string'}, 'pattern': {'type': ['string', 'null']}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'basis', 'version', 'lastVerified', 'sources'], 'properties': {'id': {'type': 'string'}, 'basis': {'enum': ['reviewed-guide', 'numbering-metadata'], 'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['url', 'publisher', 'title'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'title': {'type': 'string'}, 'publisher': {'type': 'string'}}, 'additionalProperties': False}}, 'version': {'type': 'string'}, 'lastVerified': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'dialString': {'type': ['string', 'null']}, 'reasonCodes': {'type': 'array', 'items': {'type': 'string'}}, 'requiredContext': {'type': 'array', 'items': {'type': 'string'}}, 'recommendedDisplay': {'type': ['string', 'null']}, 'extensionInstructions': {'type': ['string', 'null']}, 'canonicalInternational': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
get_phone_capabilities
Phone capabilities
Discover supported countries, per-operation review coverage, evidence, dataset versions and request limits before choosing a phone workflow.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'operation': {'enum': ['get_phone_capabilities', 'analyze_phone_number', 'get_dialing_instructions', 'normalize_phone_numbers', 'compare_phone_numbers', 'resolve_phone_region', 'get_phone_input_rules', 'diagnose_dialing_problem', 'find_calling_windows'], 'type': 'string'}, 'countryCode': {'type': 'string', 'pattern': '^[a-zA-Z]{2}$'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['meta', 'result', 'limitations'], 'properties': {'meta': {'type': 'object', 'required': ['apiVersion', 'datasetVersion', 'numberingMetadataVersion', 'processing', 'liveCarrierCheck'], 'properties': {'apiVersion': {'type': 'string'}, 'processing': {'type': 'string', 'const': 'ephemeral'}, 'datasetVersion': {'type': 'string'}, 'liveCarrierCheck': {'type': 'boolean', 'const': False}, 'numberingMetadataVersion': {'type': 'string'}}, 'additionalProperties': False}, 'result': {'type': 'object', 'required': ['operations', 'limits', 'countries', 'evidence'], 'properties': {'limits': {'type': 'object', 'required': ['bodyBytes', 'batchItems', 'phoneCharacters', 'schedulingDays', 'schedulingParticipants', 'rateLimit'], 'properties': {'bodyBytes': {'type': 'number'}, 'rateLimit': {'type': 'string'}, 'batchItems': {'type': 'number'}, 'schedulingDays': {'type': 'number'}, 'phoneCharacters': {'type': 'number'}, 'schedulingParticipants': {'type': 'number'}}, 'additionalProperties': False}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'basis', 'version', 'lastVerified', 'sources'], 'properties': {'id': {'type': 'string'}, 'basis': {'enum': ['reviewed-guide', 'numbering-metadata'], 'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['url', 'publisher', 'title'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'title': {'type': 'string'}, 'publisher': {'type': 'string'}}, 'additionalProperties': False}}, 'version': {'type': 'string'}, 'lastVerified': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'countries': {'type': 'array', 'items': {'type': 'object', 'required': ['countryCode', 'name', 'callingCode', 'supportedOperations', 'reviewStatus', 'lastVerified', 'evidenceIds', 'sourceUrls', 'limitations'], 'properties': {'name': {'type': 'string'}, 'sourceUrls': {'type': 'array', 'items': {'type': 'string'}}, 'callingCode': {'type': ['string', 'null']}, 'countryCode': {'type': 'string'}, 'evidenceIds': {'type': 'array', 'items': {'type': 'string'}}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}, 'lastVerified': {'type': ['string', 'null']}, 'reviewStatus': {'enum': ['reviewed-guide-and-metadata', 'numbering-metadata', 'directory-only'], 'type': 'string'}, 'supportedOperations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'operations': {'type': 'array', 'items': {'enum': ['get_phone_capabilities', 'analyze_phone_number', 'get_dialing_instructions', 'normalize_phone_numbers', 'compare_phone_numbers', 'resolve_phone_region', 'get_phone_input_rules', 'diagnose_dialing_problem', 'find_calling_windows'], 'type': 'string'}}}, 'additionalProperties': False}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
get_phone_input_rules
Phone input guidance
Get reviewed display placeholders and trunk-prefix guidance. Examples are not validation masks. English fallback and unsupported editorial coverage are explicit.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['countryCode'], 'properties': {'locale': {'type': 'string', 'default': 'en', 'maxLength': 35, 'minLength': 2}, 'countryCode': {'type': 'string', 'pattern': '^[a-zA-Z]{2}$'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['meta', 'result', 'limitations'], 'properties': {'meta': {'type': 'object', 'required': ['apiVersion', 'datasetVersion', 'numberingMetadataVersion', 'processing', 'liveCarrierCheck'], 'properties': {'apiVersion': {'type': 'string'}, 'processing': {'type': 'string', 'const': 'ephemeral'}, 'datasetVersion': {'type': 'string'}, 'liveCarrierCheck': {'type': 'boolean', 'const': False}, 'numberingMetadataVersion': {'type': 'string'}}, 'additionalProperties': False}, 'result': {'type': 'object', 'required': ['status', 'countryCode', 'locale', 'requestedLocale', 'fallback', 'callingCode', 'nationalLengths', 'patterns', 'trunkPrefixRule', 'extensionSupported', 'hints', 'evidence'], 'properties': {'hints': {'type': 'array', 'items': {'type': 'string'}}, 'locale': {'type': 'string'}, 'status': {'enum': ['supported', 'unsupported'], 'type': 'string'}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'basis', 'version', 'lastVerified', 'sources'], 'properties': {'id': {'type': 'string'}, 'basis': {'enum': ['reviewed-guide', 'numbering-metadata'], 'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['url', 'publisher', 'title'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'title': {'type': 'string'}, 'publisher': {'type': 'string'}}, 'additionalProperties': False}}, 'version': {'type': 'string'}, 'lastVerified': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'fallback': {'type': 'boolean'}, 'patterns': {'type': 'array', 'items': {'type': 'object', 'required': ['kind', 'national', 'international'], 'properties': {'kind': {'type': 'string'}, 'national': {'type': 'string'}, 'international': {'type': 'string'}}, 'additionalProperties': False}}, 'callingCode': {'type': ['string', 'null']}, 'countryCode': {'type': 'string'}, 'nationalLengths': {'anyOf': [{'type': 'array', 'items': {'type': 'number'}}, {'type': 'null'}]}, 'requestedLocale': {'type': 'string'}, 'trunkPrefixRule': {'type': ['string', 'null']}, 'extensionSupported': {'type': 'boolean'}}, 'additionalProperties': False}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
lookup_country_calling_code
Lookup Country Calling Code
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.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'q': {'type': 'string', 'description': 'Free-text search, such as "United Kingdom", "London", or "AUS".'}, 'code': {'type': 'string', 'description': 'ISO 3166-1 alpha-2 or alpha-3 code, such as GB or GBR.'}, 'limit': {'type': 'integer', 'maximum': 250, 'minimum': 1, 'description': 'Maximum number of countries to return.'}, 'region': {'enum': ['Africa', 'Americas', 'Asia', 'Europe', 'Oceania'], 'type': 'string', 'description': 'Optional region filter.'}, 'dialCode': {'type': 'string', 'description': 'Calling code with or without plus sign, such as +44 or 44.'}, 'includeExamples': {'type': 'boolean', 'description': 'When true, include reviewed safe mobile/landline patterns, transformation rules, source URLs, and lastVerified metadata.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['meta', 'query', 'countries'], 'properties': {'meta': {'type': 'object', 'additionalProperties': {}}, 'query': {'type': 'object', 'additionalProperties': {}}, 'countries': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': {}}}}, 'additionalProperties': False}
normalize_phone_numbers
Normalize phone batch
Normalize up to 100 records with unique IDs. Invalid records produce individual errors. Optionally identify canonical duplicate candidates; no contacts are changed or stored.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {}}
出力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['meta', 'result', 'limitations'], 'properties': {'meta': {'type': 'object', 'required': ['apiVersion', 'datasetVersion', 'numberingMetadataVersion', 'processing', 'liveCarrierCheck'], 'properties': {'apiVersion': {'type': 'string'}, 'processing': {'type': 'string', 'const': 'ephemeral'}, 'datasetVersion': {'type': 'string'}, 'liveCarrierCheck': {'type': 'boolean', 'const': False}, 'numberingMetadataVersion': {'type': 'string'}}, 'additionalProperties': False}, 'result': {'type': 'object', 'required': ['items', 'counts', 'duplicateGroups'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'fields': {'type': 'array', 'items': {'type': 'string'}}, 'message': {'type': 'string'}}, 'additionalProperties': False}, 'result': {'type': 'object', 'required': ['status', 'canonicalInternational', 'nationalNumber', 'nationalDisplay', 'internationalDisplay', 'extension', 'category', 'countryCandidates', 'checks', 'reasonCodes', 'requiredContext', 'transformations', 'evidenceIds'], 'properties': {'checks': {'type': 'object', 'required': ['parsing', 'length', 'numberingPlan'], 'properties': {'length': {'$ref': '#/properties/result/properties/items/items/properties/result/properties/checks/properties/parsing'}, 'parsing': {'enum': ['pass', 'fail', 'unknown', 'not-applicable'], 'type': 'string'}, 'numberingPlan': {'$ref': '#/properties/result/properties/items/items/properties/result/properties/checks/properties/parsing'}}, 'additionalProperties': False}, 'status': {'enum': ['analyzed', 'needs-context', 'ambiguous', 'unsupported', 'invalid'], 'type': 'string'}, 'category': {'enum': ['geographic', 'non-geographic', 'unknown'], 'type': 'string'}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'basis', 'version', 'lastVerified', 'sources'], 'properties': {'id': {'type': 'string'}, 'basis': {'enum': ['reviewed-guide', 'numbering-metadata'], 'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['url', 'publisher', 'title'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'title': {'type': 'string'}, 'publisher': {'type': 'string'}}, 'additionalProperties': False}}, 'version': {'type': 'string'}, 'lastVerified': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'extension': {'type': ['string', 'null']}, 'evidenceIds': {'type': 'array', 'items': {'type': 'string'}}, 'reasonCodes': {'type': 'array', 'items': {'type': 'string'}}, 'nationalNumber': {'type': ['string', 'null']}, 'nationalDisplay': {'type': ['string', 'null']}, 'requiredContext': {'type': 'array', 'items': {'type': 'string'}}, 'transformations': {'type': 'array', 'items': {'type': 'object', 'required': ['rule', 'action'], 'properties': {'rule': {'type': 'string'}, 'action': {'type': 'string'}}, 'additionalProperties': False}}, 'countryCandidates': {'type': 'array', 'items': {'type': 'object', 'required': ['countryCode', 'name', 'matchedPrefix', 'basis'], 'properties': {'name': {'type': 'string'}, 'basis': {'type': 'string'}, 'countryCode': {'type': 'string'}, 'matchedPrefix': {'type': 'string'}}, 'additionalProperties': False}}, 'internationalDisplay': {'type': ['string', 'null']}, 'canonicalInternational': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'additionalProperties': False}}, 'counts': {'type': 'object', 'required': ['total', 'analyzed', 'ambiguous', 'needsContext', 'unsupported', 'invalid', 'errors'], 'properties': {'total': {'type': 'number'}, 'errors': {'type': 'number'}, 'invalid': {'type': 'number'}, 'analyzed': {'type': 'number'}, 'ambiguous': {'type': 'number'}, 'unsupported': {'type': 'number'}, 'needsContext': {'type': 'number'}}, 'additionalProperties': False}, 'duplicateGroups': {'type': 'array', 'items': {'type': 'object', 'required': ['itemIds', 'extensionsDiffer'], 'properties': {'itemIds': {'type': 'array', 'items': {'type': 'string'}}, 'extensionsDiffer': {'type': 'boolean'}}, 'additionalProperties': False}}}, 'additionalProperties': False}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
resolve_phone_region
Resolve phone region
Resolve a phone number to metadata-backed country candidates or non-geographic numbering. Results are numbering assignments, not current location or carrier.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['phoneNumber'], 'properties': {'detail': {'enum': ['compact', 'full'], 'type': 'string', 'default': 'compact'}, 'phoneNumber': {'type': 'string', 'maxLength': 64, 'minLength': 1}, 'numberCountryCode': {'type': 'string', 'pattern': '^[a-zA-Z]{2}$'}, 'originCountryCode': {'$ref': '#/properties/numberCountryCode'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['meta', 'result', 'limitations'], 'properties': {'meta': {'type': 'object', 'required': ['apiVersion', 'datasetVersion', 'numberingMetadataVersion', 'processing', 'liveCarrierCheck'], 'properties': {'apiVersion': {'type': 'string'}, 'processing': {'type': 'string', 'const': 'ephemeral'}, 'datasetVersion': {'type': 'string'}, 'liveCarrierCheck': {'type': 'boolean', 'const': False}, 'numberingMetadataVersion': {'type': 'string'}}, 'additionalProperties': False}, 'result': {'type': 'object', 'required': ['analysis', 'metadataEvidence', 'resolution'], 'properties': {'analysis': {'type': 'object', 'required': ['status', 'canonicalInternational', 'nationalNumber', 'nationalDisplay', 'internationalDisplay', 'extension', 'category', 'countryCandidates', 'checks', 'reasonCodes', 'requiredContext', 'transformations', 'evidenceIds'], 'properties': {'checks': {'type': 'object', 'required': ['parsing', 'length', 'numberingPlan'], 'properties': {'length': {'$ref': '#/properties/result/properties/analysis/properties/checks/properties/parsing'}, 'parsing': {'enum': ['pass', 'fail', 'unknown', 'not-applicable'], 'type': 'string'}, 'numberingPlan': {'$ref': '#/properties/result/properties/analysis/properties/checks/properties/parsing'}}, 'additionalProperties': False}, 'status': {'enum': ['analyzed', 'needs-context', 'ambiguous', 'unsupported', 'invalid'], 'type': 'string'}, 'category': {'enum': ['geographic', 'non-geographic', 'unknown'], 'type': 'string'}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'basis', 'version', 'lastVerified', 'sources'], 'properties': {'id': {'type': 'string'}, 'basis': {'enum': ['reviewed-guide', 'numbering-metadata'], 'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['url', 'publisher', 'title'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'title': {'type': 'string'}, 'publisher': {'type': 'string'}}, 'additionalProperties': False}}, 'version': {'type': 'string'}, 'lastVerified': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'extension': {'type': ['string', 'null']}, 'evidenceIds': {'type': 'array', 'items': {'type': 'string'}}, 'reasonCodes': {'type': 'array', 'items': {'type': 'string'}}, 'nationalNumber': {'type': ['string', 'null']}, 'nationalDisplay': {'type': ['string', 'null']}, 'requiredContext': {'type': 'array', 'items': {'type': 'string'}}, 'transformations': {'type': 'array', 'items': {'type': 'object', 'required': ['rule', 'action'], 'properties': {'rule': {'type': 'string'}, 'action': {'type': 'string'}}, 'additionalProperties': False}}, 'countryCandidates': {'type': 'array', 'items': {'type': 'object', 'required': ['countryCode', 'name', 'matchedPrefix', 'basis'], 'properties': {'name': {'type': 'string'}, 'basis': {'type': 'string'}, 'countryCode': {'type': 'string'}, 'matchedPrefix': {'type': 'string'}}, 'additionalProperties': False}}, 'internationalDisplay': {'type': ['string', 'null']}, 'canonicalInternational': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'resolution': {'enum': ['resolved', 'ambiguous', 'non-geographic', 'unresolved'], 'type': 'string'}, 'metadataEvidence': {'$ref': '#/properties/result/properties/analysis/properties/evidence/items'}}, 'additionalProperties': False}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
追加
format_international_phone_number
2026年9月17日12:42
追加
lookup_country_calling_code
2026年9月17日12:42
追加
find_calling_windows
2026年9月17日12:42
追加
diagnose_dialing_problem
2026年9月17日12:42
追加
get_phone_input_rules
2026年9月17日12:42
追加
resolve_phone_region
2026年9月17日12:42
追加
compare_phone_numbers
2026年9月17日12:42
追加
normalize_phone_numbers
2026年9月17日12:42
追加
get_dialing_instructions
2026年9月17日12:42
追加
analyze_phone_number
2026年9月17日12:42
追加
get_phone_capabilities
2026年9月17日12:42