Church Slavonic dictionary access
An MCP server and JSON API over the English Wiktionary's Old Church Slavonic entries — so LLMs read and write Church Slavonic with attested words and grammatical forms, not invented ones. Entries use the normalized scholarly orthography (no titlos or scribal abbreviations) the liturgical language descends from, with full paradigms in all three numbers — singular, dual and plural. Read-only.
MCP JSON API politely cached rate limited
Connect an MCP client
Remote streamable-HTTP endpoint — no auth, read-only:
https://slavonic.valksor.com/mcp
Claude Code — CLI
claude mcp add --transport http slavonic https://slavonic.valksor.com/mcp
Cursor · Cline
— remote url (~/.cursor/mcp.json)
{
"mcpServers": {
"slavonic": { "url": "https://slavonic.valksor.com/mcp" }
}
}
VS Code — .vscode/mcp.json
{
"servers": {
"slavonic": { "type": "http", "url": "https://slavonic.valksor.com/mcp" }
}
}
Claude Desktop · Windsurf · other stdio clients
— bridge via
mcp-remote
(claude_desktop_config.json)
{
"mcpServers": {
"slavonic": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://slavonic.valksor.com/mcp"]
}
}
}
Claude Desktop only accepts command-based (stdio) servers
in its config, so a bare url is rejected — the bridge above
wraps the remote endpoint. On Pro/Team/Enterprise you can instead add it
under Settings → Connectors → Add custom connector and paste
https://slavonic.valksor.com/mcp.
Codex CLI — ~/.codex/config.toml
[mcp_servers.slavonic] command = "npx" args = ["-y", "mcp-remote", "https://slavonic.valksor.com/mcp"]
Rule of thumb: clients with native streamable-HTTP/SSE support take the
url directly (Claude Code, Cursor, Cline, VS Code);
stdio-only desktop apps wrap it with
npx -y mcp-remote https://slavonic.valksor.com/mcp.
Three tools
query — Church Slavonic: any form of the word, in
Cyrillic; English: the word itself.Returns senses + inflection handles (full tables inline by default). An inflected query resolves to its lemma automatically. With
search_language=eng the query is an English word and the
result lists its per-sense OCS equivalents plus their entries.
entry_id (the lemma), word_class (the
part of speech) from a handle.Returns the full paradigm — JSON grouped by
category
(nominal cases with singular/dual/plural, or verbal tense·person),
Markdown over MCP.
text — Cyrillic and/or Glagolitic, e.g.
богъ or ⰱⱁⰳⱏ.Returns the scientific Latin transliteration (богъ → bogŭ). Liturgical reading marks (titlos, accents) are dropped, so copied liturgical text works as-is. Pure local transform.
Or call the JSON API
curl "https://slavonic.valksor.com/api/search?query=богъ" curl "https://slavonic.valksor.com/api/search?query=water&search_language=eng" curl "https://slavonic.valksor.com/api/inflections?entry_id=глаголати&word_class=verb" curl "https://slavonic.valksor.com/api/transliterate?text=ⰱⱁⰳⱏ"
Interactive docs: /api/docs · OpenAPI schema: /api/openapi.json · LLM usage: /llms.txt
How lookup works
Any form of a word works as a query — an inflected form is
resolved to its lemma via paradigms already cached (the dictionary
itself is keyed by Old Church Slavonic headwords in normalized
orthography), and the result says which way it was found
(search_method = direct ·
lemma_index · translations). Titlos, accents
and the common modern respellings (ы for ꙑ,
я for ꙗ) are folded, so words copied from a
liturgical text or a lyrics sheet still match. English→Church Slavonic
works too: with search_language=eng the query is an
English word, and its per-sense OCS equivalents come from Wiktionary's
translation tables. Because liturgical Church Slavonic vocabulary
descends directly from Old Church Slavonic, most of the liturgical
word stock can be checked here in its normalized form.