One MCP endpoint over every Valksor dictionary: namespaced tools plus a JSON passthrough.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
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.
Find the real Old English word(s) whose ASCII spelling matches this input — the inverse of `anglo_romanize`. romanize is deeply lossy (th←þ or ð, dropped macrons), so this is a LOOKUP against words already cached: attested spellings come back as source=dictionary. If none match, a single best-effort reconstruction (source=reconstruction, approximate=true) — a guess, not attested. Coverage grows as words are cached.
ASCII-spelled Old English text to resolve back to real orthography. Returns the attested dictionary spelling(s) whose romanization matches (source=dictionary, exact) — several may match one ambiguous key. On a miss, a single best-effort reconstruction (source=reconstruction, approximate=true), a guess: Old English romanization is deeply lossy (th←þ or ð, dropped macrons/dots), so the dictionary hit is the reliable answer.
Find the real Old English word(s) whose ASCII spelling matches this input — the inverse of `anglo_romanize`. romanize is deeply lossy (th←þ or ð, dropped macrons), so this is a LOOKUP against words already cached: attested spellings come back as source=dictionary. If none match, a single best-effort reconstruction (source=reconstruction, approximate=true) — a guess, not attested. Coverage grows as words are cached.
| Argument | Type | Description |
|---|---|---|
| text* | string | ASCII-spelled Old English text to resolve back to real orthography. Returns the attested dictionary spelling(s) whose romanization matches (source=dictionary, exact) — several may match one ambiguous key. On a miss, a single best-effort reconstruction (source=reconstruction, approximate=true), a guess: Old English romanization is deeply lossy (th←þ or ð, dropped macrons/dots), so the dictionary hit is the reliable answer. |
{
"type": "object",
"title": "anglo_deromanizeArguments",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"title": "Text",
"maxLength": 4000,
"minLength": 1,
"description": "ASCII-spelled Old English text to resolve back to real orthography. Returns the attested dictionary spelling(s) whose romanization matches (source=dictionary, exact) — several may match one ambiguous key. On a miss, a single best-effort reconstruction (source=reconstruction, approximate=true), a guess: Old English romanization is deeply lossy (th←þ or ð, dropped macrons/dots), so the dictionary hit is the reliable answer."
}
}
}Fetch the full declension (nominals, including the pronouns' dual) or conjugation (verbs) table for a lemma identified by a search result's inflection handle (entry_id + word_class). Use this only when a search ran without inline forms or left a match un-expanded — a default search already returns each match's table inline. Returns Markdown plus the table as structuredContent with the shape {"result": <paradigm>} per the declared outputSchema — switch on result.category ('nominal' | 'verbal' | 'not_found') before reading the body. Content from en.wiktionary.org (CC BY-SA 4.0).
| Argument | Type | Description |
|---|---|---|
| entry_id* | string | The Wiktionary page title (the lemma) from a search result's inflection handle, e.g. 'cyning', 'bindan'. |
| word_class* | string | The part-of-speech section from a search result's inflection handle, e.g. 'verb', 'noun', 'adjective', 'pronoun'. |
{
"type": "object",
"title": "anglo_get_inflectionsArguments",
"required": [
"entry_id",
"word_class"
],
"properties": {
"entry_id": {
"type": "string",
"title": "Entry Id",
"pattern": "^[A-Za-zĀāĒēĪīŌōŪūȲȳǢǣĠġĊċÆæÞþÐðǷƿŒœ][A-Za-zĀāĒēĪīŌōŪūȲȳǢǣĠġĊċÆæÞþÐðǷƿŒœ\\-']{0,79}$",
"maxLength": 80,
"minLength": 1,
"description": "The Wiktionary page title (the lemma) from a search result's inflection handle, e.g. 'cyning', 'bindan'."
},
"word_class": {
"enum": [
"abbreviation",
"acronym",
"adjective",
"adverb",
"affix",
"article",
"character",
"circumfix",
"classifier",
"combining form",
"conjunction",
"contraction",
"counter",
"determiner",
"diacritical mark",
"idiom",
"infix",
"initialism",
"interfix",
"interjection",
"letter",
"ligature",
"noun",
"number",
"numeral",
"participle",
"particle",
"phrase",
"postposition",
"prefix",
"preposition",
"prepositional phrase",
"pronoun",
"proper noun",
"proverb",
"punctuation mark",
"romanization",
"root",
"suffix",
"symbol",
"verb"
],
"type": "string",
"title": "Word Class",
"description": "The part-of-speech section from a search result's inflection handle, e.g. 'verb', 'noun', 'adjective', 'pronoun'."
}
}
}Reduce Old English orthography to its primary ASCII spelling (þing→thing, wæter→waeter; macrons and the dotted ġ/ċ dropped) for an ASCII-keyboard downstream. Pure local transform: no dictionary lookup, no network, always ASCII.
| Argument | Type | Description |
|---|---|---|
| text* | string | Old English text to reduce to its primary ASCII spelling. Drops macrons and the dotted ġ/ċ, and folds the special letters (þ/ð→th, æ→ae, ƿ→w, œ→oe): þing→thing, wæter→waeter. For an ASCII-keyboard downstream. Pass a word, phrase, or several lines. |
{
"type": "object",
"title": "anglo_romanizeArguments",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"title": "Text",
"maxLength": 4000,
"minLength": 1,
"description": "Old English text to reduce to its primary ASCII spelling. Drops macrons and the dotted ġ/ċ, and folds the special letters (þ/ð→th, æ→ae, ƿ→w, œ→oe): þing→thing, wæter→waeter. For an ASCII-keyboard downstream. Pass a word, phrase, or several lines."
}
}
}Look an Old English word up on Wiktionary and return its senses plus full declension/conjugation tables — attested content, not invented. Any form of the word works; an inflected query is resolved to its lemma automatically via previously cached paradigms and the result notes the resolution. With search_language='eng' the query is a modern English word instead: the result lists its per-sense Old English equivalents (the translations block) plus their expanded entries. Returns Markdown plus the same result as structuredContent matching the declared outputSchema. Results are cached server-side; first-time queries reach the live upstream politely and calls are rate limited — on a rate-limit error, wait a few seconds and retry. Content is from en.wiktionary.org (CC BY-SA 4.0 — attribute and share alike if republished).
| Argument | Type | Description |
|---|---|---|
| query* | string | The word to look up, in the language search_language names. Old English (default): a SINGLE Old English word, any form — an inflected form ('bindaþ') is resolved to its lemma ('bindan') automatically via cached paradigms, and the result says so; the special letters are optional once a paradigm is cached ('thing' finds þing, 'waeter' finds wæter). English (search_language='eng'): the English word whose Old English equivalents you want — multiword entries like 'apple tree' work. |
| max_forms | any | Optional override for how many inflection tables to expand this call (0–12). On an uncached query each table is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default. |
| include_forms | boolean | When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses (nouns, the adjectives' strong/weak family, the verbs' moods, the pronouns' dual) in ONE call, no follow-up anglo_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded Old English entries; the per-sense translations list itself is always returned. |
Index of every Valksor dictionary reachable through this hub and its CURRENT tool and prompt names (each named <language>_<verb>). Call this to discover or re-check names — e.g. after an 'unknown tool'/'unknown prompt' error. The optional `language` argument narrows the result to one dictionary by its id (the prefix before the first underscore). Each entry's `host` is that dictionary's public site, for reference only — you still reach its tools through this hub by their listed names, not via that host.
| Argument | Type | Description |
|---|---|---|
| language | string | Restrict the index to one dictionary by its id. |
{
"type": "object",
"properties": {
"language": {
"enum": [
"livonian",
"latin",
"slavonic",
"scythian",
"norse",
"latgalian",
"anglo",
"interslavic"
],
"type": "string",
"description": "Restrict the index to one dictionary by its id."
}
},
"additionalProperties": false
}Fetch the full declension (noun/adjective) or conjugation (verb) table for a word identified by a search result's inflection handle (entry_id + word_class). Use this only when a search ran without inline forms or left a match un-expanded — a default search already returns each match's table inline. Returns Markdown plus the table as structuredContent with the shape {"result": <paradigm>} — switch on result.category ('noun' | 'adjective' | 'verb' | 'not_found') before reading the body. Tables are generated by the official Interslavic morphology engine, not attested.
| Argument | Type | Description |
|---|---|---|
| entry_id* | string | The dictionary word id from a search result's inflection handle (a number, e.g. '33555') — NOT the headword itself (Interslavic homographs share a spelling). |
| word_class* | string | The paradigm class from a search result's inflection handle: 'noun', 'adjective' or 'verb'. |
{
"type": "object",
"title": "interslavic_get_inflectionsArguments",
"required": [
"entry_id",
"word_class"
],
"properties": {
"entry_id": {
"type": "string",
"title": "Entry Id",
"pattern": "^[0-9]{1,24}$",
"description": "The dictionary word id from a search result's inflection handle (a number, e.g. '33555') — NOT the headword itself (Interslavic homographs share a spelling)."
},
"word_class": {
"enum": [
"adjective",
"noun",
"verb"
],
"type": "string",
"title": "Word Class",
"description": "The paradigm class from a search result's inflection handle: 'noun', 'adjective' or 'verb'."
}
}
}Look an Interslavic word up in the bundled community dictionary and return its translation matrix (English + 11 Slavic languages) plus its full, algorithmically-generated declension/conjugation table. Any form and either script works; an inflected query resolves to its headword and the result notes it. With search_language='eng' the query is an English word: the result lists its Interslavic equivalents plus their expanded entries. Returns Markdown plus the same result as structuredContent matching the declared outputSchema. Fully offline (bundled snapshot); calls are rate limited per client IP. Content: the Interslavic dictionary (van Steenbergen et al.); reuse licence unconfirmed — attribute the source.
| Argument | Type | Description |
|---|---|---|
| query* | string | The word to look up, in the language search_language names. Interslavic (default): a SINGLE Interslavic word, any form and either script — an inflected form ('brata') resolves to its headword ('brat') via the reverse form index, Latin and Cyrillic both work for headwords, and diacritics are optional ('delati' finds 'dělati'). English (search_language='eng'): the English word whose Interslavic equivalents you want. |
| max_forms | any | Optional override for how many inflection tables to expand this call (0–12). Tables are served from the bundled dataset (no network), so this is cheap. Omit for the server default. |
| include_forms | boolean | When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses in ONE call, no follow-up interslavic_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. Pronouns, numerals and indeclinables carry no table. For eng queries this governs the expanded Interslavic entries. |
Transliterate ONE Interslavic word between Latin and Cyrillic. This is bidirectional: it auto-detects the input's script and returns the attested spelling in the OTHER script — Latin input yields Cyrillic, Cyrillic input yields Latin (or pass `target` to force it). Unlike the lossy deromanize tools, this is an EXACT dataset lookup (both spellings are stored per entry): it never guesses — a word not in the dataset returns empty candidates.
| Argument | Type | Description |
|---|---|---|
| text* | string | ONE Interslavic word (not a phrase — the lookup does not tokenize). Auto-detects the script and returns the attested spelling in the OTHER script (Latin↔Cyrillic). A word absent from the dataset, or input with no clear script, returns empty candidates — this is an exact lookup and never guesses. |
| target | any | Force the output script (cyrillic|latin); omit to auto-detect. |
{
"type": "object",
"title": "interslavic_transliterateArguments",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"title": "Text",
"maxLength": 4000,
"minLength": 1,
"description": "ONE Interslavic word (not a phrase — the lookup does not tokenize). Auto-detects the script and returns the attested spelling in the OTHER script (Latin↔Cyrillic). A word absent from the dataset, or input with no clear script, returns empty candidates — this is an exact lookup and never guesses."
},
"target": {
"anyOf": [
{
"enum": [
"cyrillic",
"latin"
],
"type": "string"
},
{
"type": "null"
}
],
"title": "Target",
"default": null,
"description": "Force the output script (cyrillic|latin); omit to auto-detect."
}
}
}Find the real Latgalian word(s) whose pronunciation-romanization matches this clean-ASCII input — the inverse direction of `latgalian_romanize`. Because romanize is lossy, this is a LOOKUP against the words already in the dictionary cache: attested spellings come back as source=dictionary. If none match, a single best-effort reconstruction is returned (source=reconstruction, approximate=true) — a guess, not attested. Coverage grows as words are cached, so an identical query may return a reconstruction now and a dictionary hit later.
| Argument | Type | Description |
|---|---|---|
| text* | string | Romanized (clean-ASCII) Latgalian text to resolve back to real orthography. Returns the attested dictionary spelling(s) whose romanization matches (source=dictionary, exact) — several may match one ambiguous key. On a miss, a single best-effort reconstruction (source=reconstruction, approximate=true), which is a guess: romanize is lossy, so case, the plain o/ō, the cedilla on ŗ and macron length cannot be recovered, and a soft-consonant glide (ly/ny/ky/gy) may be over-restored. |
{
"type": "object",
"title": "latgalian_deromanizeArguments",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"title": "Text",
"maxLength": 4000,
"minLength": 1,
"description": "Romanized (clean-ASCII) Latgalian text to resolve back to real orthography. Returns the attested dictionary spelling(s) whose romanization matches (source=dictionary, exact) — several may match one ambiguous key. On a miss, a single best-effort reconstruction (source=reconstruction, approximate=true), which is a guess: romanize is lossy, so case, the plain o/ō, the cedilla on ŗ and macron length cannot be recovered, and a soft-consonant glide (ly/ny/ky/gy) may be over-restored."
}
}
}Fetch the full declension (nominals) or conjugation (verbs — positive AND negative) tables for a lemma identified by a search result's inflection handle (entry_id + word_class). Use this only when a search ran without inline forms or left a match un-expanded — a default search already returns each match's table inline. Returns Markdown plus the table as structuredContent with the shape {"result": <paradigm>} per the declared outputSchema — switch on result.category ('nominal' | 'verbal' | 'not_found') before reading the body. Content from en.wiktionary.org (CC BY-SA 4.0).
| Argument | Type | Description |
|---|---|---|
| entry_id* | string | The Wiktionary page title (the lemma) from a search result's inflection handle, e.g. 'akmiņs', 'byut'. |
| word_class* | string | The part-of-speech section from a search result's inflection handle, e.g. 'verb', 'noun', 'adjective'. |
{
"type": "object",
"title": "latgalian_get_inflectionsArguments",
"required": [
"entry_id",
"word_class"
],
"properties": {
"entry_id": {
"type": "string",
"title": "Entry Id",
"pattern": "^[A-Za-zĀāČčĒēĪīŪūŌōŖŗŠšŽžĻļŅņĶķĢģ][A-Za-zĀāČčĒēĪīŪūŌōŖŗŠšŽžĻļŅņĶķĢģ\\-']{0,79}$",
"maxLength": 80,
"minLength": 1,
"description": "The Wiktionary page title (the lemma) from a search result's inflection handle, e.g. 'akmiņs', 'byut'."
},
"word_class": {
"enum": [
"abbreviation",
"acronym",
"adjective",
"adverb",
"affix",
"article",
"character",
"circumfix",
"classifier",
"combining form",
"conjunction",
"contraction",
"counter",
"determiner",
"diacritical mark",
"idiom",
"infix",
"initialism",
"interfix",
"interjection",
"letter",
"ligature",
"noun",
"number",
"numeral",
"participle",
"particle",
"phrase",
"postposition",
"prefix",
"preposition",
"prepositional phrase",
"pronoun",
"proper noun",
"proverb",
"punctuation mark",
"romanization",
"root",
"suffix",
"symbol",
"verb"
],
"type": "string",
"title": "Word Class",
"description": "The part-of-speech section from a search result's inflection handle, e.g. 'verb', 'noun', 'adjective'."
}
}
}Strip Latgalian orthography down to clean, pronounceable ASCII for an English-trained downstream (a voice/TTS, a search box). See the `text` parameter doc for the exact letter mappings. Returns Markdown plus the romanized output as structuredContent matching the declared outputSchema. Pure local transform: no dictionary lookup, no network, and the output is always ASCII.
| Argument | Type | Description |
|---|---|---|
| text* | string | Latgalian text to reduce to clean, pronounceable ASCII. Lowercases and maps each special letter to an English-readable spelling: the macron vowels double (ā→aa, ē→ee, ī→ee, ō→o, ū→oo), the caron consonants respell (č→ch, š→sh, ž→zh), and the soft consonants take a 'y' glide (ļ→ly, ņ→ny, ķ→ky, ģ→gy; ŗ→r). A one-way fold — diacritics are dropped, never added. Pass a word, phrase, or several lines; whitespace and punctuation are preserved. |
{
"type": "object",
"title": "latgalian_romanizeArguments",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"title": "Text",
"maxLength": 4000,
"minLength": 1,
"description": "Latgalian text to reduce to clean, pronounceable ASCII. Lowercases and maps each special letter to an English-readable spelling: the macron vowels double (ā→aa, ē→ee, ī→ee, ō→o, ū→oo), the caron consonants respell (č→ch, š→sh, ž→zh), and the soft consonants take a 'y' glide (ļ→ly, ņ→ny, ķ→ky, ģ→gy; ŗ→r). A one-way fold — diacritics are dropped, never added. Pass a word, phrase, or several lines; whitespace and punctuation are preserved."
}
}
}Look a Latgalian word up on Wiktionary and return its senses plus full declension/conjugation tables — attested content, not invented. Any form of the word works; an inflected query is resolved to its lemma automatically via previously cached paradigms and the result notes the resolution. With search_language='eng' the query is an English word instead: the result lists its per-sense Latgalian equivalents (the translations block) plus their expanded entries. Returns Markdown plus the same result as structuredContent matching the declared outputSchema. Results are cached server-side; first-time queries reach the live upstream politely and calls are rate limited — on a rate-limit error, wait a few seconds and retry. Content is from en.wiktionary.org (CC BY-SA 4.0 — attribute and share alike if republished).
| Argument | Type | Description |
|---|---|---|
| query* | string | The word to look up, in the language search_language names. Latgalian (default): a SINGLE Latgalian word, any form — an inflected form ('akmiņa') is resolved to its lemma ('akmiņs') automatically via cached paradigms, and the result says so; diacritics are optional once a paradigm is cached ('akmins' finds 'akmiņs'). English (search_language='eng'): the English word whose Latgalian equivalents you want — multiword entries like 'apple tree' work. |
| max_forms | any | Optional override for how many inflection tables to expand this call (0–12). On an uncached query each table is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default. |
| include_forms | boolean | When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses in ONE call, no follow-up latgalian_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded Latgalian entries; the per-sense translations list itself is always returned. |
Fetch the full declension (nominals) or conjugation (verbs) table for a lemma identified by a search result's inflection handle (entry_id + word_class). Use this only when a search ran without inline forms or left a match un-expanded — a default search already returns each match's table inline. Returns Markdown plus the table as structuredContent with the shape {"result": <paradigm>} per the declared outputSchema — switch on result.category ('nominal' | 'verbal' | 'not_found') before reading the body. Content from en.wiktionary.org (CC BY-SA 4.0).
| Argument | Type | Description |
|---|---|---|
| entry_id* | string | The Wiktionary page title (the lemma) from a search result's inflection handle, e.g. 'amo', 'aqua'. |
| word_class* | string | The part-of-speech section from a search result's inflection handle, e.g. 'verb', 'noun', 'adjective'. |
{
"type": "object",
"title": "latin_get_inflectionsArguments",
"required": [
"entry_id",
"word_class"
],
"properties": {
"entry_id": {
"type": "string",
"title": "Entry Id",
"pattern": "^[A-Za-zĀāĒēĪīŌōŪūȲȳÄäÖöËë\\-']{1,80}$",
"maxLength": 80,
"minLength": 1,
"description": "The Wiktionary page title (the lemma) from a search result's inflection handle, e.g. 'amo', 'aqua'."
},
"word_class": {
"enum": [
"abbreviation",
"acronym",
"adjective",
"adverb",
"affix",
"article",
"character",
"circumfix",
"classifier",
"combining form",
"conjunction",
"contraction",
"counter",
"determiner",
"diacritical mark",
"idiom",
"infix",
"initialism",
"interfix",
"interjection",
"letter",
"ligature",
"noun",
"number",
"numeral",
"participle",
"particle",
"phrase",
"postposition",
"prefix",
"preposition",
"prepositional phrase",
"pronoun",
"proper noun",
"proverb",
"punctuation mark",
"romanization",
"root",
"suffix",
"symbol",
"verb"
],
"type": "string",
"title": "Word Class",
"description": "The part-of-speech section from a search result's inflection handle, e.g. 'verb', 'noun', 'adjective'."
}
}
}Analyze one inflected Latin form with the Morpheus morphological analyzer: its lemma(s) plus the grammatical reading (person, number, tense, mood, voice, case…). Useful when you want the morphology itself — for the dictionary entry, latin_search already resolves inflected queries on its own. Returns Markdown plus the analysis as structuredContent matching the declared outputSchema. Results are cached server-side. Analyses via the Perseids Morpheus service.
| Argument | Type | Description |
|---|---|---|
| word* | string | One inflected Latin word form to analyze, e.g. 'amavit', 'aquam'. Macrons optional. |
{
"type": "object",
"title": "latin_lemmatizeArguments",
"required": [
"word"
],
"properties": {
"word": {
"type": "string",
"title": "Word",
"pattern": "^[A-Za-zĀāĒēĪīŌōŪūȲȳÄäÖöËë\\-']{1,80}$",
"maxLength": 80,
"minLength": 1,
"description": "One inflected Latin word form to analyze, e.g. 'amavit', 'aquam'. Macrons optional."
}
}
}Look a Latin word up on Wiktionary and return its senses plus full declension/conjugation tables — attested content, not invented. Any form of the word works; an inflected query is resolved to its lemma automatically (via previously cached paradigms or the Morpheus analyzer) and the result notes the resolution. With search_language='eng' the query is an English word instead: the result lists its per-sense Latin equivalents (the translations block) plus their expanded entries. Returns Markdown plus the same result as structuredContent matching the declared outputSchema. Results are cached server-side; first-time queries reach the live upstream politely and calls are rate limited — on a rate-limit error, wait a few seconds and retry. Content is from en.wiktionary.org (CC BY-SA 4.0 — attribute and share alike if republished).
| Argument | Type | Description |
|---|---|---|
| query* | string | The word to look up, in the language search_language names. Latin (default): a SINGLE word, any form — an inflected form ('amavit') is resolved to its lemma ('amo') automatically, and the result names it (search_method tells you how; resolved_lemma is the lemma to follow for the full paradigm); macrons are optional ('amo' and 'amō' both work). English (search_language='eng'): the English word whose Latin equivalents you want — multiword entries like 'give up' work. |
| max_forms | any | Optional override for how many inflection tables to expand this call (0–12). On an uncached query each table is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default. |
| include_forms | boolean | When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses in ONE call, no follow-up latin_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded Latin entries; the per-sense translations list itself is always returned. |
Find the real Livonian word(s) whose pronunciation-romanization matches this clean-ASCII input — the inverse direction of `livonian_romanize`. Because romanize is lossy, this is a LOOKUP against the words already in the dictionary cache: attested spellings come back as source=dictionary. If none match, a single best-effort reconstruction is returned (source=reconstruction, approximate=true) — a guess, not attested. Coverage grows as words are cached, so an identical query may return a reconstruction now and a dictionary hit later.
| Argument | Type | Description |
|---|---|---|
| text* | string | Romanized (clean-ASCII) Livonian text to resolve back to real orthography. Returns the attested dictionary spelling(s) whose romanization matches (source=dictionary, exact) — several may match one ambiguous key. On a miss, a single best-effort reconstruction (source=reconstruction, approximate=true), which is a guess: romanize is lossy, so case, stød, palatalization and macron length cannot be recovered. |
{
"type": "object",
"title": "livonian_deromanizeArguments",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"title": "Text",
"maxLength": 4000,
"minLength": 1,
"description": "Romanized (clean-ASCII) Livonian text to resolve back to real orthography. Returns the attested dictionary spelling(s) whose romanization matches (source=dictionary, exact) — several may match one ambiguous key. On a miss, a single best-effort reconstruction (source=reconstruction, approximate=true), which is a guess: romanize is lossy, so case, stød, palatalization and macron length cannot be recovered."
}
}
}Fetch the full declension (nouns) or conjugation (verbs) table for a word identified by a search result's inflection handle (entry_id + word_class) — the exact case, number, tense, not a guessed ending. Use this only when a search ran without inline forms, or to fetch a match a broad search left un-expanded. Never a first call — the handle values only come from livonian_search results, and a default search already returns each match's table inline, so calling this afterwards just re-fetches what you have. Returns Markdown — a nominal gets one case × {singular, plural} table; a verb gets a table per mood/tense (person × {affirmative, negative}, the negation auxiliary folded into the negative) plus its principal-parts and participle lists — or a clean not-found message. (Grammatical labels are normalised to English; Livonian forms stay verbatim.) The same table rides along as structuredContent with the shape {"result": <paradigm>} per the declared outputSchema — switch on result.category ('nominal' | 'verbal' | 'not_found') before reading the body. Results are cached server-side (repeats are instant) and calls are rate limited — on a rate-limit error, wait a few seconds and retry. Table content is from livonian.tech (CC BY-SA 4.0 — attribute if republished).
| Argument | Type | Description |
|---|---|---|
| entry_id* | any | The word id from a search result's inflection handle. Accepts a number or a digit-string (e.g. 17746 or "17746"). |
| word_class* | string | The word-class code from a search result's inflection handle (e.g. 's' = noun, 'adj' = adjective, 'vi' = intransitive verb, 'vt' = transitive verb). |
{
"type": "object",
"title": "livonian_get_inflectionsArguments",
"required": [
"entry_id",
"word_class"
],
"properties": {
"entry_id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"title": "Entry Id",
"description": "The word id from a search result's inflection handle. Accepts a number or a digit-string (e.g. 17746 or \"17746\")."
},
"word_class": {
"enum": [
"adj",
"s",
"vi",
"vt"
],
"type": "string",
"title": "Word Class",
"description": "The word-class code from a search result's inflection handle (e.g. 's' = noun, 'adj' = adjective, 'vi' = intransitive verb, 'vt' = transitive verb)."
}
}
}Strip Livonian orthography down to clean, pronounceable ASCII for an English-trained downstream (a voice/TTS, a search box). See the `text` parameter doc for the exact letter mappings. Returns Markdown plus the romanized output as structuredContent matching the declared outputSchema. Pure local transform: no dictionary lookup, no network, and the output is always ASCII.
| Argument | Type | Description |
|---|---|---|
| text* | string | Livonian text to reduce to clean, pronounceable ASCII. Strips macrons, diacritics and capitals (ā→aa, š→sh, õ→u), softens a palatalized consonant (ņ ļ ŗ ţ ḑ) only before a vowel (ņ+a→nya, else ikšiggiņ→ikshiggin), and hyphenates the broken tone (si'zzõl→siz-zul) and long-vowel diphthong glides (kīen→kee-en). Pass a word, phrase, or several lines. |
{
"type": "object",
"title": "livonian_romanizeArguments",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"title": "Text",
"maxLength": 4000,
"minLength": 1,
"description": "Livonian text to reduce to clean, pronounceable ASCII. Strips macrons, diacritics and capitals (ā→aa, š→sh, õ→u), softens a palatalized consonant (ņ ļ ŗ ţ ḑ) only before a vowel (ņ+a→nya, else ikšiggiņ→ikshiggin), and hyphenates the broken tone (si'zzõl→siz-zul) and long-vowel diphthong glides (kīen→kee-en). Pass a word, phrase, or several lines."
}
}
}Look a word up in the real Livonian–Estonian–Latvian dictionary and return only attested content, so translations are grounded, not invented. Search a meaning (in English/Latvian/Estonian) to find the Livonian headword, or a Livonian word to confirm it exists and read its sense, part of speech and examples. See the `query` and `search_language` parameter docs for how to phrase a query. By default each match's full inflection table is returned inline, so one call usually suffices; on a broad query only the first N tables expand (the rest are listed as handles to fetch with livonian_get_inflections). Returns Markdown plus the same result as structuredContent matching the declared outputSchema. Results are cached server-side, so repeating a query is instant and free; a first-time query reaches the live dictionary and calls are rate limited — on a rate-limit error, wait a few seconds and retry instead of re-issuing immediately. Dictionary content is from livonian.tech (CC BY-SA 4.0 — attribute if republished).
| Argument | Type | Description |
|---|---|---|
| query* | string | A SINGLE content word, not a phrase. Exactly one word per call — even with several candidates or synonyms in mind, search them one at a time ('see', then 'look'), never combined into one query like 'see look'. Drop function words and infinitive markers — search 'to water' as 'water', 'the sea' as 'sea'. The dictionary matches one attested headword, so a multi-word query often returns nothing even when the word exists; search the main word first, then refine. May be Livonian, Latvian, Estonian, or English (e.g. 'jarā', 'away', 'sea'). Matching is bidirectional. An inflected Livonian form (search_language='liv') is resolved to its dictionary lemma automatically when the form is known — the result says so when that happened. |
| max_forms | any | Optional override for how many inflection tables to expand this call (0–12). Raise it to pull more tables in ONE call on a broad query, or set a small value to keep a broad query cheap. On an uncached query each table is fetched sequentially with polite pacing toward the upstream, so a high value on a cold broad query is slow — the bound limits upstream fan-out, not just response size. Omit to use the server's default cap. |
Fetch the full declension (nominals) or conjugation (verbs — active AND mediopassive) tables for a lemma identified by a search result's inflection handle (entry_id + word_class). Use this only when a search ran without inline forms or left a match un-expanded — a default search already returns each match's table inline. Returns Markdown plus the table as structuredContent with the shape {"result": <paradigm>} per the declared outputSchema — switch on result.category ('nominal' | 'verbal' | 'not_found') before reading the body. Content from en.wiktionary.org (CC BY-SA 4.0).
| Argument | Type | Description |
|---|---|---|
| entry_id* | string | The Wiktionary page title (the lemma) from a search result's inflection handle, e.g. 'maðr', 'kasta'. |
| word_class* | string | The part-of-speech section from a search result's inflection handle, e.g. 'verb', 'noun', 'adjective'. |
{
"type": "object",
"title": "norse_get_inflectionsArguments",
"required": [
"entry_id",
"word_class"
],
"properties": {
"entry_id": {
"type": "string",
"title": "Entry Id",
"pattern": "^[A-Za-zÁáÉéÍíÓóÚúÝýÆæÐðÞþǪǫØøŒœǾǿÖö][A-Za-zÁáÉéÍíÓóÚúÝýÆæÐðÞþǪǫØøŒœǾǿÖö\\-']{0,79}$",
"maxLength": 80,
"minLength": 1,
"description": "The Wiktionary page title (the lemma) from a search result's inflection handle, e.g. 'maðr', 'kasta'."
},
"word_class": {
"enum": [
"abbreviation",
"acronym",
"adjective",
"adverb",
"affix",
"article",
"character",
"circumfix",
"classifier",
"combining form",
"conjunction",
"contraction",
"counter",
"determiner",
"diacritical mark",
"idiom",
"infix",
"initialism",
"interfix",
"interjection",
"letter",
"ligature",
"noun",
"number",
"numeral",
"participle",
"particle",
"phrase",
"postposition",
"prefix",
"preposition",
"prepositional phrase",
"pronoun",
"proper noun",
"proverb",
"punctuation mark",
"romanization",
"root",
"suffix",
"symbol",
"verb"
],
"type": "string",
"title": "Word Class",
"description": "The part-of-speech section from a search result's inflection handle, e.g. 'verb', 'noun', 'adjective'."
}
}
}Look an Old Norse word up on Wiktionary and return its senses plus full declension/conjugation tables — attested content (including the verbs' mediopassive voice), not invented. Any form of the word works; an inflected query is resolved to its lemma automatically via previously cached paradigms and the result notes the resolution. With search_language='eng' the query is an English word instead: the result lists its per-sense Old Norse equivalents (the translations block) plus their expanded entries. Returns Markdown plus the same result as structuredContent matching the declared outputSchema. Results are cached server-side; first-time queries reach the live upstream politely and calls are rate limited — on a rate-limit error, wait a few seconds and retry. Content is from en.wiktionary.org (CC BY-SA 4.0 — attribute and share alike if republished).
| Argument | Type | Description |
|---|---|---|
| query* | string | The word to look up, in the language search_language names. Old Norse (default): a SINGLE Old Norse word, any form — an inflected form ('mǫnnum') is resolved to its lemma ('maðr') automatically via cached paradigms, and the result says so; diacritics are optional once a paradigm is cached ('madr' and 'mathr' both find maðr, 'monnum' finds mǫnnum). English (search_language='eng'): the English word whose Old Norse equivalents you want — multiword entries like 'apple tree' work. |
| max_forms | any | Optional override for how many inflection tables to expand this call (0–12). On an uncached query each table is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default. |
| include_forms | boolean | When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses (and the verbs' mediopassive voice) in ONE call, no follow-up norse_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded Old Norse entries; the per-sense translations list itself is always returned. |
Fetch the full descendants payload — etymology, glosses and the reflex tree (Sarmatian→Alanic→Ossetian, Saka→Khotanese) — for a lemma identified by a search result's descendant handle (entry_id + word_class). Use this only when a search ran without inline payloads or left a match un-expanded — a default search already returns each match's payload inline. Returns Markdown plus the payload as structuredContent with the shape {"result": <payload>} per the declared outputSchema — switch on result.category ('descendants' | 'not_found') before reading the body. Content from en.wiktionary.org (CC BY-SA 4.0).
| Argument | Type | Description |
|---|---|---|
| entry_id* | string | The bare lemma (no asterisk) from a search result's descendant handle, e.g. 'tiɣri', 'baga' — a typed leading asterisk is tolerated. |
| word_class* | string | The part-of-speech section from a search result's descendant handle, e.g. 'noun', 'adjective', 'proper noun'. |
{
"type": "object",
"title": "scythian_get_descendantsArguments",
"required": [
"entry_id",
"word_class"
],
"properties": {
"entry_id": {
"type": "string",
"title": "Entry Id",
"pattern": "^\\*?[^\\W\\d_][\\w\\u0300-\\u036F'-]{0,79}$",
"maxLength": 80,
"minLength": 1,
"description": "The bare lemma (no asterisk) from a search result's descendant handle, e.g. 'tiɣri', 'baga' — a typed leading asterisk is tolerated."
},
"word_class": {
"enum": [
"abbreviation",
"acronym",
"adjective",
"adverb",
"affix",
"article",
"character",
"circumfix",
"classifier",
"combining form",
"conjunction",
"contraction",
"counter",
"determiner",
"diacritical mark",
"idiom",
"infix",
"initialism",
"interfix",
"interjection",
"letter",
"ligature",
"noun",
"number",
"numeral",
"participle",
"particle",
"phrase",
"postposition",
"prefix",
"preposition",
"prepositional phrase",
"pronoun",
"proper noun",
"proverb",
"punctuation mark",
"romanization",
"root",
"suffix",
"symbol",
"verb"
],
"type": "string",
"title": "Word Class",
"description": "The part-of-speech section from a search result's descendant handle, e.g. 'noun', 'adjective', 'proper noun'."
}
}
}Look a Proto-Scythian lemma up on Wiktionary and return its senses plus its full descendants payload — the reconstructed etymology and the reflex tree down to Ossetian and Khotanese, attested scholarship, not invention. Plain ASCII spellings are folded to the reconstruction's diacritics and the result notes the resolution. With search_language='eng' the query is an English word instead: the result lists the lemmas whose glosses match it (the translations block) plus their expanded entries. Returns Markdown plus the same result as structuredContent matching the declared outputSchema. Results are cached server-side; first-time queries reach the live upstream politely and calls are rate limited — on a rate-limit error, wait a few seconds and retry. Content is from en.wiktionary.org (CC BY-SA 4.0 — attribute and share alike if republished).
| Argument | Type | Description |
|---|---|---|
| query* | string | The word to look up, in the language search_language names. Scythian (default): a SINGLE Proto-Scythian lemma — plain ASCII works ('tigri' finds *tiɣri: macrons and carons are folded, and ɣ→g, δ→d, β→b, ə→e, θ→t or th), with or without the reconstruction asterisk. English (search_language='eng'): the English word whose Proto-Scythian equivalents you want — matched against every entry's glosses. |
| max_forms | any | Optional override for how many descendants payloads to expand this call (0–12). On an uncached query each payload is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default. |
| include_forms | boolean | When true (default), each match's full descendants payload — etymology, glosses and the reflex tree down to Ossetian and Khotanese — is returned INLINE in ONE call, no follow-up scythian_get_descendants. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded entries; the matched-lemmas list itself is always returned. |
Find the real Church Slavonic word(s) whose scientific-Latin transliteration matches this input — the inverse direction of `slavonic_transliterate`. Because transliterate is lossy, this is a LOOKUP against the words already in the dictionary cache: attested spellings (normalized OCS Cyrillic) come back as source=dictionary. If none match, a single best-effort reconstruction is returned (source=reconstruction, approximate=true) — a guess in normalized OCS Cyrillic, not attested, with no Glagolitic or liturgical marks. Coverage grows as words are cached, so an identical query may return a reconstruction now and a dictionary hit later.
| Argument | Type | Description |
|---|---|---|
| text* | string | Scientific-Latin transliteration of Church Slavonic to resolve back to real orthography. Returns the attested dictionary spelling(s) whose transliteration matches (source=dictionary, exact) — several may match one ambiguous key. On a miss, a single best-effort reconstruction in normalized OCS Cyrillic (source=reconstruction, approximate=true), which is a guess: transliterate is lossy, so case, digraph boundaries (д+з vs ѕ) and the оу/ѿ ligatures cannot be recovered, and no Glagolitic or liturgical marks are produced. |
{
"type": "object",
"title": "slavonic_detransliterateArguments",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"title": "Text",
"maxLength": 4000,
"minLength": 1,
"description": "Scientific-Latin transliteration of Church Slavonic to resolve back to real orthography. Returns the attested dictionary spelling(s) whose transliteration matches (source=dictionary, exact) — several may match one ambiguous key. On a miss, a single best-effort reconstruction in normalized OCS Cyrillic (source=reconstruction, approximate=true), which is a guess: transliterate is lossy, so case, digraph boundaries (д+з vs ѕ) and the оу/ѿ ligatures cannot be recovered, and no Glagolitic or liturgical marks are produced."
}
}
}Fetch the full declension (nominals) or conjugation (verbs) table for a lemma identified by a search result's inflection handle (entry_id + word_class). Use this only when a search ran without inline forms or left a match un-expanded — a default search already returns each match's table inline. Returns Markdown plus the table as structuredContent with the shape {"result": <paradigm>} per the declared outputSchema — switch on result.category ('nominal' | 'verbal' | 'not_found') before reading the body. Content from en.wiktionary.org (CC BY-SA 4.0).
| Argument | Type | Description |
|---|---|---|
| entry_id* | string | The Wiktionary page title (the Cyrillic lemma) from a search result's inflection handle, e.g. 'богъ', 'глаголати'. |
| word_class* | string | The part-of-speech section from a search result's inflection handle, e.g. 'verb', 'noun', 'adjective'. |
{
"type": "object",
"title": "slavonic_get_inflectionsArguments",
"required": [
"entry_id",
"word_class"
],
"properties": {
"entry_id": {
"type": "string",
"title": "Entry Id",
"pattern": "^[Ѐ-ӿꙀ-ꚟⰀ-ⱟ][Ѐ-ӿꙀ-ꚟⰀ-ⱟ\\-']{0,79}$",
"maxLength": 80,
"minLength": 1,
"description": "The Wiktionary page title (the Cyrillic lemma) from a search result's inflection handle, e.g. 'богъ', 'глаголати'."
},
"word_class": {
"enum": [
"abbreviation",
"acronym",
"adjective",
"adverb",
"affix",
"article",
"character",
"circumfix",
"classifier",
"combining form",
"conjunction",
"contraction",
"counter",
"determiner",
"diacritical mark",
"idiom",
"infix",
"initialism",
"interfix",
"interjection",
"letter",
"ligature",
"noun",
"number",
"numeral",
"participle",
"particle",
"phrase",
"postposition",
"prefix",
"preposition",
"prepositional phrase",
"pronoun",
"proper noun",
"proverb",
"punctuation mark",
"romanization",
"root",
"suffix",
"symbol",
"verb"
],
"type": "string",
"title": "Word Class",
"description": "The part-of-speech section from a search result's inflection handle, e.g. 'verb', 'noun', 'adjective'."
}
}
}Look an Old Church Slavonic word up on Wiktionary and return its senses plus full declension/conjugation tables — attested content (singular, dual and plural), not invented. Any form of the word works; an inflected query is resolved to its lemma automatically via previously cached paradigms and the result notes the resolution. With search_language='eng' the query is an English word instead: the result lists its per-sense Old Church Slavonic equivalents (the translations block) plus their expanded entries. Returns Markdown plus the same result as structuredContent matching the declared outputSchema. Results are cached server-side; first-time queries reach the live upstream politely and calls are rate limited — on a rate-limit error, wait a few seconds and retry. Content is from en.wiktionary.org (CC BY-SA 4.0 — attribute and share alike if republished).
| Argument | Type | Description |
|---|---|---|
| query* | string | The word to look up, in the language search_language names. Church Slavonic (default): a SINGLE Old Church Slavonic word in Cyrillic, any form — an inflected form ('бога') is resolved to its lemma ('богъ') automatically via cached paradigms, and the result says so; normalized OCS spelling works best, but titlos/accents and modern-Cyrillic respellings (ы for ꙑ) are folded. English (search_language='eng'): the English word whose Old Church Slavonic equivalents you want — multiword entries like 'apple tree' work. |
| max_forms | any | Optional override for how many inflection tables to expand this call (0–12). On an uncached query each table is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default. |
| include_forms | boolean | When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses (singular, dual AND plural) in ONE call, no follow-up slavonic_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded OCS entries; the per-sense translations list itself is always returned. |
Render Church Slavonic — Cyrillic or Glagolitic — in the scientific Latin transliteration Wiktionary uses (богъ → bogŭ, ⰱⱁⰳⱏ → bogŭ). Liturgical reading marks (titlos, accents) are dropped and late Church Slavonic spellings folded, so copied liturgical text works as-is. Returns Markdown plus the transliterated output as structuredContent matching the declared outputSchema. Pure local transform: no dictionary lookup and no network.
| Argument | Type | Description |
|---|---|---|
| text* | string | Church Slavonic text to transliterate — Cyrillic and/or Glagolitic, one word or whole lines. Liturgical reading marks (titlos, accents, breathings) are dropped and late Church Slavonic spellings folded, so text copied from a liturgical source or a lyrics sheet works as-is. |
{
"type": "object",
"title": "slavonic_transliterateArguments",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"title": "Text",
"maxLength": 4000,
"minLength": 1,
"description": "Church Slavonic text to transliterate — Cyrillic and/or Glagolitic, one word or whole lines. Liturgical reading marks (titlos, accents, breathings) are dropped and late Church Slavonic spellings folded, so text copied from a liturgical source or a lyrics sheet works as-is."
}
}
}| search_language | any | Language the query word is in: 'ang' (default) looks the Old English word up directly; 'eng' finds the Old English equivalents of a modern English word (per-sense, from Wiktionary's translation tables) and returns their full entries. Glosses are in modern English either way. |
{
"type": "object",
"$defs": {
"SearchLanguage": {
"enum": [
"ang",
"eng"
],
"type": "string",
"title": "SearchLanguage",
"description": "The query language. ``ang`` looks an Old English word up directly (any of\nits forms — an inflected query resolves via cached paradigms). ``eng`` searches\nin reverse: the English Wiktionary page for the query word lists per-sense Old\nEnglish translations, and each distinct lemma is then looked up normally."
}
},
"title": "anglo_searchArguments",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"title": "Query",
"maxLength": 80,
"minLength": 1,
"description": "The word to look up, in the language search_language names. Old English (default): a SINGLE Old English word, any form — an inflected form ('bindaþ') is resolved to its lemma ('bindan') automatically via cached paradigms, and the result says so; the special letters are optional once a paradigm is cached ('thing' finds þing, 'waeter' finds wæter). English (search_language='eng'): the English word whose Old English equivalents you want — multiword entries like 'apple tree' work."
},
"max_forms": {
"anyOf": [
{
"type": "integer",
"maximum": 12,
"minimum": 0
},
{
"type": "null"
}
],
"title": "Max Forms",
"default": null,
"description": "Optional override for how many inflection tables to expand this call (0–12). On an uncached query each table is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default."
},
"include_forms": {
"type": "boolean",
"title": "Include Forms",
"default": true,
"description": "When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses (nouns, the adjectives' strong/weak family, the verbs' moods, the pronouns' dual) in ONE call, no follow-up anglo_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded Old English entries; the per-sense translations list itself is always returned."
},
"search_language": {
"$ref": "#/$defs/SearchLanguage",
"default": "ang",
"description": "Language the query word is in: 'ang' (default) looks the Old English word up directly; 'eng' finds the Old English equivalents of a modern English word (per-sense, from Wiktionary's translation tables) and returns their full entries. Glosses are in modern English either way."
}
}
}| search_language | any | Language the query is in: 'isv' (default) looks the Interslavic word up directly; 'eng' finds the Interslavic equivalents of an English word (via the gloss index) and returns their full entries. These are the only two queryable languages in v1 — each entry ALSO carries a read-only translation matrix into 11 more languages (Russian, Polish, Czech, Ukrainian, …), but you cannot query IN those. |
{
"type": "object",
"$defs": {
"SearchLanguage": {
"enum": [
"isv",
"eng"
],
"type": "string",
"title": "SearchLanguage",
"description": "The query language. ``isv`` looks an Interslavic word up directly — any of its\ninflected forms resolves to the headword via the bundled reverse form index, and\na Latin or Cyrillic spelling both work. ``eng`` searches in reverse: the English\nquery is matched against the entries' English glosses and each matched Interslavic\nlemma is then looked up normally. The dictionary translates into 11 more Slavic\nlanguages, but only isv and eng are QUERYABLE in v1 — the other columns are\nread-only (returned in each entry's translation matrix)."
}
},
"title": "interslavic_searchArguments",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"title": "Query",
"maxLength": 80,
"minLength": 1,
"description": "The word to look up, in the language search_language names. Interslavic (default): a SINGLE Interslavic word, any form and either script — an inflected form ('brata') resolves to its headword ('brat') via the reverse form index, Latin and Cyrillic both work for headwords, and diacritics are optional ('delati' finds 'dělati'). English (search_language='eng'): the English word whose Interslavic equivalents you want."
},
"max_forms": {
"anyOf": [
{
"type": "integer",
"maximum": 12,
"minimum": 0
},
{
"type": "null"
}
],
"title": "Max Forms",
"default": null,
"description": "Optional override for how many inflection tables to expand this call (0–12). Tables are served from the bundled dataset (no network), so this is cheap. Omit for the server default."
},
"include_forms": {
"type": "boolean",
"title": "Include Forms",
"default": true,
"description": "When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses in ONE call, no follow-up interslavic_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. Pronouns, numerals and indeclinables carry no table. For eng queries this governs the expanded Interslavic entries."
},
"search_language": {
"$ref": "#/$defs/SearchLanguage",
"default": "isv",
"description": "Language the query is in: 'isv' (default) looks the Interslavic word up directly; 'eng' finds the Interslavic equivalents of an English word (via the gloss index) and returns their full entries. These are the only two queryable languages in v1 — each entry ALSO carries a read-only translation matrix into 11 more languages (Russian, Polish, Czech, Ukrainian, …), but you cannot query IN those."
}
}
}| search_language | any | Language the query word is in: 'ltg' (default) looks the Latgalian word up directly; 'eng' finds the Latgalian equivalents of an English word (per-sense, from Wiktionary's translation tables) and returns their full entries. Glosses are in English either way. |
{
"type": "object",
"$defs": {
"SearchLanguage": {
"enum": [
"ltg",
"eng"
],
"type": "string",
"title": "SearchLanguage",
"description": "The query language. ``ltg`` looks a Latgalian word up directly (any of its\nforms — an inflected query resolves via cached paradigms). ``eng`` searches in\nreverse: the English Wiktionary page for the query word lists per-sense\nLatgalian translations, and each distinct lemma is then looked up normally."
}
},
"title": "latgalian_searchArguments",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"title": "Query",
"maxLength": 80,
"minLength": 1,
"description": "The word to look up, in the language search_language names. Latgalian (default): a SINGLE Latgalian word, any form — an inflected form ('akmiņa') is resolved to its lemma ('akmiņs') automatically via cached paradigms, and the result says so; diacritics are optional once a paradigm is cached ('akmins' finds 'akmiņs'). English (search_language='eng'): the English word whose Latgalian equivalents you want — multiword entries like 'apple tree' work."
},
"max_forms": {
"anyOf": [
{
"type": "integer",
"maximum": 12,
"minimum": 0
},
{
"type": "null"
}
],
"title": "Max Forms",
"default": null,
"description": "Optional override for how many inflection tables to expand this call (0–12). On an uncached query each table is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default."
},
"include_forms": {
"type": "boolean",
"title": "Include Forms",
"default": true,
"description": "When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses in ONE call, no follow-up latgalian_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded Latgalian entries; the per-sense translations list itself is always returned."
},
"search_language": {
"$ref": "#/$defs/SearchLanguage",
"default": "ltg",
"description": "Language the query word is in: 'ltg' (default) looks the Latgalian word up directly; 'eng' finds the Latgalian equivalents of an English word (per-sense, from Wiktionary's translation tables) and returns their full entries. Glosses are in English either way."
}
}
}| search_language | any | Language the query word is in: 'lat' (default) looks the Latin word up directly; 'eng' finds the Latin equivalents of an English word (per-sense, from Wiktionary's translation tables) and returns their full entries. Glosses are in English either way. |
{
"type": "object",
"$defs": {
"SearchLanguage": {
"enum": [
"lat",
"eng"
],
"type": "string",
"title": "SearchLanguage",
"description": "The query language. ``lat`` looks a Latin word up directly (any of its forms —\nan inflected query resolves via the form index or Morpheus). ``eng`` searches in\nreverse: the English Wiktionary page for the query word lists per-sense Latin\ntranslations, and each distinct Latin lemma is then looked up normally."
}
},
"title": "latin_searchArguments",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"title": "Query",
"maxLength": 80,
"minLength": 1,
"description": "The word to look up, in the language search_language names. Latin (default): a SINGLE word, any form — an inflected form ('amavit') is resolved to its lemma ('amo') automatically, and the result names it (search_method tells you how; resolved_lemma is the lemma to follow for the full paradigm); macrons are optional ('amo' and 'amō' both work). English (search_language='eng'): the English word whose Latin equivalents you want — multiword entries like 'give up' work."
},
"max_forms": {
"anyOf": [
{
"type": "integer",
"maximum": 12,
"minimum": 0
},
{
"type": "null"
}
],
"title": "Max Forms",
"default": null,
"description": "Optional override for how many inflection tables to expand this call (0–12). On an uncached query each table is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default."
},
"include_forms": {
"type": "boolean",
"title": "Include Forms",
"default": true,
"description": "When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses in ONE call, no follow-up latin_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded Latin entries; the per-sense translations list itself is always returned."
},
"search_language": {
"$ref": "#/$defs/SearchLanguage",
"default": "lat",
"description": "Language the query word is in: 'lat' (default) looks the Latin word up directly; 'eng' finds the Latin equivalents of an English word (per-sense, from Wiktionary's translation tables) and returns their full entries. Glosses are in English either way."
}
}
}| include_forms | boolean | When true (default), each match's full inflection table is returned INLINE — usable cases/tenses in ONE call, no follow-up livonian_get_inflections. Set false to get just the headword handles + glosses: a cheap way to SCREEN several candidate words or synonyms (which exist? which sense?) before spending forms on the one you pick. Bounded by a per-search cap — use max_forms to raise or lower it for this call. |
| search_language | any | Language your query word is in — selects which language the search matches against: 'eng' (default), 'liv', 'lat', or 'est'. For English→Livonian translation, keep 'eng'. Glosses are in English. |
{
"type": "object",
"$defs": {
"SearchLanguage": {
"enum": [
"liv",
"lat",
"est",
"eng"
],
"type": "string",
"title": "SearchLanguage",
"description": "Which language the query word is matched against. Headwords come back in\nLivonian and glosses in English either way; this only selects the language the\nquery term is in. Codes are the site's own."
}
},
"title": "livonian_searchArguments",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"title": "Query",
"maxLength": 120,
"minLength": 1,
"description": "A SINGLE content word, not a phrase. Exactly one word per call — even with several candidates or synonyms in mind, search them one at a time ('see', then 'look'), never combined into one query like 'see look'. Drop function words and infinitive markers — search 'to water' as 'water', 'the sea' as 'sea'. The dictionary matches one attested headword, so a multi-word query often returns nothing even when the word exists; search the main word first, then refine. May be Livonian, Latvian, Estonian, or English (e.g. 'jarā', 'away', 'sea'). Matching is bidirectional. An inflected Livonian form (search_language='liv') is resolved to its dictionary lemma automatically when the form is known — the result says so when that happened."
},
"max_forms": {
"anyOf": [
{
"type": "integer",
"maximum": 12,
"minimum": 0
},
{
"type": "null"
}
],
"title": "Max Forms",
"default": null,
"description": "Optional override for how many inflection tables to expand this call (0–12). Raise it to pull more tables in ONE call on a broad query, or set a small value to keep a broad query cheap. On an uncached query each table is fetched sequentially with polite pacing toward the upstream, so a high value on a cold broad query is slow — the bound limits upstream fan-out, not just response size. Omit to use the server's default cap."
},
"include_forms": {
"type": "boolean",
"title": "Include Forms",
"default": true,
"description": "When true (default), each match's full inflection table is returned INLINE — usable cases/tenses in ONE call, no follow-up livonian_get_inflections. Set false to get just the headword handles + glosses: a cheap way to SCREEN several candidate words or synonyms (which exist? which sense?) before spending forms on the one you pick. Bounded by a per-search cap — use max_forms to raise or lower it for this call."
},
"search_language": {
"$ref": "#/$defs/SearchLanguage",
"default": "eng",
"description": "Language your query word is in — selects which language the search matches against: 'eng' (default), 'liv', 'lat', or 'est'. For English→Livonian translation, keep 'eng'. Glosses are in English."
}
}
}| search_language | any | Language the query word is in: 'non' (default) looks the Old Norse word up directly; 'eng' finds the Old Norse equivalents of an English word (per-sense, from Wiktionary's translation tables) and returns their full entries. Glosses are in English either way. |
{
"type": "object",
"$defs": {
"SearchLanguage": {
"enum": [
"non",
"eng"
],
"type": "string",
"title": "SearchLanguage",
"description": "The query language. ``non`` looks an Old Norse word up directly (any of its\nforms — an inflected query resolves via cached paradigms). ``eng`` searches in\nreverse: the English Wiktionary page for the query word lists per-sense Old\nNorse translations, and each distinct lemma is then looked up normally."
}
},
"title": "norse_searchArguments",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"title": "Query",
"maxLength": 80,
"minLength": 1,
"description": "The word to look up, in the language search_language names. Old Norse (default): a SINGLE Old Norse word, any form — an inflected form ('mǫnnum') is resolved to its lemma ('maðr') automatically via cached paradigms, and the result says so; diacritics are optional once a paradigm is cached ('madr' and 'mathr' both find maðr, 'monnum' finds mǫnnum). English (search_language='eng'): the English word whose Old Norse equivalents you want — multiword entries like 'apple tree' work."
},
"max_forms": {
"anyOf": [
{
"type": "integer",
"maximum": 12,
"minimum": 0
},
{
"type": "null"
}
],
"title": "Max Forms",
"default": null,
"description": "Optional override for how many inflection tables to expand this call (0–12). On an uncached query each table is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default."
},
"include_forms": {
"type": "boolean",
"title": "Include Forms",
"default": true,
"description": "When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses (and the verbs' mediopassive voice) in ONE call, no follow-up norse_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded Old Norse entries; the per-sense translations list itself is always returned."
},
"search_language": {
"$ref": "#/$defs/SearchLanguage",
"default": "non",
"description": "Language the query word is in: 'non' (default) looks the Old Norse word up directly; 'eng' finds the Old Norse equivalents of an English word (per-sense, from Wiktionary's translation tables) and returns their full entries. Glosses are in English either way."
}
}
}| search_language | any | Language the query word is in: 'xsc' (default) looks the Proto-Scythian lemma up directly; 'eng' finds the lemmas whose English glosses match the query (the local gloss index — reconstructed languages have no translation tables) and returns their full entries. Glosses are in English either way. |
{
"type": "object",
"$defs": {
"SearchLanguage": {
"enum": [
"xsc",
"eng"
],
"type": "string",
"title": "SearchLanguage",
"description": "The query language. ``xsc`` (ISO 639-3 Scythian; Wiktionary's entry code is\n``xsc-pro``) looks a Proto-Scythian lemma up directly — ASCII spellings are\nfolded (``tigri`` finds ``*tiɣri``) via the reverse index. ``eng`` searches in\nreverse: the English query is matched against the indexed glosses of all\nlemmas, and each match is then looked up normally."
}
},
"title": "scythian_searchArguments",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"title": "Query",
"maxLength": 80,
"minLength": 1,
"description": "The word to look up, in the language search_language names. Scythian (default): a SINGLE Proto-Scythian lemma — plain ASCII works ('tigri' finds *tiɣri: macrons and carons are folded, and ɣ→g, δ→d, β→b, ə→e, θ→t or th), with or without the reconstruction asterisk. English (search_language='eng'): the English word whose Proto-Scythian equivalents you want — matched against every entry's glosses."
},
"max_forms": {
"anyOf": [
{
"type": "integer",
"maximum": 12,
"minimum": 0
},
{
"type": "null"
}
],
"title": "Max Forms",
"default": null,
"description": "Optional override for how many descendants payloads to expand this call (0–12). On an uncached query each payload is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default."
},
"include_forms": {
"type": "boolean",
"title": "Include Forms",
"default": true,
"description": "When true (default), each match's full descendants payload — etymology, glosses and the reflex tree down to Ossetian and Khotanese — is returned INLINE in ONE call, no follow-up scythian_get_descendants. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded entries; the matched-lemmas list itself is always returned."
},
"search_language": {
"$ref": "#/$defs/SearchLanguage",
"default": "xsc",
"description": "Language the query word is in: 'xsc' (default) looks the Proto-Scythian lemma up directly; 'eng' finds the lemmas whose English glosses match the query (the local gloss index — reconstructed languages have no translation tables) and returns their full entries. Glosses are in English either way."
}
}
}| search_language | any | Language the query word is in: 'chu' (default) looks the Old Church Slavonic word up directly; 'eng' finds the OCS equivalents of an English word (per-sense, from Wiktionary's translation tables) and returns their full entries. Glosses are in English either way. |
{
"type": "object",
"$defs": {
"SearchLanguage": {
"enum": [
"chu",
"eng"
],
"type": "string",
"title": "SearchLanguage",
"description": "The query language. ``chu`` looks an Old Church Slavonic word up directly\n(any of its forms — an inflected query resolves via cached paradigms). ``eng``\nsearches in reverse: the English Wiktionary page for the query word lists\nper-sense Old Church Slavonic translations, and each distinct lemma is then\nlooked up normally."
}
},
"title": "slavonic_searchArguments",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"title": "Query",
"maxLength": 80,
"minLength": 1,
"description": "The word to look up, in the language search_language names. Church Slavonic (default): a SINGLE Old Church Slavonic word in Cyrillic, any form — an inflected form ('бога') is resolved to its lemma ('богъ') automatically via cached paradigms, and the result says so; normalized OCS spelling works best, but titlos/accents and modern-Cyrillic respellings (ы for ꙑ) are folded. English (search_language='eng'): the English word whose Old Church Slavonic equivalents you want — multiword entries like 'apple tree' work."
},
"max_forms": {
"anyOf": [
{
"type": "integer",
"maximum": 12,
"minimum": 0
},
{
"type": "null"
}
],
"title": "Max Forms",
"default": null,
"description": "Optional override for how many inflection tables to expand this call (0–12). On an uncached query each table is one politely paced upstream fetch, so high values on cold queries are slow. Omit for the server default."
},
"include_forms": {
"type": "boolean",
"title": "Include Forms",
"default": true,
"description": "When true (default), each match's full declension/conjugation table is returned INLINE — usable cases/tenses (singular, dual AND plural) in ONE call, no follow-up slavonic_get_inflections. Set false for a cheap screen of which entries exist. Bounded by a per-search cap — use max_forms to adjust per call. For eng queries this governs the expanded OCS entries; the per-sense translations list itself is always returned."
},
"search_language": {
"$ref": "#/$defs/SearchLanguage",
"default": "chu",
"description": "Language the query word is in: 'chu' (default) looks the Old Church Slavonic word up directly; 'eng' finds the OCS equivalents of an English word (per-sense, from Wiktionary's translation tables) and returns their full entries. Glosses are in English either way."
}
}
}