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

search_slavonic
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.
get_inflections
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.
transliterate_slavonic
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.