# Unicode Inspector > Every code point with name, script and bytes, plus hidden characters and look-alikes. Breaks text into code points with U+ value, name, general category, script and UTF-8/UTF-16 encoding; counts graphemes; compares NFC/NFD/NFKC/NFKD forms; and flags zero-width and invisible characters, bidirectional controls (Trojan Source) and mixed-script look-alike words used in phishing. Part of usefulweb.site (https://usefulweb.site/). Results are deterministic calculations from the inputs and the listed assumptions; the API returns exactly what the web page shows. ## Use it - Human interface: https://unicodeinspector.usefulweb.site/ (interactive tool at https://unicodeinspector.usefulweb.site/tool) - JSON API: POST https://unicodeinspector.usefulweb.site/api/v1/calculate with a JSON object of inputs (schema: https://unicodeinspector.usefulweb.site/api/v1/tool) - OpenAPI: https://unicodeinspector.usefulweb.site/openapi.json - MCP (Streamable HTTP): https://unicodeinspector.usefulweb.site/mcp - tool `unicode_inspector` ## Inputs - text (textarea, required): Text - Up to 20,000 characters; the table lists the first 500 code points. ## Method - The text is split into Unicode code points. General category and script come from the JavaScript regular-expression Unicode property tables of the server (\p{gc=…}, \p{Script=…}), which follow the Unicode version of its ICU build. - Names: the complete Unicode name list is about 2 MB, so a compact built-in table covers ASCII, Latin-1, basic Greek and Cyrillic, all invisible/format/space characters, common punctuation and variation selectors; CJK ideographs, Hangul syllables, fullwidth forms and tag characters are named algorithmically. Other characters show no name. - Grapheme clusters (user-perceived characters) are counted with Intl.Segmenter. Normalization forms come from String.prototype.normalize. - Invisible: zero-width characters, format characters (Cf), fillers, variation selectors and tag characters. Bidi controls (U+202A–202E, U+2066–2069) can make source code display differently from how it compiles (CVE-2021-42574, "Trojan Source"). - Look-alikes: words mixing scripts (e.g. Latin + Cyrillic) and characters from a curated subset of Unicode confusables.txt are flagged; the skeleton maps them to Latin for comparison. This is a subset, not the full UTS #39 algorithm.