multilingual-dictionary-mcp
The multilingual-dictionary-mcp is an offline-first MCP server providing 28 dictionary and linguistic tools across thousands of languages. It downloads ~15.6 GB of data once and operates with no internet, rate limits, or outages thereafter.
Data Management
dictionary_status: Check the offline data installation statedictionary_install: Manually trigger or re-trigger the data download
Definitions, Etymology & Pronunciation (Wiktextract — 4,755 languages, 10.5M entries)
dictionary_lookup: Full definitions, part-of-speech, IPA, etymology, and translationsdictionary_summary: Concise plain-text summary of a word's sensesdictionary_etymology/dictionary_pronunciation: Extract etymology text or IPA pronunciationsdictionary_search: Prefix-search the corpus when spelling is uncertaindictionary_random: Fetch a random word entry, optionally filtered by language
Word Relations (ConceptNet — 80+ languages)
Synonyms, antonyms, hypernyms (broader concepts), hyponyms (narrower concepts), meronyms (parts), holonyms (wholes)
Derivation, etymological cognates, typical uses, typical actions, and typical locations
dictionary_all_relations: Retrieve all relation types in a single calldictionary_translate: Translate words via cross-lingual synonym links
Embedding-Based Semantic Search (Numberbatch — 78 languages)
dictionary_related: Find semantic neighbors via cosine similaritydictionary_semantic_neighbors: Explicit embedding lookup with optional cross-lingual filteringdictionary_means_like: Find words/phrases with approximately the same meaning across 78 languages
English-Specific Tools (CMU Pronouncing Dictionary)
dictionary_rhymes: Find perfect or near rhymesdictionary_sounds_like: Discover homophones and soundalikesdictionary_spelled_like: Match words by spelling pattern using?and*wildcards (useful for crosswords)dictionary_suggest: Autocomplete suggestions for partial words
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@multilingual-dictionary-mcp synonyms of 'amor' in Spanish"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Multilingual Dictionary MCP
An offline-first MCP server for multilingual dictionary lookups — definitions, synonyms, antonyms, hypernyms, hyponyms, meronyms, translations, etymology, pronunciation, semantic neighbors, rhymes, and more — across 4,755 languages.
No third-party APIs. No rate limits. No outages. The server downloads its data from a CDN once on first run and never goes online again.
What's bundled
Source | Size | What it covers |
Wiktextract (Kaikki.org) | 6.6 GB | 10.5M dictionary entries across 4,755 languages — definitions, etymology, IPA, translations |
ConceptNet 5.7 | 5.6 GB | 24.3M semantic edges across 80+ languages — Synonym, Antonym, IsA, PartOf, RelatedTo, UsedFor, CapableOf, AtLocation, DerivedFrom, EtymologicallyRelatedTo |
Numberbatch embeddings | 3 GB | 9.16M concepts × 300d multilingual embeddings — semantic neighbors via cosine similarity |
CMU Pronouncing Dictionary | 19 MB | English rhymes, soundalikes, autocomplete, spell patterns |
Total bundle: ~21 GB (medium profile, default).
Related MCP server: word-orb
One bundle, one download
The whole bundle ships in 6 artifacts. Total 5.4 GB on the wire (gzip-compressed where it helps), 15.6 GB on disk after extraction. Everything downloads on first run; no profiles, no opt-ins.
Installation
npm install -g multilingual-dictionary-mcpClaude Desktop / Claude Code
{
"mcpServers": {
"multilingual-dictionary": {
"command": "npx",
"args": ["-y", "multilingual-dictionary-mcp"]
}
}
}On first run, the server downloads its data bundle (~5.4 GB compressed → ~15.6 GB on disk) from multilingual-dictionary-mcp-data.nyc3.cdn.digitaloceanspaces.com into ~/.cache/multilingual-dictionary-mcp/ (overridable via MDM_DATA_DIR). Each artifact is gzip-decompressed during the stream and SHA-256 verified. Subsequent runs are instant.
Tools
Multilingual word relations (ConceptNet — 80+ languages)
dictionary_synonyms, dictionary_antonyms, dictionary_hypernyms, dictionary_hyponyms, dictionary_meronyms, dictionary_holonyms, dictionary_derived_from, dictionary_etymologically_related, dictionary_used_for, dictionary_capable_of, dictionary_at_location, dictionary_translate, dictionary_all_relations
Embedding-based semantic search (Numberbatch — 78 languages)
Tool | What it does |
| Semantic neighbors via cosine similarity — much denser than ConceptNet RelatedTo |
| Explicit embedding lookup with optional cross-lingual filter |
| Multilingual "means approximately" via Numberbatch (works in any of the 78 covered languages) |
Definitions & etymology (Wiktextract — 4,755 languages)
Tool | What it does |
| Definitions + IPA + etymology grouped by language |
| Concatenated short definition |
| Etymology text |
| IPA pronunciations |
| Prefix-search the corpus |
| Random word entry |
English-specific (CMU Pronouncing Dictionary)
Tool | What it does |
| Perfect or near rhymes |
| Homophones / soundalikes |
| Spelling pattern ( |
| Autocomplete prefix |
Examples
> What are the synonyms of "feliz" in Spanish?
[uses dictionary_synonyms with language: "es"]
> Translate "happiness" into Hebrew
[uses dictionary_translate with language: "en", targetLanguage: "he"]
> What's the etymology of "serendipity"?
[uses dictionary_etymology]
> Find words semantically similar to "café" across languages
[uses dictionary_semantic_neighbors]
> What rhymes with "orange"?
[uses dictionary_rhymes with perfect: false]Development
npm install
npm run build
npm test # 42 tests, all run without local dataSource layout:
src/
├── index.ts # MCP server entry, blocks on first-run install
├── data/
│ ├── paths.ts # CDN base, profile selection, data dir
│ ├── installer.ts # First-run downloader + SHA-256 verification
│ └── local-store.ts # SQLite + Numberbatch matrix wrappers
└── tools/
├── relations.ts # 13 ConceptNet relation tools + 1 embedding tool
├── definitions.ts # 6 Wiktextract definition tools
└── english.ts # 5 CMU dict + Numberbatch toolsTotal: 24 tools.
Building the data bundle yourself
The CDN ships official builds, but the entire pipeline is in data-pipeline/ — see its README. You can rebuild from upstream sources, ship to your own bucket, and override MDM_CDN_BASE.
CI / Release
CI runs build + tests on Node 20 & 22 for every push and PR.
Publish runs on GitHub Release publish, pushes to npm and GitHub Packages.
License
MIT © Eyalm321
Available Tools
28 toolsdictionary_all_relationsC
All edges (every relation type) for a word in one call from offline ConceptNet.
Inputs: word (required), language, limit.
dictionary_antonymsB
Get antonyms (opposites) for a word in any language using offline ConceptNet.
Inputs: word (required), language, limit.
dictionary_at_locationB
Typical locations (AtLocation) via offline ConceptNet. E.g. book -> library.
Inputs: word (required), language, limit.
dictionary_capable_ofB
Typical actions (CapableOf) via offline ConceptNet. E.g. dog -> bark.
Inputs: word (required), language, limit.
dictionary_derived_fromC
Derivation relations via offline ConceptNet DerivedFrom.
Inputs: word (required), language, limit.
dictionary_etymologyA
Return etymology text for a word from the offline Wiktextract corpus.
Inputs: word (required), language.
dictionary_holonymsB
Holonyms (wholes that contain this word) via offline ConceptNet reverse PartOf.
Inputs: word (required), language, limit.
dictionary_hypernymsA
Hypernyms (broader concepts) via offline ConceptNet IsA. E.g. dog -> mammal.
Inputs: word (required), language, limit.
dictionary_hyponymsB
Hyponyms (narrower concepts) via offline ConceptNet IsA. E.g. dog -> poodle.
Inputs: word (required), language, limit.
dictionary_installA
Manually kick off (or re-trigger) the offline data download. Returns immediately while the install runs in the background. Idempotent — calling repeatedly while a download is in progress is a no-op. Use dictionary_status to track progress.
Inputs: no named parameters.
dictionary_lookupA
Look up definitions for a word from the offline Wiktextract corpus (4,755 languages, 10.5M entries). Returns part-of-speech, definitions per sense, IPA, etymology, and translations grouped by language.
Inputs: word (required), language, limit.
dictionary_means_likeA
Find words/phrases meaning approximately the same as the input via offline Numberbatch embedding cosine. Multilingual — works in any of the 78 languages Numberbatch covers.
Inputs: query (required), language, limit.
dictionary_meronymsC
Meronyms (parts/components) via offline ConceptNet PartOf. E.g. car -> wheel.
Inputs: word (required), language, limit.
dictionary_pronunciationB
Return IPA pronunciation(s) for a word from the offline Wiktextract corpus.
Inputs: word (required), language.
dictionary_randomA
Return a random word entry from the offline Wiktextract corpus, optionally filtered to a language.
Inputs: language.
dictionary_rhymesA
Find words that rhyme with the input word. English only — backed by the offline CMU Pronouncing Dictionary.
Inputs: word (required), limit, perfect.
dictionary_searchA
Prefix-search the offline Wiktextract corpus for words matching a query. Useful when you don't know the exact spelling.
Inputs: query (required), language, limit.
dictionary_semantic_neighborsA
Embedding-based nearest neighbors via Numberbatch. Returns words from the same OR a different language, sorted by cosine similarity. Multilingual (78 languages).
Inputs: word (required), language, targetLanguage, limit.
dictionary_sounds_likeB
Find English words that sound similar to the input (homophones / soundalikes) via offline CMU dict.
Inputs: word (required), limit.
dictionary_spelled_likeA
Find English words matching a spelling pattern via offline CMU dict. '?' = any single letter, '*' = any zero+ letters. Useful for crosswords.
Inputs: pattern (required), limit.
dictionary_statusA
Get the current state of the offline data installation. Always available — even before the bundle has finished downloading. Returns: state (pending/downloading/ready/failed), per-artifact progress, total bytes downloaded, data directory, CDN URL, manifest version, and any error.
Inputs: no named parameters.
dictionary_suggestA
Get autocomplete suggestions for a partial English word via offline CMU dict (shortest matches first).
Inputs: prefix (required), limit.
dictionary_summaryA
Get a brief plain-text summary of a word's senses from the offline Wiktextract data. Concatenates the first definition of each sense.
Inputs: word (required), language.
dictionary_synonymsA
Get synonyms for a word in any language using the offline ConceptNet 5.7 SQLite (24M edges, 80+ languages).
Inputs: word (required), language, limit.
dictionary_translateC
Translate a word to another language via offline ConceptNet's cross-lingual Synonym links. Returns the same concept expressed in different languages.
Inputs: word (required), language, targetLanguage, limit.
dictionary_used_forB
Typical uses (UsedFor) via offline ConceptNet. E.g. knife -> cutting.
Inputs: word (required), language, limit.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 28 tools
Each tool targets a specific linguistic relation or operation with clear, distinct descriptions. Even potentially overlapping tools like synonyms, means_like, and related are differentiated by their underlying data sources (ConceptNet vs Numberbatch embeddings).
All tools follow a consistent 'dictionary_' prefix followed by a descriptive snake_case name. The pattern is uniform with no mixing of conventions or styles.
28 tools is on the higher end but justified by the comprehensive coverage of dictionary features (definitions, etymology, pronunciation, semantic relations, search, data management). It remains manageable and focused.
The tool surface covers a wide range of dictionary and lexical relations: definitions, pronunciations, etymology, synonyms, antonyms, hypernyms, hyponyms, meronyms, holonyms, translations, rhymes, spelling, autocomplete, random access, and data installation status. No obvious gaps for the stated purpose.
Maintenance
Related MCP Connectors
MCP server for Chinese dictionary lookup: character definitions, pinyin, stroke order and word
Wiktionary MCP — multilingual dictionary via Wikimedia REST + MediaWiki Action API
Dictionary MCP — wraps Free Dictionary API (free, no auth)
MCP server for Chinese idioms (chengyu): lookup by word, pinyin or meaning with explanation and
Related MCP Servers
- AlicenseCqualityDmaintenanceAn MCP server that provides access to the Similar Words API, allowing users to search for and retrieve semantically related words. It enables language-based applications to query word similarities and relationships through a standardized interface.1MIT
- AlicenseNot gradedqualityCmaintenanceVocabulary intelligence MCP server — 162K words, 47 languages, definitions, IPA pronunciation, etymology, translations, and daily lessons. 19 tools for AI agents.2 npm1MIT
- AlicenseAqualityDmaintenanceMCP server for the Datamuse API that enables word finding like synonyms, rhymes, autocomplete, and more.1049 npm3MIT
- FlicenseNot gradedqualityDmaintenanceRemote MCP server for word definitions and random word retrieval via Oxford Dictionaries API, deployable on Vercel with bearer token authentication.-