numertel

MCP serverSecurity

Numertel lets your AI look up Polish phone numbers and tell you who called. It checks numbers against spam and scam reports, the UKE DNO registry of unwanted numbers, and CERT phishing statistics. Add it and you can vet any Polish number before calling back or replying.

Use numertel in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add numertel and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use numertel to check phone number

Details

Available today. Use it from your connected AI after setup.

Add the integration, then paste a Polish phone number into the chat and ask your AI who called and whether it is safe. Use it to screen unknown callers before you call back.

numertelStart free

What your AI can do with it

  • Identify who called a Polish phone number
  • Check whether a number is reported as spam
  • Check whether a number is flagged as a scam
  • Look up numbers in the UKE DNO registry of unwanted callers
  • See CERT phishing statistics for a number

Install numertel

The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.

  • Claude Code

    claude mcp add --transport http --scope user numertel 'https://numertel.pl/api/mcp'

    Run it once in your project, then open /mcp to approve any sign-in the server asks for.

  • Claude Desktop

    https://numertel.pl/api/mcp

    Add a custom connector in Settings, paste this address, and approve the sign-in.

  • Cursor

    cursor://anysphere.cursor-deeplink/mcp/install?name=numertel&config=eyJ1cmwiOiJodHRwczovL251bWVydGVsLnBsL2FwaS9tY3AifQ==

    Open the link and Cursor adds the server at that address.

  • ChatGPT

    https://numertel.pl/api/mcp

    In Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.

  • Codex

    codex mcp add numertel --url 'https://numertel.pl/api/mcp'

    Run it once, then sign in with codex mcp login numertel if the server asks for an account.

From the project's README

As published by amr-dev-ps/numertel-mcp in README.md.

English · Polski

NumerTel MCP Server

Check Polish phone numbers from any AI assistant: who called, is it spam or a scam, is this really a bank's number — plus live phone-abuse stats for Poland.

Backed by NumerTel.pl: 130M numbers built on official UKE numbering ranges, user reports, the state DNO registry and CERT Polska's public Warning List.

Remote server (recommended)

One endpoint, zero install:

https://numertel.pl/api/mcp

Generic config that works in most MCP clients:

{
  "mcpServers": {
    "numertel": {
      "type": "http",
      "url": "https://numertel.pl/api/mcp"
    }
  }
}
claude mcp add --transport http numertel https://numertel.pl/api/mcp

Use the install button above, or add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "numertel": { "url": "https://numertel.pl/api/mcp" }
  }
}

Use the install button above, or add to mcp.json:

{
  "servers": {
    "numertel": { "type": "http", "url": "https://numertel.pl/api/mcp" }
  }
}
{
  "mcpServers": {
    "numertel": {
      "command": "npx",
      "args": ["mcp-remote", "https://numertel.pl/api/mcp"]
    }
  }
}

Transport: streamable HTTP (JSON-RPC 2.0). Limit: 30 requests/day/IP.

Try asking your assistant

  • "Who called me from 500 100 200?"
  • "Is +48 22 598 40 44 really my bank, or a scam?"
  • "How bad is phone phishing in Poland today?"

Tools

  • check_phone_number — full reputation card for a Polish number: operator (original UKE range, MNP note), risk label from user reports, UKE DNO registry status (an incoming call from a DNO number is spoofed by definition), verified official-hotline whitelist, report counts. Inputs: number (string, 9 digits). Read-only, structured output.
  • spam_weather — phone-abuse indicators for Poland: new scam domains on CERT Polska's Warning List (today + daily series), DNO registry size and the latest numbers from official warnings. Inputs: days (1-30, default 7). Read-only, structured output, open data (CC-BY).
  • check_scam_domain — analyzes a whole pasted suspicious message on two axes: (1) domains, links and email addresses against CERT Polska's official Warning List (a mirror of ~129k scam domains), and (2) Polish phone numbers found in the text against the NumerTel base (UKE DNO registry = spoofing, verified official-hotline whitelist, spam reports). Accepts a single domain/URL/email/number or a full message (extracts evil[.]pl / hxxp:// / +48); suffix match, so login.evil.pl hits evil.pl. Deterministic verdict with the listing date, zero LLM. Read-only, structured output.
  • find_official_number — the real, official number of a Polish bank, office or operator. Given an institution name (e.g. ZUS, mBank, NFZ), returns its verified numbers from the whitelist with source link and verification date. Inputs: institution (string). Read-only, structured output.
  • recent_scam_domains — the latest phishing domains from CERT Polska's official Warning List, defanged (evil[.]pl, never clickable). Inputs: limit (1-50, default 15). Read-only, open data (CC-BY).
  • search — a Polish phone number OR an institution name (returns verified official hotlines from the whitelist). ChatGPT deep-research compatible.
  • fetch — full card by id from search results.

Prompts

Ready-made actions that appear in Claude's "+" menu under the NumerTel brand: sprawdz_numer (full number analysis with fresh embedded data), przeanalizuj_sms (scam analysis of a pasted SMS — runs on the client's model), pogoda_spamowa_dzis (today's phone-abuse report for Poland).

Also works in

  • ChatGPT (Plus/Pro, incl. Poland): Settings -> Apps & Connectors -> Advanced -> Developer mode -> Create connector -> paste https://numertel.pl/api/mcp (No authentication).
  • Gemini CLI: {"mcpServers":{"numertel":{"httpUrl":"https://numertel.pl/api/mcp"}}}
  • Microsoft Copilot Studio: Tools -> Add Tool -> MCP -> paste the URL.

Higher limits: API key via Authorization: Bearer header (kontakt@numertel.pl).

Example response (shortened):

{
  "number": "225984044",
  "operator": "Strefa Warszawa",
  "spam_label": "dno_spoofing",
  "is_dno": true,
  "dno_note": "Numer służy wyłącznie do odbierania połączeń (wykaz DNO UKE)...",
  "url": "https://numertel.pl/numer/225984044"
}

Local stdio server (single file, zero dependencies)

For clients that only support stdio. Requires Node 18+. Download numertel-mcp.mjs (also in this repo):

{
  "mcpServers": {
    "numertel": {
      "command": "node",
      "args": ["/path/to/numertel-mcp.mjs"],
      "env": { "NUMERTEL_API_KEY": "(optional, for higher limits)" }
    }
  }
}

REST API

The same data over plain REST — see the developer docs (Polish): GET https://numertel.pl/api/v1/check/{number} (20 req/day/IP without a key) and GET https://numertel.pl/api/v1/spam-weather (no limit, CC-BY). Higher limits / API keys: kontakt@numertel.pl

Troubleshooting

  • Client doesn't support remote MCP servers — use the mcp-remote bridge (see Claude Desktop above) or the local stdio file.
  • HTTP 429 — the free daily limit was reached; try tomorrow or ask for a key.
  • "Numer spoza znanych zakresów" (404) — the number is outside Polish numbering ranges; pass 9 digits in national format.

Privacy

The server is read-only and returns only data already public on numertel.pl number pages — never opinion contents, never personal data. Queries are not logged beyond anonymous daily rate-limit counters. Attribution "dane: numertel.pl" with a link is required when presenting results publicly; aggregate datasets are CC-BY 4.0.

License

MIT (this client and manifest). The NumerTel.pl service itself is a separate, proprietary product.


NumerTel MCP Server (po polsku)

Sprawdzaj polskie numery telefonów z poziomu dowolnego asystenta AI: kto dzwonił, czy to spam lub oszustwo, czy numer naprawdę należy do banku. Do tego bieżące wskaźniki nadużyć telefonicznych w Polsce.

Za serwerem stoi NumerTel.pl: 130 mln numerów na bazie oficjalnych zakresów UKE, opinie użytkowników, państwowy wykaz DNO i jawna Lista Ostrzeżeń CERT Polska.

Serwer zdalny (zalecany)

Jeden adres, zero instalacji:

https://numertel.pl/api/mcp

Konfiguracja działająca w większości klientów MCP:

{
  "mcpServers": {
    "numertel": {
      "type": "http",
      "url": "https://numertel.pl/api/mcp"
    }
  }
}

W Claude Code wystarczy: claude mcp add --transport http numertel https://numertel.pl/api/mcp. Przyciski szybkiej instalacji dla Cursor i VS Code znajdziesz na górze strony. Transport: streamable HTTP (JSON-RPC 2.0). Limit: 30 zapytań dziennie na adres IP.

Zapytaj asystenta

  • „Kto dzwonił z numeru 500 100 200?"
  • „Czy 22 598 40 44 to prawdziwy numer banku, czy oszustwo?"
  • „Jaka jest dziś skala phishingu w Polsce?"

Narzędzia

  • check_phone_number zwraca operatora (pierwotny zakres UKE z notą o przenośności), etykietę ryzyka z opinii, status w wykazie DNO UKE (połączenie przychodzące z numeru DNO jest z definicji sfałszowane), wpis z Białej Listy oficjalnych infolinii i liczniki zgłoszeń. Wejście: number (string, 9 cyfr, +48 i spacje są usuwane). Tylko odczyt.
  • spam_weather zwraca bieżące wskaźniki nadużyć w Polsce: nowe domeny oszustów na Liście Ostrzeżeń CERT (dziś / 7 / 30 dni) i rozmiar wykazu DNO. Bez parametrów. Tylko odczyt, dane otwarte (CC-BY).
  • find_official_number zwraca prawdziwy oficjalny numer banku, urzędu lub operatora. Po nazwie instytucji (np. ZUS, mBank, NFZ) zwraca zweryfikowane numery z Białej Listy ze źródłem i datą weryfikacji. Wejście: institution. Tylko odczyt.
  • recent_scam_domains zwraca najnowsze domeny phishingowe z Listy Ostrzeżeń CERT Polska, w zapisie defanged (evil[.]pl). Wejście: limit (1-50, domyślnie 15). Tylko odczyt, dane otwarte (CC-BY).

Wariant lokalny (stdio, jeden plik)

Dla klientów obsługujących wyłącznie stdio. Wymaga Node 18+. Pobierz numertel-mcp.mjs (plik jest też w tym repo):

{
  "mcpServers": {
    "numertel": {
      "command": "node",
      "args": ["/sciezka/do/numertel-mcp.mjs"],
      "env": { "NUMERTEL_API_KEY": "(opcjonalnie, wyzszy limit)" }
    }
  }
}

REST API

Te same dane przez zwykły REST, dokumentacja: numertel.pl/dla-deweloperow. GET https://numertel.pl/api/v1/check/{numer} (20 zapytań/dzień/IP bez klucza) oraz GET https://numertel.pl/api/v1/spam-weather (bez limitu, CC-BY). Wyższe limity i klucze API: kontakt@numertel.pl

Rozwiązywanie problemów

  • Klient nie wspiera zdalnych serwerów MCP: użyj mostka mcp-remote (sekcja Claude Desktop wyżej) albo pliku stdio.
  • HTTP 429: wyczerpany dzienny limit darmowy, spróbuj jutro lub napisz po klucz.
  • „Numer spoza znanych zakresów" (404): numer jest spoza polskiej numeracji, podaj 9 cyfr w formacie krajowym.

Prywatność

Serwer działa tylko w trybie odczytu i zwraca wyłącznie dane publicznie widoczne na stronach numerów w numertel.pl. Nigdy treści opinii, nigdy danych osobowych. Zapytania nie są logowane poza anonimowymi licznikami limitów. Przy publicznej prezentacji wyników wymagana jest atrybucja „dane: numertel.pl" z linkiem.

Licencja

MIT (ten klient i manifest). Sam serwis NumerTel.pl jest osobnym, zamkniętym produktem.

Tools it offers (7)

What this server listed when Ahel dialed its public endpoint in Sep 2026, with no key and no account of yours. The names are the server’s own.

  • check_phone_number
  • spam_weather
  • check_scam_domain
  • find_official_number
  • recent_scam_domains
  • search
  • fetch

Signals

GitHub stars
1
Last commit
Jun 2026
Advanced
Delivery
numertel MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
Item type
mcp-server
Key
pl-numertel-numertel
Source
github.com/amr-dev-ps/numertel-mcp
Hosted endpoint
https://numertel.pl/api/mcp