multilingual-dictionary-mcp
多语言词典 MCP
一个用于多语言词典查询及词汇关系的 MCP 服务器——包括同义词、反义词、上位词、下位词、部分词、翻译、词源、定义、押韵等——通过整合三个免费公共 API,覆盖所有语言:
ConceptNet — 多语言语义网络(80 多种语言,词汇关系:同义词、反义词、IsA、PartOf、RelatedTo、DerivedFrom 等)
Wiktionary — 4000 多种语言的定义、词源和发音
Datamuse — 仅限英语的实用工具(押韵、同音词、“意思相近”、拼写模式、上下文触发词)
无需 API 密钥。无需捆绑数据。只需将其插入 Claude(或任何 MCP 客户端),即可查询任何语言的词汇。
安装
通过 npm
npm install -g multilingual-dictionary-mcp通过 GitHub Packages
npm install -g @eyalm321/multilingual-dictionary-mcp --registry=https://npm.pkg.github.comClaude Desktop / Claude Code 配置
{
"mcpServers": {
"multilingual-dictionary": {
"command": "npx",
"args": ["-y", "multilingual-dictionary-mcp"]
}
}
}Related MCP server: word-orb
工具
多语言词汇关系 (ConceptNet)
所有这些工具都接受 word(单词)、ISO 639-1 language(语言)代码(默认为 en)以及 limit(限制)。适用于英语、西班牙语、法语、德语、意大利语、俄语、希伯来语、阿拉伯语、拉丁语、中文、日语等 70 多种语言。
工具 | 描述 |
| 意思相近的词 |
| 反义词 |
| 松散关联的词(RelatedTo 边) |
| 更广泛/父级概念(狗 → 哺乳动物) |
| 更具体/子级概念(狗 → 贵宾犬) |
| 部分/组件(汽车 → 车轮) |
| 包含此项的整体(车轮 → 汽车) |
| 词源词根 |
| 跨语言的同源词和共享词根 |
| 典型用途(刀 → 切割) |
| 典型动作(狗 → 吠叫) |
| 典型位置(书 → 图书馆) |
| 跨语言同义词 — 翻译单词 |
| 一次调用获取单词的所有关系 |
定义与词源 (Wiktionary)
工具 | 描述 |
| 按语言分组的定义(通过 en.wiktionary 支持 4000 多种语言) |
| 来自任何 Wiktionary 版本的简短纯文本摘要 |
| 词源部分,纯文本 |
| 发音部分(通常为 IPA) |
| 在 Wiktionary 版本中搜索匹配页面 |
| 来自任何 Wiktionary 版本的随机单词 |
英语专用工具 (Datamuse)
工具 | 描述 |
| 完全或近乎押韵的词 |
| 同音词 / 听起来相似的词 |
| 基于机器学习的“意思大致相同” — 比同义词范围更广 |
| 使用 |
| 自动补全 |
| 统计学上关联的词(牛 → 牛奶、农场) |
| 通常跟在后面的词(喝 → 咖啡) |
| 通常出现在前面的词(观众 → 俘虏) |
缓存管理
工具 | 描述 |
| 检查内存中响应缓存的命中/未命中/大小情况 |
| 通过清除缓存强制进行新的上游查询 |
缓存
每次成功的上游响应都会在服务器进程的生命周期内缓存在内存中,并以完整的请求 URL 作为键。同一会话内的后续相同调用将立即返回,而无需再次访问 ConceptNet/Wiktionary/Datamuse。
默认 TTL:24 小时
默认最大条目数:5000(LRU 淘汰机制)
dictionary_random禁用缓存(因为它本应是随机的)无磁盘持久化 — 缓存会在每次服务器启动时重建
通过环境变量进行调整:
MDM_DISABLE_CACHE=true # turn caching off
MDM_CACHE_TTL_MS=3600000 # 1 hour TTL
MDM_CACHE_MAX_ENTRIES=10000 # bigger cache示例
> 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 the word "serendipity"?
[uses dictionary_etymology]
> Find me words that rhyme with "orange"
[uses dictionary_rhymes]
> What are the parts of a bicycle?
[uses dictionary_meronyms with word: "bicycle"]开发
npm install
npm run build # TypeScript compile
npm test # vitest run
npm run test:watch # vitest watch
npm run dev # ts-node entry point项目布局
src/
├── index.ts # MCP server entry
├── client.ts # HTTP wrappers for ConceptNet / Wiktionary / Datamuse
├── tools/
│ ├── relations.ts # ConceptNet-backed multilingual relation tools
│ ├── definitions.ts # Wiktionary-backed definition/etymology tools
│ └── english.ts # Datamuse-backed English utilities
└── __tests__/ # vitest specsCI / 发布
CI 在每次推送到
main分支以及提交 PR 时运行,基于 Node 20 和 22。发布 在发布 GitHub Release 时运行 — 执行测试、构建,然后发布到 npm(作为
multilingual-dictionary-mcp)和 GitHub Packages(作为@eyalm321/multilingual-dictionary-mcp)。
发布步骤:
在
package.json中增加version并提交。打标签并推送(例如
git tag v0.1.1 && git push --tags)。创建指向该标签的 GitHub Release — 发布工作流将处理其余事项。
发布工作流需要两个仓库密钥:NPM_TOKEN(npm 自动化令牌)和 GITHUB_TOKEN(由 GitHub Actions 自动提供)。
许可证
MIT © Eyalm321
Available Tools
28 toolsdictionary_all_relationsC
All edges (every relation type) for a word in one call from offline ConceptNet.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| language | No | en | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fails to disclose behavioral traits such as potential large result sets or performance implications. It merely states the function without detailing side effects, security, or data handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short (one sentence), which is concise but insufficient. It front-loads the purpose but omits critical details, making it under-specified rather than efficiently informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (3 params, no output schema, no annotations), the description is highly incomplete. It does not explain return structure, parameter usage, or how it compares to alternatives, leaving the agent with minimal context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description adds no meaning to the parameters (word, language, limit). It does not explain how parameters affect results or provide formatting guidance, leaving the agent to rely solely on the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves all edges (every relation type) for a word, distinguishing it from sibling tools that focus on specific relations. However, it lacks explicit mention of the source (ConceptNet) and the offline nature, which are hinted but not fully explained.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus the many siblings. The description does not explain scenarios where fetching all relations is preferred over specific types, nor does it mention any prerequisites or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_antonymsB
Get antonyms (opposites) for a word in any language using offline ConceptNet.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| language | No | en | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description carries full burden. It mentions 'offline ConceptNet' but does not disclose whether it is read-only, any authentication needs, rate limits, or behavior when words are not found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the main purpose. It lacks elaboration on parameters but remains appropriately brief.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, no annotations, and three parameters, the description is too sparse. It does not cover return format, parameter details, or behavioral context needed for correct use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%; the description adds no meaning beyond the schema. The 'limit' and 'language' parameters are left unexplained, leaving gaps in understanding effects and valid inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets antonyms for a word, specifying the resource (antonyms) and scope (any language, offline ConceptNet). It distinguishes well from sibling tools like dictionary_synonyms or dictionary_hyponyms.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Context is clear: use when you need antonyms for a word. However, it does not explicitly mention when not to use it or name alternatives like dictionary_synonyms for related tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_at_locationB
Typical locations (AtLocation) via offline ConceptNet. E.g. book -> library.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| language | No | en | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only mentions 'offline ConceptNet' without behavioral details like read-only nature, authentication needs, or limits. Does not disclose return format or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise and front-loaded with key information. However, it could include parameter hints without becoming verbose, earning a slight deduction from maximum.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, no annotations, and minimal description leave significant gaps. An AI agent would lack understanding of output structure, error conditions, or how to specify language/limit parameters effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage; description does not explain parameters beyond the example. word is required but not clarified, language default 'en' not mentioned, limit range (1-1000) not indicated.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description explicitly states the tool retrieves typical locations (AtLocation) using ConceptNet, with a clear example 'book -> library'. It distinguishes itself from sibling tools by specifying the relation type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage from name and description (find locations for a word), but no explicit guidance on when to use this tool versus alternatives like dictionary_used_for or dictionary_related. No when-not-to-use conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_capable_ofB
Typical actions (CapableOf) via offline ConceptNet. E.g. dog -> bark.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| language | No | en | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description must carry full burden. It mentions 'offline ConceptNet' implying a knowledge base lookup, but fails to disclose behaviors like what happens if the word is not found, whether it mutates state, or any latency/permissions considerations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and to the point, with an illustrative example. No unnecessary words, though it could benefit from a structured format (e.g., listing parameters briefly).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple (1 required param, no output schema), the description lacks details on return format, error handling, or pagination (if any). It provides a minimal but functional explanation, leaving some ambiguity for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, yet description only addresses the 'word' parameter via example. It does not explain the 'language' or 'limit' parameters (e.g., default values, range for limit). The description adds minimal value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves typical actions (CapableOf) using ConceptNet, with a concrete example (dog -> bark). This specific verb-resource combination and example effectively distinguish it from sibling tools like synonyms or antonyms.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description hints at usage via example but provides no explicit guidance on when to use this tool versus alternatives (e.g., dictionary_used_for, dictionary_at_location). No exclusions or when-not-to-use scenarios are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_derived_fromC
Derivation relations via offline ConceptNet DerivedFrom.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| language | No | en | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose any behavioral traits such as read-only nature, output structure, or side effects. This is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, but it lacks necessary detail. It is not structured to convey key information efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 3 parameters and no output schema, the description is far from complete. It does not explain return values, edge cases, or the nature of derivation relations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no meaning beyond the schema. Schema coverage is 0%; limit, language, and word are not explained. The word 'derivation' is vague.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns derivation relations from ConceptNet, which is specific. However, it does not differentiate from close siblings like etymologically_related.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus the many sibling relation tools. The description provides no context for choosing this over alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_etymologyA
Return etymology text for a word from the offline Wiktextract corpus.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | The word to look up | |
| language | No | ISO 639-1 language code | en |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility for behavioral disclosure. It indicates a read operation returning text from an offline corpus, which is transparent about safety, but does not specify behavior for unknown words (e.g., empty string or error) or mention that no network is needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that conveys all necessary information without any redundant or extraneous text. It is optimally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with no output schema, the description adequately covers the source and return type. However, it could be more complete by indicating whether multiple etymologies are returned or the format of the text (e.g., plain text). Overall, it is sufficiently complete given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides complete descriptions for both parameters (word and language) with 100% coverage. The description adds no additional semantic meaning beyond the schema, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns etymology text for a word from the offline Wiktextract corpus, using a specific verb and resource. It effectively distinguishes from sibling tools like dictionary_synonyms or dictionary_lookup by focusing on etymology.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through the tool name and purpose (etymology lookups), but it lacks explicit guidance on when to use this tool versus alternatives such as dictionary_etymologically_related or dictionary_lookup. No when-not-to-use or prerequisite information is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_holonymsB
Holonyms (wholes that contain this word) via offline ConceptNet reverse PartOf.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| language | No | en | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only hints at data source. Does not disclose read-only nature, side effects, or any constraints beyond the input schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence front-loads the core purpose and data source. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, no annotations, and many sibling tools, the description is too sparse. Missing details on return format, edge cases, and how it compares to other relation tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but parameter names (word, language, limit) are self-explanatory. Description adds minimal value: the word parameter is the term to look up, language defaults to en, limit defaults to 50.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it retrieves holonyms (wholes containing the word) and mentions the data source (ConceptNet reverse PartOf). Distinguishes from sibling tools like hyponyms or meronyms, though could be more explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage: when looking for wholes that contain a given word. No explicit when-to-use or alternatives guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_hypernymsA
Hypernyms (broader concepts) via offline ConceptNet IsA. E.g. dog -> mammal.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| language | No | en | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the lookup is offline ('via offline ConceptNet IsA'), which is useful. However, it doesn't mention behavior for missing words, rate limits, or other potential issues. Given the simplicity, minimal disclosure is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: a single sentence plus an example. No filler or redundant information. Every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (3 straightforward parameters, no output schema), the description provides the essential purpose and an example. It is fairly complete for an agent to understand and invoke the tool correctly, though additional info on language/limit would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, and the description adds no parameter details beyond an example that implies the 'word' parameter. It does not explain 'language', 'limit', or their defaults/ranges. The example is helpful but insufficient to fully compensate for the lack of schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool returns hypernyms (broader concepts) using offline ConceptNet IsA, with a concrete example ('dog -> mammal'). This distinguishes it from sibling tools like hyponyms, synonyms, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly indicates when to use (when broader concepts are needed) via the term 'hypernyms' and the example, but does not explicitly state when not to use or name alternative tools. Still, it is clear enough for an agent familiar with the domain.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_hyponymsB
Hyponyms (narrower concepts) via offline ConceptNet IsA. E.g. dog -> poodle.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| language | No | en | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It mentions 'offline ConceptNet IsA' but does not disclose limitations, data freshness, performance characteristics, or error handling. Minimal behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single concise sentence followed by a helpful example. No superfluous text; every element serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple lookup with few parameters, but lacks information on return format or behavior when no results are found. Since no output schema exists, a brief return description would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%; description adds no parameter explanation beyond the example implicitly showing 'word'. Language and limit parameters are not explained, leaving their meaning and constraints undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool returns hyponyms (narrower concepts) using ConceptNet's IsA relation, with a clear example ('dog -> poodle'). This differentiates it from siblings like dictionary_hypernyms or dictionary_synonyms.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. While the name and description imply it's for hyponyms, given many sibling tools for other relations, the absence of usage context reduces clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description fully discloses key behaviors: returns immediately, runs in background, idempotent, no-op if download in progress. This goes beyond basic expectations for a trigger tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each essential: action, return behavior, idempotency, and reference to sibling. No wasted words; front-loaded with the action verb.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless tool with no output schema, the description covers what it does, how it behaves, and directs to a sibling for follow-up. It is self-contained and sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters, the input schema is fully covered. The description adds no parameter details as none exist, which is appropriate. Baseline 4 for 0-param tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool starts or re-triggers an offline data download, using specific verbs ('kick off', 're-trigger') and resource ('offline data download'), and distinguishes itself from sibling 'dictionary_status' which tracks progress.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explains when to use the tool (to start or retrigger download), mentions it's idempotent and safe to call repeatedly, and directs to 'dictionary_status' for progress. It lacks explicit exclusion of other scenarios, but the guidance is clear for common use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | The word to look up | |
| language | No | Filter to a specific ISO 639-1 language code. Omit to return entries in all languages. | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the offline nature of the corpus, the scale, and the return fields. It does not mention potential limitations like rate limits or the fact that the corpus is static, but it adequately describes the tool's behavior for a lookup operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences efficiently convey action, corpus, and return fields with precise numbers. No redundancy, every phrase adds value. The structure is front-loaded with the primary verb ('look up definitions').
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description fully covers what the tool returns (POS, definitions, IPA, etymology, translations) and the scope (offline corpus with language coverage). Sufficient for an agent to decide to use this tool for word definitions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67% (word and language have descriptions, limit does not). The description adds context about the corpus beyond schema but does not elaborate on parameters. For 'language', it mentions filtering by ISO 639-1 code, which matches the schema. The limit parameter is not discussed, but its default and range are in schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool looks up definitions for a word from the offline Wiktextract corpus, specifying the scale (4,755 languages, 10.5M entries) and the return fields (part-of-speech, definitions, IPA, etymology, translations). This distinguishes it from sibling tools like 'dictionary_synonyms' or 'dictionary_etymology'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a comprehensive definition is needed, but does not explicitly contrast with sibling tools. However, the list of return fields (definitions, IPA, etymology, translations) makes it clear this is the general lookup, covering many use cases. No explicit when-not-to-use guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The word or phrase | |
| language | No | ISO 639-1 language code | en |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description discloses offline processing and embedding cosine method, adding transparency beyond the schema, but lacks details on failure modes or performance.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences effectively convey purpose and key capability (multilingual) without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists; description does not specify return format beyond implied list. Adequate for a similarity search tool but could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67% (query and language described, limit not). Description adds that language works with 78 languages via Numberbatch, but no extra detail on query or limit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it finds words/phrases meaning approximately the same as input via embedding cosine, distinguishing from exact synonyms. Mentions multilingual support, differentiating from other dictionary tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for approximate meaning across languages but does not explicitly state when not to use or alternatives like synonyms or semantic neighbors.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_meronymsC
Meronyms (parts/components) via offline ConceptNet PartOf. E.g. car -> wheel.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| language | No | en | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only mentions 'offline' but lacks details on behavior like error handling, rate limits, or result format for missing words.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short, direct sentences with no unnecessary text. Front-loaded with purpose and example.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Missing output schema and annotations; description does not explain return structure, error cases, or handling of edge cases (e.g., non-English words). Incomplete for a 3-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage and the description adds no parameter details (e.g., what 'word', 'language', or 'limit' mean). The example is insufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool retrieves meronyms (parts) via ConceptNet and gives an example (car -> wheel). Distinguishes from siblings like hypernyms/hyponyms.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use meronyms versus other relation tools (e.g., holonyms, hypernyms). The description does not specify context or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_pronunciationB
Return IPA pronunciation(s) for a word from the offline Wiktextract corpus.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | The word to look up | |
| language | No | ISO 639-1 language code | en |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only mentions 'offline Wiktextract corpus'. It does not disclose behavior such as error handling for missing words, case sensitivity, return format, or whether multiple pronunciations are returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 9 words, no redundancy. Every word is necessary and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description does not explain return format, error behavior, or what 'pronunciation(s)' entails. The tool is relatively simple but missing key details for an agent to fully understand its behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with descriptions for both parameters (word, language). The description adds no further value beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool returns IPA pronunciation(s) for a word from the offline Wiktextract corpus. The verb 'Return' and resource 'IPA pronunciation(s)' make the purpose specific and distinct from sibling tools like dictionary_synonyms or dictionary_etymology.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., dictionary_lookup, dictionary_phonetic). The description does not provide context for selection or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_randomA
Return a random word entry from the offline Wiktextract corpus, optionally filtered to a language.
| Name | Required | Description | Default |
|---|---|---|---|
| language | No | Filter to a specific ISO 639-1 language code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description carries full burden. It discloses the core behavior (random selection, optional language filter) but omits details on randomness nature, data size, or performance implications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 13 words, front-loads the main action, no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one optional parameter and no output schema, the description adequately explains its purpose and filter option. Minor gap: does not clarify what 'entry' includes (e.g., full dictionary entry or just word).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%; the parameter 'language' is already well-described in the schema. The description adds no additional semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Return', the resource 'random word entry', source 'offline Wiktextract corpus', and optional filter 'language'. It distinguishes from sibling tools which focus on specific linguistic relations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance provided on when to use this tool versus alternatives like dictionary_lookup or dictionary_search. Lacks context for appropriate usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_rhymesA
Find words that rhyme with the input word. English only — backed by the offline CMU Pronouncing Dictionary.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| limit | No | ||
| perfect | No | Perfect rhymes (true) vs near rhymes (false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits. It mentions reliance on the offline CMU Pronouncing Dictionary and English-only support, which is helpful. However, it does not discuss what happens if a word is not found, response format, or any side effects, leaving gaps for an agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences: the first states the core function, the second adds context. It is front-loaded, efficient, and contains no extraneous information, making it easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 3 parameters, no output schema, and no annotations, the description provides the essential purpose and language constraint but lacks completeness in terms of parameter behavior, return expectations, and error handling. It is minimally viable but could do more.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% (only 'perfect' has a description). The tool description adds no parameter information beyond the schema. While the schema includes defaults and constraints, the description does not elaborate on what 'word' expects or how 'limit' affects results, requiring the agent to infer.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Find words that rhyme with the input word.' It uses a specific verb and resource, and distinguishes from siblings like 'dictionary_synonyms' by focusing on rhymes. This is precise and immediately understandable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies 'English only,' which sets a clear language constraint. It does not explicitly contrast with sibling tools like 'dictionary_sounds_like,' but the purpose is specific enough that an agent can infer when to use this tool for rhyming queries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_searchA
Prefix-search the offline Wiktextract corpus for words matching a query. Useful when you don't know the exact spelling.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Prefix to search for | |
| language | No | Filter to a specific ISO 639-1 language code | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions 'prefix-search' and 'offline' but does not disclose the output format (e.g., list of words, definitions), behavior on no results, or any rate limits. For a search tool, more transparency about results is needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the action and resource. It front-loads the verb 'Prefix-search' and provides essential context without extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 3 parameters and no output schema, the description adequately explains the purpose but lacks details about return values or limitations. It mentions offline corpus but not pagination or empty results. Completeness is adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67% (2 of 3 parameters have descriptions). The description adds context for the 'query' parameter (prefix-search) but not for 'limit' or 'language' beyond what the schema provides. Baseline 3 due to coverage, with minor added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: prefix-search the offline Wiktextract corpus for words. It distinguishes from siblings like dictionary_lookup (exact match) and dictionary_spelled_like (similar spelling) by specifying 'prefix-search' and the use case for unknown spelling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes a usage hint ('Useful when you don't know the exact spelling'), which helps the agent decide when to use this tool. However, it does not explicitly mention when not to use it or compare with sibling tools like dictionary_suggest or dictionary_random.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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).
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| language | No | Source language ISO 639-1 code | en |
| targetLanguage | No | If set, only return neighbors in this language (cross-lingual semantic search). | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behavior: embedding-based, multilingual (78 languages), sorted by cosine similarity. With no annotations, this is good but could mention constraints like computational cost or that it returns only words (no scores).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with key information front-loaded. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a search tool but missing output format details (e.g., returns list of words and/or similarity scores). Given no output schema, description should elaborate on what the return looks like.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers language and targetLanguage with descriptions. Description adds context (Numberbatch, cosine similarity) but does not explain word format or limit behavior. At 50% schema coverage, description partially compensates but not fully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it returns embedding-based nearest neighbors across same or different languages, sorted by cosine similarity. This distinguishes it from siblings like dictionary_synonyms or dictionary_related, which are not explicitly embedding-based or cross-lingual.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies it is for semantic similarity and cross-lingual search, but does not explicitly state when to use it versus alternatives like dictionary_synonyms. No guidance on when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_sounds_likeB
Find English words that sound similar to the input (homophones / soundalikes) via offline CMU dict.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. It mentions offline CMU dict usage but fails to describe output format, error behavior for missing words, or limitations. This lack of detail leaves the agent uncertain about side effects or edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys the core purpose. However, it could be restructured to include parameter details without losing conciseness. Still, no extraneous information is present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of output schema, annotations, and parameter descriptions, the description should provide more context. It does not explain return format, error cases, or usage scenarios, leaving the tool under-specified for agents, especially given the large number of sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must compensate. It only references the 'input' word parameter but omits the 'limit' parameter entirely, offering no additional meaning beyond the schema. The limit parameter's purpose and behavior remain unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Find', the resource 'English words that sound similar', and specifies it is for homophones/soundalikes using offline CMU dict. It distinguishes itself from sibling tools like dictionary_rhymes (rhyming) and dictionary_spelled_like (spelling similarity).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for finding homophones but does not explicitly state when to use it versus alternatives such as dictionary_rhymes or dictionary_pronunciation. No exclusions or context are provided to guide selection among many phonetic siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_spelled_likeA
Find English words matching a spelling pattern via offline CMU dict. '?' = any single letter, '*' = any zero+ letters. Useful for crosswords.
| Name | Required | Description | Default |
|---|---|---|---|
| pattern | Yes | Spelling pattern (e.g. 'h?llo', 'hel*', 'p*p') | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It reveals the offline nature and wildcard behavior but does not disclose response format, no-match behavior, or case sensitivity. Adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. Front-loaded with purpose, then critical details (wildcards) and a usage hint. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with two parameters. No output schema, so description could clarify return format (e.g., 'returns a list of matched words'), but the core functionality is well covered. Given the low complexity, it is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema describes 'pattern' with examples and 'limit' with defaults. The description adds wildcard semantics beyond the schema, but 'limit' gets no extra explanation. Schema coverage is 50%, and the description compensates partially.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it finds English words by spelling pattern, explaining wildcards '?' and '*'. It distinguishes itself from siblings (e.g., dictionary_rhymes, dictionary_sounds_like) by focusing on pattern matching. However, it could be more explicit about being a pattern-based search tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions usefulness for crosswords, implying a use case, but does not explicitly state when to use this tool over alternatives. Sibling tools like dictionary_lookup or dictionary_means_like are not compared, leaving the agent to infer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Describes availability ('always available even before bundle finishes') and lists all returned fields. Adds context beyond the input schema (which is empty). No annotations provided but description compensates well.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, first stating purpose, second listing outputs. Front-loaded, no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters and no output schema, the description fully covers what the tool does and returns. It mentions always-available behavior, which is important context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so the description has no need to add parameter info. Baseline for 0 parameters is 4. Description does not clutter with irrelevant detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the verb 'Get' and resource 'current state of the offline data installation'. Distinguishes from sibling 'dictionary_install' by focusing on status rather than installation. Specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage for checking installation status, but does not explicitly exclude or contrast with siblings like 'dictionary_install'. Lacks direct guidance on when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_suggestA
Get autocomplete suggestions for a partial English word via offline CMU dict (shortest matches first).
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | Yes | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description mentions offline source and ordering but lacks disclosure about read-only nature, latency, or return format. Without annotations, more behavioral context (e.g., 'no modifications made') would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, concise and front-loaded with key information. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter tool with no output schema, the description covers purpose, source, and ordering. However, omitting return format and limit details prevents full completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage, so description must compensate. It clarifies that 'prefix' is a partial word and hints at ordering, but does not explain 'limit' beyond its schema constraints. Adding 'maximum number of suggestions' would raise score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool provides autocomplete suggestions for a partial English word, specifying the data source (offline CMU dict) and ordering (shortest matches first). This distinguishes it from sibling tools like dictionary_lookup or dictionary_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. With many sibling tools, the description should at least hint at use cases (e.g., 'for autocomplete when typing') or mention when not to use it (e.g., 'not for exact word lookup').
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | The word to look up | |
| language | No | ISO 639-1 language code | en |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior. It correctly notes the operation is a read ('Get'), uses offline data, and concatenates first definitions—key behavioral traits. However, it does not specify return format (e.g., plain string vs. list) or error handling for missing words, which slightly reduces transparency. Still, for a simple lookup tool, the disclosure is largely adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two short sentences, the first conveying the main purpose and scope, the second adding a detail on how the summary is assembled. Every word serves a purpose, and there is no extraneous information. The structure is front-loaded, making it easy for an agent to quickly grasp functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema, the description could explain what the return value looks like (e.g., string format, presence of empty results). It currently says 'brief plain-text summary' but no structure or error behavior. For a simple tool with many siblings, this is minimally adequate but leaves gaps about what exactly the agent receives.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds no information beyond what the schema already provides for 'word' and 'language'. The schema descriptions are clear: 'word' is the term to look up, 'language' is an ISO code with default 'en'. Since the description does not enhance understanding of parameter meaning or usage, it meets the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('a brief plain-text summary of a word's senses'), and the data source ('offline Wiktextract data'). It further specifies how the summary is generated ('concatenates the first definition of each sense'), distinguishing it from siblings like dictionary_lookup (full entries) or dictionary_synonyms (synonyms only). This makes the purpose precise and differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as dictionary_lookup or dictionary_search. It does not mention prerequisites, contexts where a summary is preferable, or cases where this tool should be avoided. The usage context is only implied by the tool's name and description, leaving the agent to infer when to invoke it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_synonymsA
Get synonyms for a word in any language using the offline ConceptNet 5.7 SQLite (24M edges, 80+ languages).
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | The word to look up | |
| language | No | ISO 639-1 language code | en |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden of transparency. It notes the tool is offline and supports 80+ languages, implying a read-only operation. However, it does not mention behavior for unknown words, performance, or result format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the core purpose and context. It is front-loaded with the verb 'Get' and quickly adds technical detail. Could be slightly expanded for structure but remains clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple lookup tool with 3 parameters and no output schema, the description provides adequate context: offline resource, edge count, and language support. It does not describe the output format, but that is often inferred for synonym retrieval.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers 2 of 3 parameters with descriptions (word, language). The description only adds 'any language' nuance but does not explain the 'limit' parameter beyond its schema constraints. With 67% schema coverage, the description adds minimal value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get synonyms for a word in any language', specifying both the action and resource. The mention of 'offline ConceptNet 5.7 SQLite' provides context that distinguishes it from sibling tools like dictionary_antonyms or dictionary_hypernyms.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
While the description implies the tool is for synonym lookup, it offers no explicit guidance on when to use this vs. alternatives (e.g., dictionary_all_relations, dictionary_lookup). No 'when not to use' or context for excluding other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_translateC
Translate a word to another language via offline ConceptNet's cross-lingual Synonym links. Returns the same concept expressed in different languages.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| language | No | Source language ISO 639-1 code | en |
| targetLanguage | No | Target language ISO 639-1 code (omit for translations in all available languages) | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry behavioral burden. It mentions offline ConceptNet but does not disclose limitations, error handling, supported languages, or output format. Minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence front-loading the main action. No wasted words, but could be slightly more efficient by combining ideas. Overall well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters, no annotations, no output schema, and many sibling tools, the description lacks crucial context about usage, results, and limitations. Incomplete for effective tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50% (language and targetLanguage described). The description adds no parameter context beyond the schema, failing to compensate for the undocumented 'word' and 'limit' parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool translates a word using ConceptNet's cross-lingual synonym links, distinguishing it from other relation tools. The verb 'translate' and resource 'word' are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives like dictionary_synonyms or dictionary_lookup. Does not mention when to avoid or provide context for choosing this over other translation methods.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dictionary_used_forB
Typical uses (UsedFor) via offline ConceptNet. E.g. knife -> cutting.
| Name | Required | Description | Default |
|---|---|---|---|
| word | Yes | ||
| language | No | en | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions the data source ('offline ConceptNet') but lacks details on behavior such as whether results are limited to specific parts of speech, how non-existence is handled, or if the tool is read-only. Without annotations, this is a modest disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one sentence with an example, using only 13 words. It efficiently conveys purpose and an illustrative instance without any filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity and the absence of output schema, the description hints at the return format (uses like 'cutting') but does not specify the response structure or edge cases. It is adequate but not fully self-contained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description does not explain any of the three parameters. While 'word' and 'language' are somewhat inferable, 'limit' is not defined, and all three lack explicit semantic clarification beyond the tool name.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns 'Typical uses (UsedFor)' via ConceptNet, with the example 'knife -> cutting' illustrating the relational output. This verb+resource combination effectively distinguishes it from siblings like 'dictionary_synonyms' or 'dictionary_hypernyms'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention any contextual signals or explicitly state that this tool is for finding typical uses as opposed to other semantic relations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
32 tool updates
v0.3.4- Changed
dictionary_all_relations3 fields changed- removed
Input schema / properties / language / descriptionRemoved value: -"ISO 639-1 language code" - removed
Input schema / properties / limit / descriptionRemoved value: -"Maximum number of edges to return" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to look up"
- Changed
dictionary_antonyms2 fields changed- removed
Input schema / properties / language / descriptionRemoved value: -"ISO 639-1 language code" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to look up"
- Changed
dictionary_at_location2 fields changed- removed
Input schema / properties / language / descriptionRemoved value: -"ISO 639-1 language code" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to look up"
- Removed
dictionary_cache_clear - Removed
dictionary_cache_stats - Changed
dictionary_capable_of2 fields changed- removed
Input schema / properties / language / descriptionRemoved value: -"ISO 639-1 language code" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to look up"
- Changed
dictionary_derived_from2 fields changed- removed
Input schema / properties / language / descriptionRemoved value: -"ISO 639-1 language code" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to look up"
- Changed
dictionary_etymologically_related2 fields changed- removed
Input schema / properties / language / descriptionRemoved value: -"ISO 639-1 language code" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to look up"
- Changed
dictionary_etymology2 fields changed- added
Input schema / properties / languageAdded value: +{ + "default": "en", + "description": "ISO 639-1 language code", + "type": "string" +} - removed
Input schema / properties / wiktionaryLanguageRemoved value: -{ - "default": "en", - "description": "Which Wiktionary edition to query", - "type": "string" -}
- Removed
dictionary_follows - Changed
dictionary_holonyms2 fields changed- removed
Input schema / properties / language / descriptionRemoved value: -"ISO 639-1 language code" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to look up"
- Changed
dictionary_hypernyms2 fields changed- removed
Input schema / properties / language / descriptionRemoved value: -"ISO 639-1 language code" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to look up"
- Changed
dictionary_hyponyms2 fields changed- removed
Input schema / properties / language / descriptionRemoved value: -"ISO 639-1 language code" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to look up"
- Added
dictionary_install - Changed
dictionary_lookup2 fields changed- changed
Input schema / properties / language / descriptionPrevious value: -"Filter results to a specific language ISO 639-1 code (e.g. 'en', 'es', 'la'). Omit to return entries for all languages."New value: +"Filter to a specific ISO 639-1 language code. Omit to return entries in all languages." - added
Input schema / properties / limitAdded value: +{ + "default": 100, + "maximum": 500, + "minimum": 1, + "type": "integer" +}
- Changed
dictionary_means_like2 fields changed- removed
Input schema / properties / includeDefinitionsRemoved value: -{ - "default": false, - "description": "Include short definitions in results", - "type": "boolean" -} - added
Input schema / properties / languageAdded value: +{ + "default": "en", + "description": "ISO 639-1 language code", + "type": "string" +}
- Changed
dictionary_meronyms2 fields changed- removed
Input schema / properties / language / descriptionRemoved value: -"ISO 639-1 language code" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to look up"
- Removed
dictionary_precedes - Changed
dictionary_pronunciation2 fields changed- added
Input schema / properties / languageAdded value: +{ + "default": "en", + "description": "ISO 639-1 language code", + "type": "string" +} - removed
Input schema / properties / wiktionaryLanguageRemoved value: -{ - "default": "en", - "description": "Which Wiktionary edition to query", - "type": "string" -}
- Changed
dictionary_random2 fields changed- added
Input schema / properties / languageAdded value: +{ + "description": "Filter to a specific ISO 639-1 language code", + "type": "string" +} - removed
Input schema / properties / wiktionaryLanguageRemoved value: -{ - "default": "en", - "description": "Which Wiktionary edition to query", - "type": "string" -}
- Changed
dictionary_related2 fields changed- removed
Input schema / properties / language / descriptionRemoved value: -"ISO 639-1 language code" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to look up"
- Changed
dictionary_rhymes2 fields changed- changed
Input schema / properties / perfect / descriptionPrevious value: -"Perfect rhymes (true) vs near/approximate rhymes (false)"New value: +"Perfect rhymes (true) vs near rhymes (false)" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to rhyme with"
- Changed
dictionary_search5 fields changed- added
Input schema / properties / languageAdded value: +{ + "description": "Filter to a specific ISO 639-1 language code", + "type": "string" +} - changed
Input schema / properties / limit / defaultPrevious value: -10New value: +20 - changed
Input schema / properties / limit / maximumPrevious value: -50New value: +100 - changed
Input schema / properties / query / descriptionPrevious value: -"Search query"New value: +"Prefix to search for" - removed
Input schema / properties / wiktionaryLanguageRemoved value: -{ - "default": "en", - "description": "Which Wiktionary edition to search", - "type": "string" -}
- Added
dictionary_semantic_neighbors - Changed
dictionary_sounds_like1 field changed- removed
Input schema / properties / word / descriptionRemoved value: -"The word to find soundalikes for"
- Added
dictionary_status - Changed
dictionary_suggest1 field changed- removed
Input schema / properties / prefix / descriptionRemoved value: -"Partial word to complete"
- Changed
dictionary_summary2 fields changed- added
Input schema / properties / languageAdded value: +{ + "default": "en", + "description": "ISO 639-1 language code", + "type": "string" +} - removed
Input schema / properties / wiktionaryLanguageRemoved value: -{ - "default": "en", - "description": "Which Wiktionary edition to query (e.g. 'en' for en.wiktionary.org, 'es' for es.wiktionary.org)", - "type": "string" -}
- Changed
dictionary_synonyms2 fields changed- changed
Input schema / properties / language / descriptionPrevious value: -"ISO 639-1 language code (e.g. 'en', 'es', 'fr', 'it', 'he', 'ar', 'la', 'zh', 'ja')"New value: +"ISO 639-1 language code" - removed
Input schema / properties / limit / descriptionRemoved value: -"Maximum number of results to return"
- Changed
dictionary_translate2 fields changed- changed
Input schema / properties / targetLanguage / descriptionPrevious value: -"Target language ISO 639-1 code (omit to get translations in all available languages)"New value: +"Target language ISO 639-1 code (omit for translations in all available languages)" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to translate"
- Removed
dictionary_triggers - Changed
dictionary_used_for2 fields changed- removed
Input schema / properties / language / descriptionRemoved value: -"ISO 639-1 language code" - removed
Input schema / properties / word / descriptionRemoved value: -"The word to look up"
30 tool updates
v0.2.0- First observed
dictionary_all_relations - First observed
dictionary_antonyms - First observed
dictionary_at_location - First observed
dictionary_cache_clear - First observed
dictionary_cache_stats - First observed
dictionary_capable_of - First observed
dictionary_derived_from - First observed
dictionary_etymologically_related - First observed
dictionary_etymology - First observed
dictionary_follows - First observed
dictionary_holonyms - First observed
dictionary_hypernyms - First observed
dictionary_hyponyms - First observed
dictionary_lookup - First observed
dictionary_means_like - First observed
dictionary_meronyms - First observed
dictionary_precedes - First observed
dictionary_pronunciation - First observed
dictionary_random - First observed
dictionary_related - First observed
dictionary_rhymes - First observed
dictionary_search - First observed
dictionary_sounds_like - First observed
dictionary_spelled_like - First observed
dictionary_suggest - First observed
dictionary_summary - First observed
dictionary_synonyms - First observed
dictionary_translate - First observed
dictionary_triggers - First observed
dictionary_used_for
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
Wiktionary MCP — multilingual dictionary via Wikimedia REST + MediaWiki Action API
Dictionary MCP — wraps Free Dictionary API (free, no auth)
Words MCP — wraps Datamuse API (free, no auth required)
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 gradedqualityDmaintenanceVocabulary intelligence MCP server — 162K words, 47 languages, definitions, IPA pronunciation, etymology, translations, and daily lessons. 19 tools for AI agents.7 npm1MIT
- AlicenseAqualityCmaintenanceMCP server for the Datamuse API that enables word finding like synonyms, rhymes, autocomplete, and more.1023 npm2MIT
- AlicenseNot gradedqualityCmaintenanceMultilingual sentence corpus MCP server. Enables search, retrieval, and translation of sentences across many languages.1 npmMIT