anonymize-mcp
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
MCP server obalující NLP nástroje LINDAT / ÚFAL MFF UK — **multilingvální NER + morfologie (35 jazyků auto-detect)**, **production-grade anonymizace s 80+ PII patterny napříč 9 sektory + mezinárodním pokrytím (US/UK/DE/FR/IT/ES/PL/RU/IN, EU VAT 28 zemí, IBAN 30+ zemí, crypto, API tokeny)**, překlad mezi 8 jazyky (17 přímých párů + auto EN-pivot), čitelnost a korektura.
> 🔒 **Nově (v0.10.0): zero-egress lokální mód** — plně offline anonymizace, žádný text neopustí stroj. Pro GDPR / právní / zdravotnická data. Zapnutí: ANONYMIZE_MCP_LOCAL=1.
> 🌐 **Nechcete nic instalovat? Vyzkoušejte to online zdarma → anonymizace.js.org** — anonymizace, NER, morfologie, korektor a překlad češtiny přímo v prohlížeči. Doprovodný web k tomuto MCP serveru.
> **Pouze pro nekomerční použití.** Modely NameTag a UDPipe jsou pod CC BY-NC-SA. LINDAT API je bezplatné pro akademické a osobní použití. Pro komerční nasazení kontaktujte autory nástrojů a ufal@ufal.mff.cuni.cz.
> **Neoficiální komunitní projekt** — není provozován ani schválen ÚFAL MFF UK; wrapper kolem veřejných LINDAT API od nezávislého vývojáře. Historie názvů: ufal-mcp → wrapper-mcp (v0.8.0, na žádost ÚFAL) → **anonymize-mcp** (v0.9.0). Pokud máte nainstalovaný deprecated balíček wrapper-mcp, přejděte na pip install anonymize-mcp — je to tentýž projekt.
Co umí
| Tool | Backend | K čemu |
|------|---------|--------|
| extract_entities | NameTag 3 | NER pro **CZ** (bohatý CNEC 2.0 tagset) + **34 dalších jazyků** (UNER PER/ORG/LOC) s auto-detekcí |
| anonymize | MasKIT + NameTag | **Production-grade pseudonymizace**: regex pre-pass přes **80+ PII patternů** — CZ + international (IBAN 30+ zemí, EU VAT 28, US SSN/EIN, DE/UK/FR/IT/ES/PL/RU/IN ID, crypto, API tokeny). Opt-in placeholder_mode (deterministické OSOBA1/MESTO1). **🔒 Zero-egress lokální mód** (ANONYMIZE_MCP_LOCAL=1) — plně offline, viz níže. |
| analyze_morphology | UDPipe | Tokenizace, lemmatizace, POS tagging, závislostní parse — **auto-detect 35 jazyků** |
| check_readability | PONK | Čitelnost CZ — 4 feature sety: metrics + rules + lexical surprise + speech acts |
| correct_text | Korektor | CZ spell checker + auto-doplnění/odstranění diakritiky |
| translate_text | Charles Translator | Překlad mezi 8 jazyky (CZ/EN/FR/DE/PL/RU/UK/HI), 17 přímých párů + auto EN-pivot |
Podporované jazyky — NER + morfologie (35 jazyků, auto-detect)
- 🇨🇿 CZ · 🇸🇰 SK · 🇬🇧 EN · 🇩🇪 DE · 🇫🇷 FR · 🇮🇹 IT · 🇪🇸 ES · 🇵🇹 PT · 🇳🇱 NL
- 🇵🇱 PL · 🇭🇺 HU · 🇷🇴 RO · 🇸🇮 SL · 🇧🇬 BG · 🇬🇷 EL · 🇭🇷 HR · 🇷🇸 SR · 🇺🇦 UK · 🇷🇺 RU
- 🇫🇮 FI · 🇱🇹 LT · 🇱🇻 LV · 🇪🇪 ET · 🇩🇰 DA · 🇸🇪 SV · 🇳🇴 NO (Bokmål + Nynorsk)
- 🇨🇳 ZH · 🇦🇪 AR · 🇹🇷 TR · 🇻🇳 VI · 🇮🇳 HI · 🇮🇱 HE · 🇯🇵 JA · 🇰🇷 KO · 🇹🇭 TH
Pro koho je tohle (sektory + use cases)
Stress-tested napříč 9 sektory na **12.7KB cross-sektorovém spisu** — výsledek **94/94 unique PII chyceno** v jednom volání. Plus **international corpus 17/17** (US/UK/DE/FR/IT/ES/PL/RU/IN + crypto + akademické + fleet):
| Sektor | Use case | PII které MCP zvládne |
|---|---|---|
| ⚖️ **Právo** | Anonymizace spisu před AI review, GDPR compliance | Jména, RČ, adresy, č.j., sp.zn., IBAN, OP, datovky |
| 🏥 **Medicína** | Propouštěcí zprávy pro výzkum, statistika hospitalizací | RČ, IČZ, č. pojištěnce, kontakty lékaře — klinické kódy MKN-10 zachované |
| 🎓 **Věda / akademie** | Peer review, citace v publikaci | ORCID, Researcher ID, e-maily kolegů, granty |
| 💳 **Bankovnictví** | Compliance, výpisy do AI, vykazování | Č.ú., karta, IBAN, VS/KS/SS, header výpisu |
| 🏠 **Reality / katastr** | Anonymizace výpisů z KN, smluv | LV, parcely, k.ú., vlastník + RČ + adresa |
| 🚗 **Pojišťovny** | Likvidace škod, AI analýza | VIN, SPZ, č. pojistky, TP, OP, RČ pojištěného |
| 📜 **Notáři** | Notářské zápisy pro AI summary | NZ, OP, datovka notáře, sp. zn. |