Skip to main content
Glama

Dictionary lookup

nabu_define
Read-only

Look up a lemma across local lexica in many languages, returning headword, gloss, structured entry body, and citations; filter by language, facets, or entry limit.

Instructions

Look up a lemma (dictionary form) in the dictionary shelves nabu holds locally — hundreds of lexica across many languages (LSJ, Lewis & Short, Bosworth-Toller, the Wiktionary extracts, and far more; the lang enum in this schema is the LIVE set of shelf languages, nabu_status counts the entries). The Wiktionary RECONSTRUCTION shelves (*-pro codes) are included: a LEADING ASTERISK scopes to reconstructions (*bogъ), whose entries also list their descendant reflexes with corpus attestation counts (nabu_etym walks the same crosswalk from an attested lemma). Diacritics optional (μηνις finds μῆνις); lang picks a shelf language when the spelling is ambiguous. Each entry carries headword, dictionary, license fields (PRESERVE them when quoting), a short gloss, the entry body as structured plain text (senses labeled; bounded at 6000 chars with an honest note — the CLI nabu define is unbounded), and the entry's citations: where the cited work is in the local catalog the citation carries a resolved passage urn (open it with nabu_show); otherwise resolved_urn is null and the display text stands. A PRINT citation of a reference work (a BDB page, a Wb volume/page/line, a Holder AcS volume/column) may carry scan: status (anchored/held/uncalibrated/out_of_range/not_held/unconfigured), urn (the held scan's page passage or document — null when not held), leaf, pointer. Entries may carry crossrefs — pointers to other entries, usually of the same dictionary, sometimes of another (the Strong shelf's BDB ids) (kind, label verbatim, resolved_urn of the target entry or null — open it with nabu_show). Bounded (default 3 entries, max 10; homographs are separate entries). The owner's own notes on an entry ride along in notes — useful curatorial context.

Input Schema

NameRequiredDescriptionDefault
langNoDictionary language. The enum (when present) is the LIVE set of shelves this catalog holds — e.g. grc → LSJ, lat → Lewis & Short, ang → Bosworth-Toller (Old English), chu → Wiktionary (Old Church Slavonic), *-pro → the Wiktionary reconstruction shelves.
lectNoRestrict to shelves whose (language, source) RESOLUTION is this lect id or a more specific one under it (P59-3, nabu-lects module; dictionary grain — per-source overrides included, so derom's la-vul scopes under roa, never lat). Errors if the module is not synced on this box.
lemmaYesDictionary form to look up (e.g. λόγος, virtus).
limitNoMaximum entries returned.
facetsNoEntry facet filters, an object of facet name → pattern, all required (AND) — the categorical labels dictionaries attach per entry: JMdict's domain / usage / dialect / loan_source, WOLD's semantic_field / word_class / borrowed_status, TLS's concept. {"domain": "Buddhism"} keeps only Buddhist-domain senses. The pattern matches the value or its ref case-insensitively; LIKE % patterns pass through. At most 8 pairs; untagged entries fall out.
include_restrictedNoAlso serve research_private/restricted material. Default false and deliberately so: this surface must never leak private or license-restricted texts casually. Set true only when the requester understands and will honor the restriction.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.7.0

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint, and the description adds real behavioral context: entry body bounded at 6000 chars (CLI `nabu define` unbounded), default 3 / max 10 entries with homographs as separate entries, citations may have null resolved_urn, scan statuses, and include_restricted is deliberately off to avoid leaking private/license-restricted material. It also warns that `lect` errors if the nabu-lects module is not synced.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded, but the body is one dense paragraph dense with parenthetical asides (license fields, scan statuses, crossrefs, notes) that could be bulleted or trimmed. Most content earns its place, but the wall-of-text form makes it harder to scan than it needs to be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output_schema exists, and the description compensates thoroughly: it enumerates the returned fields (name, dictionary, license, summary body, citations, citations with resolved_required citationscite_id, endpoint reference, etc.), the citation and citation-resolution behavior, and the char bound. For a lookup tool with six params and rich return data, an agent has everything needed to invoke and interpret it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds meaning the schema does not carry: a LEADING ASTERISK scopes to reconstruction shelves, diacritics are optional (μηνις finds μῆνις), and `lang` disambiguates ambiguous spellings. That is genuine semantic value beyond the structured fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource: "Look up a lemma (dictionary form) in the dictionary shelves nabu holds locally." It scopes the corpus concretely (LSJ, Lewis & Short, Bosworth-Toller, Wiktionary extracts) and separates itself from nabu_search/nabu_show by naming what it returns (entries with gloss, body, citations).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives usable routing cues: open resolved passage/crossref URNs with nabu_show, walk the reconstruction crosswalk from an attested lemma with nabu_etym, check shelf counts with nabu_status. It does not explicitly say when to prefer nabu_search or nabu_concord over this lookup, so it stops short of full when/when-not coverage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.