estonian-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ESTNLTK_MCP_AUTH_TOKEN | No | Bearer token for authentication. Required for bearer mode if not in public mode. Must be at least 16 characters. | |
| ESTNLTK_MCP_PUBLIC_MODE | No | Set to '1' to enable public mode (no bearer token required). Default mode is bearer. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| tokenizeA | Split Estonian text into sentences and words. Returns a dict with |
| analyze_morphologyA | Run full morphological analysis on Estonian text. For each word returns lemma(s), part-of-speech, grammatical form, root,
ending, clitic, compound parts, ambiguity info, and a usage note
flagging archaic / foreign / abbreviation / interjection / proper-noun
cases. By default returns the first (most likely) analysis per word;
set Each word's response includes:
Input is capped at 100,000 characters. |
| paradigmA | Generate the full inflection paradigm for an Estonian word. For nominals (nouns, adjectives, pronouns, numerals): produces all 14
cases × 2 numbers = up to 28 forms. For verbs: produces infinitives,
present/past/conditional indicative, imperative, and participles
(~30 forms). Other parts of speech (adverbs, conjunctions,
particles) don't inflect — Each form entry has the Vabamorf form code (e.g. Phase-1 scope: covers the most commonly-needed forms per word class, not every theoretical form Vabamorf can produce. Single-word input, capped at 200 characters. |
| lemmatizeA | Return lemma (dictionary form) for each word in the text. Concise output: |
| pos_tagA | Return part-of-speech tag for each word. POS tag set: S=noun, V=verb, A=adj, P=pron, D=adv, K=adp, J=conj, N=numeral, I=interj, Y=abbrev, X=foreign, Z=punct, etc. Input is capped at 100,000 characters. |
| spell_checkA | Check Estonian spelling for each word and optionally return suggestions. Returns one entry per word with CAVEAT: Vabamorf accepts ANY morphologically well-formed word,
including compounds you just invented (e.g. |
| syllabifyA | Split a single Estonian word into syllables with quantity and accent. Each syllable entry: |
| named_entitiesA | Extract named entities (PER/LOC/ORG) using EstNLTK's CRF model. Returns |
| find_related_wordsA | Find Estonian words semantically similar to the input via fastText. Returns the top-n nearest neighbours by cosine similarity over a pre-trained Estonian fastText model (Common Crawl + Wikipedia, 2018). Useful for breaking repetition, finding alternative phrasings, or expanding vocabulary when WordNet's exact-meaning synonyms aren't enough. Distinct from Known quirks of the embedding model:
Single-word input only, capped at 200 characters. |
| synonymsA | Look up Estonian synonyms via WordNet. Returns synsets (groups of synonymous lemmas) for the input word, each with its definition and example usages. Useful when you want Claude to pick a different word with the same meaning, e.g. swap an over-used verb in marketing copy. Word-sense ambiguity is preserved: a polysemous word returns multiple synsets, one per meaning. Input capped at 200 characters. |
| check_compoundsA | Heuristic Estonian compound-word check (liitsõnaõigekiri). Scans for common AI-generated splits of words that should be written
as a single compound — Phase-1 limitations: only catches the bigrams in the lexicon. Estonian compounding is highly productive and most valid compounds aren't enumerated here. Treat hits as high-confidence; absence of hits does not prove the compound writing is correct everywhere. Input capped at 100,000 characters. |
| check_punctuationA | Heuristic Estonian punctuation check — comma-before-clause rule. Flags missing commas before subordinating conjunctions where Estonian rules require one: et (that/in order to), kuna (because), sest (because), kuigi (although), kuid (but), vaid (rather), nagu (like), mistõttu (because of which), millepärast, kuhu. Phase-1 limitations: only the comma-before-clause-conjunction rule
is covered. |
| check_hyphenationA | Return safe line-break positions for an Estonian word (poolitamine). Different from Phase-1 limitation: pure syllable-boundary based. Compound-boundary
preference (Estonian poolitamine prefers |
| check_numbersA | Heuristic Estonian number-writing check. Flags two clear-cut cases per EKI Reeglid:
Phase-1 limitations: spell-out-vs-digits guidance (the one-to-ten-spelled-out convention) is intentionally not implemented — it requires distinguishing measurements, dates, years, and lists from running prose, and naive flagging produces too many false positives. Input capped at 100,000 characters. |
| check_capitalizationA | Heuristic Estonian capitalization checker (Algustäheortograafia). Scans Estonian text for the most common AI-generated capitalization errors per EKI's Reeglid:
Sentence-initial capitalization is always allowed. All-caps
acronyms are ignored. Returns each issue with rule code, an
Estonian rule label ( PHASE-1 LIMITATION: this is a lexicon-based heuristic, not a full EÕS implementation. Compound-word capitalization, punctuation rules, and hyphenation are NOT covered by this tool (separate check_compounds / check_punctuation / check_hyphenation tools may follow). |
| check_compound_familiarityA | fastText-based diagnostic for compound-noun familiarity in Estonian. For each compound noun (root_tokens length >= 2), returns its top
fastText neighbours, a Output is diagnostic, not authoritative. Even with the 100K-vocab
medium model, some legitimate but rare compounds (e.g.
Input capped at 100,000 characters. |
| check_abbreviation_hyphenationA | Heuristic check for the EKI Reeglid rule that case endings on Latin-letter / all-caps abbreviations are separated by a hyphen. Catches the common AI mistake of writing Phase-1 scope: matches what Vabamorf tags as |
| check_object_caseA | Heuristic Estonian object-case-government check. Catches the single biggest class of confidently-wrong Estonian that AI agents produce: direct objects in the wrong case after negation or after partitive-governing verbs. Two rules in phase 1:
Phase-1 limitation: no syntactic parser, so we can't perfectly distinguish subject from object. Subjects in negation/partitive-verb sentences may be flagged as false positives. Treat hits as "worth a second look", not authoritative. Proper nouns are skipped. Input capped at 100,000 characters. |
| check_redundancyA | Heuristic Estonian pleonasm / semantic-doubling check. Flags phrasing that is grammatically valid but reads redundant to a native speaker — the class of error AI agents produce when they stack synonyms. Phase-1 rules, all high-precision:
Conservative by design — it catches the obvious, high-confidence cases, not every redundancy. Absence of flags is not proof the prose is tight. Input capped at 100,000 characters. |
| check_styleA | Heuristic Estonian style metrics for newsletter / ad / email copy. Returns four metrics that flag common writing issues, each with an Estonian-language summary line for quoting verbatim:
Phase-1 limitation: heuristic only. No detection of cliché phrases, weasel-words beyond the curated 15 lemmas, or genre-specific style drift. Input capped at 100,000 characters. |
| classify_registerA | Heuristic register classifier for Estonian (formal vs colloquial). Returns a tier label (English in PHASE-1 LIMITATION: this is a coarse lexicon-based heuristic, not a trained model. Real register also lives in sentence structure, address forms, and passive voice — none of which this catches. Most newsletter prose scores 'neutral'. Use the result as a directional hint, not a verdict. Input capped at 100,000 characters. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/silly-geese/estonian-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server