North American telephone numbering data: carriers, rate centers, OCNs, and number history.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Your TelcoData.US API key (Bearer token)
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Geocode a U.S. street address with TelcoData's local TIGER/Line database. For Canadian addresses, return the direct Natural Resources Canada Geolocator URL instead of proxying the Canadian query.
TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Geocode a U.S. street address with TelcoData's local TIGER/Line database. For Canadian addresses, return the direct Natural Resources Canada Geolocator URL instead of proxying the Canadian query.
| Argument | Type | Description |
|---|---|---|
| city | string | |
| state | string | |
| street | string | |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
| language | string | |
| postal_code | string |
{
"type": "object",
"properties": {
"city": {
"type": "string"
},
"state": {
"type": "string"
},
"street": {
"type": "string"
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
},
"language": {
"enum": [
"en",
"fr"
],
"type": "string"
},
"postal_code": {
"type": "string"
}
}
}Fetch metadata for a specific paid download without transferring file contents. Use after list_downloads when the user asks about one dataset's suggested filename, access level, availability, file existence, or last-updated time.
| Argument | Type | Description |
|---|---|---|
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
| download_hash* | string | Opaque download hash returned by list_downloads. |
{
"type": "object",
"required": [
"download_hash"
],
"properties": {
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
},
"download_hash": {
"type": "string",
"description": "Opaque download hash returned by list_downloads."
}
}
}Look up a single NANP NPA-NXX exchange/prefix. Use when the user has an area code plus exchange such as 425-555, or when deriving the prefix from a phone number is unnecessary. Set include_blocks=true when the user needs portability/pooling detail, the responsible carrier may vary by thousands digit, or the answer should show all block-level assignments. TelcoData fields commonly include npa, exchange/NXX, thousands, state, country, ratecenter, company, ocn, lata, switch CLLI, and tandem CLLI. A thousands value of -1 represents the whole prefix/default aggregate; 0-9 are individual thousand-number pooling blocks.
| Argument | Type | Description |
|---|---|---|
| npa* | string | 3-digit NANP area code. |
| nxx* | string | 3-digit NANP central-office/exchange code. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
| include_blocks | boolean | Include individual thousands-block rows for number-pooling detail. |
{
"type": "object",
"required": [
"npa",
"nxx"
],
"properties": {
"npa": {
"type": "string",
"pattern": "^[2-9]\\d{2}$",
"description": "3-digit NANP area code."
},
"nxx": {
"type": "string",
"pattern": "^[2-9]\\d{2}$",
"description": "3-digit NANP central-office/exchange code."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
},
"include_blocks": {
"type": "boolean",
"default": false,
"description": "Include individual thousands-block rows for number-pooling detail."
}
}
}Look up one thousands block within an NPA-NXX. Use when the user gives the seventh digit of a NANP number, such as 425-555-4XXX, or asks who owns/routes a specific block. If no block row exists, the tool reports whether it used the -1 aggregate/default row. TelcoData fields commonly include npa, exchange/NXX, thousands, state, country, ratecenter, company, ocn, lata, switch CLLI, and tandem CLLI. A thousands value of -1 represents the whole prefix/default aggregate; 0-9 are individual thousand-number pooling blocks.
| Argument | Type | Description |
|---|---|---|
| npa* | string | 3-digit NANP area code. |
| nxx* | string | 3-digit NANP central-office/exchange code. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
| thousands* | integer | Seventh digit of the number, 0-9; use -1 only for the whole-prefix/default aggregate. |
{
"type": "object",
"required": [
"npa",
"nxx",
"thousands"
],
"properties": {
"npa": {
"type": "string",
"pattern": "^[2-9]\\d{2}$",
"description": "3-digit NANP area code."
},
"nxx": {
"type": "string",
"pattern": "^[2-9]\\d{2}$",
"description": "3-digit NANP central-office/exchange code."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
},
"thousands": {
"type": "integer",
"maximum": 9,
"minimum": -1,
"description": "Seventh digit of the number, 0-9; use -1 only for the whole-prefix/default aggregate."
}
}
}Return the authenticated TelcoData account profile for the provided API key. Use this to confirm entitlement level, API access, expiration, and identity before explaining why a query or download may be unavailable.
| Argument | Type | Description |
|---|---|---|
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
{
"type": "object",
"properties": {
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
}
}
}Fetch carrier profile details for a 4-character Operating Company Number (OCN). Use when the user asks who an OCN belongs to, wants carrier type/country, or needs FCC FRN/RMD and Canadian registration/contact fields tied to that carrier.
| Argument | Type | Description |
|---|---|---|
| ocn* | string | 4-character alphanumeric Operating Company Number. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
{
"type": "object",
"required": [
"ocn"
],
"properties": {
"ocn": {
"type": "string",
"pattern": "^[A-Z0-9]{4}$",
"description": "4-character alphanumeric Operating Company Number."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
}
}
}Fetch central-office/switch detail for one 11-character CLLI code. Use when the user asks about a switch, wire center, location, equipment/switch type, LATA, tandem, point code, or English name tied to a CLLI. The officetype field contains space-separated raw NECA Tariff 4 office-capability codes; it is not the equipment model in switchtype. For prefixes served by a switch, start with get_exchange or related prefix-listing tools.
| Argument | Type | Description |
|---|---|---|
| clli* | string | Full 11-character switch CLLI code. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
{
"type": "object",
"required": [
"clli"
],
"properties": {
"clli": {
"type": "string",
"pattern": "^[A-Z]{6}[A-Z0-9]{5}$",
"description": "Full 11-character switch CLLI code."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
}
}
}List all exchanges/prefixes in a NANP area code. Use for area-code inventory, coverage, or 'what prefixes exist in 425' questions. Set include_blocks=true only when the user asks for every thousand block or pooling-level detail, because that can return many more rows. TelcoData fields commonly include npa, exchange/NXX, thousands, state, country, ratecenter, company, ocn, lata, switch CLLI, and tandem CLLI. A thousands value of -1 represents the whole prefix/default aggregate; 0-9 are individual thousand-number pooling blocks.
| Argument | Type | Description |
|---|---|---|
| npa* | string | 3-digit NANP area code. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
| include_blocks | boolean | Return all thousands-block rows instead of one row per NPA-NXX prefix. |
{
"type": "object",
"required": [
"npa"
],
"properties": {
"npa": {
"type": "string",
"pattern": "^[2-9]\\d{2}$",
"description": "3-digit NANP area code."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
},
"include_blocks": {
"type": "boolean",
"default": false,
"description": "Return all thousands-block rows instead of one row per NPA-NXX prefix."
}
}
}List paid downloadable TelcoData datasets visible to the authenticated user, including entitlement/access flags. Use when the user asks what bulk data files, CSVs, database dumps, or paid downloads their account can access.
| Argument | Type | Description |
|---|---|---|
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
{
"type": "object",
"properties": {
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
}
}
}List prefixes in a Local Access and Transport Area (LATA). Use for regional telecom market/routing questions such as all prefixes in a LATA. LATAs are telecom routing/market areas and do not necessarily match states, cities, or area codes. TelcoData fields commonly include npa, exchange/NXX, thousands, state, country, ratecenter, company, ocn, lata, switch CLLI, and tandem CLLI. A thousands value of -1 represents the whole prefix/default aggregate; 0-9 are individual thousand-number pooling blocks.
| Argument | Type | Description |
|---|---|---|
| lata* | string | 3- or 4-digit LATA number. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
{
"type": "object",
"required": [
"lata"
],
"properties": {
"lata": {
"type": "string",
"pattern": "^\\d{3,4}$",
"description": "3- or 4-digit LATA number."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
}
}
}List newly assigned TelcoData exchanges for a date range. Use for recent numbering activity, new prefix reports, and state-filtered change monitoring. Defaults to the last 30 days when dates are omitted; pass explicit YYYY-MM-DD dates when the user gives a period. Results are exchange-level additions, not live telephone-number assignment events.
| Argument | Type | Description |
|---|---|---|
| state | string | Optional 2-letter state/province/NANP country area code filter. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
| end_date | string | Inclusive end date in YYYY-MM-DD format. |
| start_date | string | Inclusive start date in YYYY-MM-DD format. |
{
"type": "object",
"properties": {
"state": {
"type": "string",
"pattern": "^[A-Z]{2}$",
"description": "Optional 2-letter state/province/NANP country area code filter."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
},
"end_date": {
"type": "string",
"format": "date",
"description": "Inclusive end date in YYYY-MM-DD format."
},
"start_date": {
"type": "string",
"format": "date",
"description": "Inclusive start date in YYYY-MM-DD format."
}
}
}List NPA-NXX prefixes assigned to an Operating Company Number (OCN). Use when the user asks where a carrier operates, what prefixes belong to a carrier, or wants to pivot from an OCN profile into numbering footprint. Combine with get_ocn_profile for carrier identity fields. TelcoData fields commonly include npa, exchange/NXX, thousands, state, country, ratecenter, company, ocn, lata, switch CLLI, and tandem CLLI. A thousands value of -1 represents the whole prefix/default aggregate; 0-9 are individual thousand-number pooling blocks.
| Argument | Type | Description |
|---|---|---|
| ocn* | string | 4-character alphanumeric Operating Company Number. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
{
"type": "object",
"required": [
"ocn"
],
"properties": {
"ocn": {
"type": "string",
"pattern": "^[A-Z0-9]{4}$",
"description": "4-character alphanumeric Operating Company Number."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
}
}
}List NANP area codes for a state, province, or supported NANP country/territory code. Use for quick geography-to-NPA mapping before deeper area-code or rate-center queries.
| Argument | Type | Description |
|---|---|---|
| state* | string | 2-letter state/province/NANP country area code used by TelcoData records. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
{
"type": "object",
"required": [
"state"
],
"properties": {
"state": {
"type": "string",
"pattern": "^[A-Z]{2}$",
"description": "2-letter state/province/NANP country area code used by TelcoData records."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
}
}
}List prefixes routed via a tandem switch CLLI. Use for routing and interconnection questions, or when the user has a tandem CLLI and wants all served prefixes. The input may be a 6- to 11-character CLLI prefix; broader prefixes can return more rows. TelcoData fields commonly include npa, exchange/NXX, thousands, state, country, ratecenter, company, ocn, lata, switch CLLI, and tandem CLLI. A thousands value of -1 represents the whole prefix/default aggregate; 0-9 are individual thousand-number pooling blocks.
| Argument | Type | Description |
|---|---|---|
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
| tandem_clli* | string | Tandem switch CLLI or CLLI prefix, 6 to 11 alphanumeric characters. |
{
"type": "object",
"required": [
"tandem_clli"
],
"properties": {
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
},
"tandem_clli": {
"type": "string",
"pattern": "^[A-Z0-9]{6,11}$",
"description": "Tandem switch CLLI or CLLI prefix, 6 to 11 alphanumeric characters."
}
}
}Look up CIC rows by 3-letter Access Customer Name Abbreviation (ACNA). Use when the user has an ACNA and wants associated carrier identification codes or carrier names.
| Argument | Type | Description |
|---|---|---|
| acna* | string | 3-letter ACNA carrier abbreviation. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
{
"type": "object",
"required": [
"acna"
],
"properties": {
"acna": {
"type": "string",
"pattern": "^[A-Z]{3}$",
"description": "3-letter ACNA carrier abbreviation."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
}
}
}Look up a 4-digit Carrier Identification Code (CIC/PIC) record. Use for questions about long-distance carrier selection codes, 1010 dialing, or mapping a CIC to carrier/ACNA data.
| Argument | Type | Description |
|---|---|---|
| cic* | string | 4-digit carrier identification code. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
{
"type": "object",
"required": [
"cic"
],
"properties": {
"cic": {
"type": "string",
"pattern": "^\\d{4}$",
"description": "4-digit carrier identification code."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
}
}
}Normalize a dialable telephone number to E.164 and identify country metadata. Prefer this whenever the user gives a full phone number. For NANP numbers, it returns the most specific TelcoData exchange or thousands-block record and shows whether the lookup used block detail or fallback. TelcoData fields commonly include npa, exchange/NXX, thousands, state, country, ratecenter, company, ocn, lata, switch CLLI, and tandem CLLI. A thousands value of -1 represents the whole prefix/default aggregate; 0-9 are individual thousand-number pooling blocks.
| Argument | Type | Description |
|---|---|---|
| tn* | string | Dialable phone number in national or international format. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
{
"type": "object",
"required": [
"tn"
],
"properties": {
"tn": {
"type": "string",
"description": "Dialable phone number in national or international format."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
}
}
}List carrier profiles sharing an FCC Registration Number (FRN). Use to group related OCNs, carrier names, and RMD records under a common FCC registration.
| Argument | Type | Description |
|---|---|---|
| frn* | string | FCC Registration Number. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
{
"type": "object",
"required": [
"frn"
],
"properties": {
"frn": {
"type": "string",
"pattern": "^[A-Za-z0-9._:-]{1,32}$",
"description": "FCC Registration Number."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
}
}
}List carrier profiles sharing an FCC Robocall Mitigation Database filing ID. Use to connect multiple OCNs or brands to the same RMD filing/contact when investigating carrier identity, voice providers, or robocall-mitigation relationships.
| Argument | Type | Description |
|---|---|---|
| rmd_id* | string | FCC RMD filing identifier. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
{
"type": "object",
"required": [
"rmd_id"
],
"properties": {
"rmd_id": {
"type": "string",
"pattern": "^[A-Za-z0-9._:-]{1,32}$",
"description": "FCC RMD filing identifier."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
}
}
}Search exchanges/prefixes for a rate center within a state, province, or NANP country code. Use for local-service geography questions such as 'prefixes in the Seattle rate center' or 'which exchanges are in Hamilton, BM'. Rate-center names are telecom rate-center labels, not always postal city names. Set include_blocks=true for pooling detail. TelcoData fields commonly include npa, exchange/NXX, thousands, state, country, ratecenter, company, ocn, lata, switch CLLI, and tandem CLLI. A thousands value of -1 represents the whole prefix/default aggregate; 0-9 are individual thousand-number pooling blocks.
| Argument | Type | Description |
|---|---|---|
| state* | string | 2-letter state/province/NANP country area code used by TelcoData records. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
| ratecenter* | string | Telecom rate-center name; case-insensitive input is accepted. |
| include_blocks | boolean | Return all thousands-block rows instead of one row per NPA-NXX prefix. |
{
"type": "object",
"required": [
"state",
"ratecenter"
],
"properties": {
"state": {
"type": "string",
"pattern": "^[A-Z]{2}$",
"description": "2-letter state/province/NANP country area code used by TelcoData records."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
},
"ratecenter": {
"type": "string",
"description": "Telecom rate-center name; case-insensitive input is accepted."
},
"include_blocks": {
"type": "boolean",
"default": false,
"description": "Return all thousands-block rows instead of one row per NPA-NXX prefix."
}
}
}Search TelcoData's tracked source-record changes in reverse chronological order. Use this for questions about when an NPA-NXX or thousands block changed carrier, OCN, CLLI/switch, assignment status, rate center, or another tracked field. Filters are combined, and omitting all filters returns the most recent changes. Initial baseline-load events are excluded. Multi-field record changes are returned together as structured old/new JSON values rather than one unrelated result per changed field. The clli filter matches switch-related changes and accepts a 6- to 11-character CLLI or prefix. Use field for a lowercase source field name, source for the tracked source name, and limit to cap results.
| Argument | Type | Description |
|---|---|---|
| npa | string | Optional 3-digit NANP area code filter. |
| nxx | string | Optional 3-digit central-office/exchange code filter. |
| ocn | string | Optional 4-character Operating Company Number filter. |
| clli | string | Optional 6- to 11-character CLLI or CLLI prefix used to find switch changes. |
| field | string | Optional lowercase tracked field name, such as company, ocn, switch, ratecenter, or type. |
| limit | integer | Maximum results; defaults to 100 and is capped by the API's configured maximum page size. |
| source | string | Optional tracked source name, not an archive filename. |
| api_key | string | TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key. |
| thousands | integer | Optional thousands-block filter: 0-9 for a pooled block or -1 for the whole-prefix/default record. |
{
"type": "object",
"properties": {
"npa": {
"type": "string",
"pattern": "^[2-9]\\d{2}$",
"description": "Optional 3-digit NANP area code filter."
},
"nxx": {
"type": "string",
"pattern": "^[2-9]\\d{2}$",
"description": "Optional 3-digit central-office/exchange code filter."
},
"ocn": {
"type": "string",
"pattern": "^[A-Z0-9]{4}$",
"description": "Optional 4-character Operating Company Number filter."
},
"clli": {
"type": "string",
"pattern": "^[A-Z0-9]{6,11}$",
"description": "Optional 6- to 11-character CLLI or CLLI prefix used to find switch changes."
},
"field": {
"type": "string",
"pattern": "^[a-z_]{1,64}$",
"description": "Optional lowercase tracked field name, such as company, ocn, switch, ratecenter, or type."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Maximum results; defaults to 100 and is capped by the API's configured maximum page size."
},
"source": {
"type": "string",
"maxLength": 128,
"minLength": 1,
"description": "Optional tracked source name, not an archive filename."
},
"api_key": {
"type": "string",
"description": "TelcoData API key. Optional if TELCODATA_MCP_API_KEY is set or the HTTP MCP request provides Authorization/X-API-Key."
},
"thousands": {
"type": "integer",
"maximum": 9,
"minimum": -1,
"description": "Optional thousands-block filter: 0-9 for a pooled block or -1 for the whole-prefix/default record."
}
}
}