Skip to main content
Glama

Cross-source alignment

nabu_align
Read-only

Aligns a citation, chapter, or verse range across every registered witness in the local corpus, showing each language's rendering and license, with optional witness-diff collation.

Instructions

Cross-source alignment over the local nabu corpus: one citation of a registered work rendered across EVERY witness the alignment registry names — e.g. the same New Testament verse in Greek, Latin, Gothic, Classical Armenian, and Old Church Slavonic at once. ref is a citation in the work's scheme ("MARK 2.3"; case/spacing/chapter:verse colons normalize) or a passage urn to pivot from a search/show hit. work picks the registry work when several exist (optional with one). Witnesses come in registry order; each carries its language and license_class (the NT witnesses are nc — PRESERVE the license fields when quoting), and every sentence row carries urn + language + license_class + source. Sentence≠verse: a sentence spanning a verse boundary lists every ref it covers. Honest absence: a witness lacking the verse reads status no_match; a registered-but-unsynced witness reads not_synced. ref may also be a whole CHAPTER ("JON 1") or an inclusive same-book verse RANGE ("JON 1.1-1.16"): the reply is a refs array, one entry per ref in document order (each with the same witness columns), capped at 200 with an honest truncation note. Witnesses absent from EVERY ref of a range are summarized once in absent_witnesses (reason not_attested|not_synced) and omitted from the per-ref columns, so a chapter stays readable. collate: true returns a witness DIFF instead: a raw-token apparatus per (language, script) cell (base reading + each witness's divergences), with cross-script witnesses rendered undiffed and labelled honestly — the fold cannot bridge e.g. the Cyrillic Marianus and the Helsinki-ASCII CCMH codices.

Input Schema

NameRequiredDescriptionDefault
refYesCitation in the work's scheme (e.g. "MARK 2.3"), a whole chapter ("JON 1"), an inclusive same-book verse range ("JON 1.1-1.16"), or a passage urn to pivot from.
baseNoWith collate: the base witness (label or document urn) each cell diffs against (default: the first witness in registry order).
workNoAlignment work id from the registry (optional when exactly one work is registered).
collateNoDiff the witnesses instead of listing them: a raw-token apparatus per (language, script) cell — base reading plus each witness's divergences only; cross-script witnesses rendered undiffed and labelled honestly (the fold cannot bridge e.g. the Cyrillic Marianus and the Helsinki-ASCII CCMH codices).
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.6/5.0
Behavior5/5

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

Annotations provide only readOnlyHint=true, so the description carries the behavioral load and does so thoroughly: license_class propagation with an explicit PRESERVE instruction, honest absence semantics (status no_match vs not_synced), the 200-ref truncation cap with a truncation note, the `absent_witnesses` roll-up with reason codes, and the cross-script limitation of the collate fold. These are exactly the behaviors an agent cannot infer from the schema or the readOnly hint.

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

Conciseness4/5

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

Purpose is front-loaded and almost every clause carries operational information — sentence-vs-verse semantics, absence statuses, range expansion, collate mode. The main cost is a long semicolon-chained paragraph, and the collate explanation is partly duplicated between the description body and the `collate` schema field, which slightly dilutes the density.

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?

There is no output schema, so the description must describe the return shape — and it does: witnesses in registry order, per-sentence rows carrying urn/language/license_class/source, the `refs` array for chapter and range queries, `absent_witnesses` with reason codes, and the cell-based diff structure for collate. For a five-parameter, multi-mode tool this is complete enough to invoke correctly without guessing.

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; the description earns above that by adding normalization rules the schema omits (case/spacing/chapter:verse colons normalize), clarifying that a single `ref` may expand into a `refs` array for chapters and ranges, and noting that range results cap at 200. It also reinforces that `work` is optional with a single registered work and that `collate` changes the shape of the reply rather than just a flag.

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?

States a specific verb and resource — cross-source alignment of one citation across every registered witness — with a concrete example (the same NT verse in Greek, Latin, Gothic, Armenian, Slavonic). That is clearly distinct from sibling operations like nabu_search, nabu_show, nabu_parallels, and nabu_concord, which either retrieve, compare, or search rather than render one citation across aligned witnesses.

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 real usage context: `ref` may be a citation in the work's scheme or 'a passage urn to pivot from a search/show hit', which tells the agent how this composes with nabu_search/nabu_show. It also explains that `work` is only needed when several works exist and that `collate: true` switches to a diff rather than a listing. It stops short of explicit when-not-to-use guidance or naming a sibling alternative, so it is clear context without exclusions.

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