colregs-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| evaluateA | One evaluation of the circumstances one vessel is in, under the COLREGS, with three readings. signals: every complete, lawful set of navigation lights self may show, from her fact record (propulsion, activity, position, length, and the other facts in colregs data/facts.json): the applied entries; exempted (relieved by a rel:exempts entry) and overridden (displaced by a superior obligation's rel:overrides) entries, each with the entry that did it; and lawful_displays: {count, relation, options}. relation is "none", "exactly_one" or "any_one_of". A fact record describes a situation, not a fitted vessel: colregs data/facts.json has no equipment fact, so nothing in the input can settle a choice the Rules leave to how the vessel is fitted or what the skipper elects, such as Rule 25(b), the combined masthead lantern a sailing vessel under 20 m may carry, against Rule 25(c), the all-round red over green she may add. When lawful_displays.count is greater than 1, every option is equally lawful, the correct report is all of them, and reporting any one as "the" display for this vessel is wrong. Displays are listed in the order to consider the rules in, most specific concession first, and the first is the one a vessel of that description usually shows. Each option numbers itself "n of count", names the choice entries that distinguish it (chosen) and lists its lights with their own modality, so "shall" and "may" lights in one display are never merged. optional_additions are lawful extras (relation any_subset_of) that do not multiply the display set. Every id carries its paragraph cite, and cited_paragraphs holds the verbatim text of every cited paragraph. appraisal: what Part B requires of self on her own, then against each other vessel (kind of encounter, risk of collision, each vessel's role). indicated: per other vessel, what her observed lights, shapes and sounds say she could be. appraisal and indicated are passed through from colregs-engine as returned, without the cite resolution signals has. Compliance over time is not read yet. Not for navigation. Coverage: COLREGS Part C lights only, international (high seas) text only, lights at night only (no day shapes, no sound signals, no Part B steering rules), evaluated against pre-release colregs data (0.x), whose content is still being checked. Every entry id and paragraph cite in a response is verbatim from the colregs data package; nothing is paraphrased. This tool surface is a 0.0.x preview and will change without notice. |
| rule_textA | The verbatim text of a COLREGS paragraph from colregs data/rules.json, by its cite as used in every other response here: a paragraph path such as "25(b)" or "26(c)(i)", a bare rule number such as "25" for every paragraph of that rule, or a range such as "24(a)(ii)-(iv)". The text is the International text as transcribed from the USCG amalgamated Navigation Rules; the response names the source and retrieval date. Not for navigation. Coverage: COLREGS Part C lights only, international (high seas) text only, lights at night only (no day shapes, no sound signals, no Part B steering rules), evaluated against pre-release colregs data (0.x), whose content is still being checked. Every entry id and paragraph cite in a response is verbatim from the colregs data package; nothing is paraphrased. This tool surface is a 0.0.x preview and will change without notice. |
| lightA | The definition of one light from colregs data/lights.json, verbatim: name, the Rule 21 paragraph that defines it, colour, character, arc in degrees and placement. Ids are the light ids that evaluate returns in signals, such as "light:sidelights" or "light:all_round"; the "light:" prefix is optional. Arcs use the bearing convention returned alongside. Not for navigation. Coverage: COLREGS Part C lights only, international (high seas) text only, lights at night only (no day shapes, no sound signals, no Part B steering rules), evaluated against pre-release colregs data (0.x), whose content is still being checked. Every entry id and paragraph cite in a response is verbatim from the colregs data package; nothing is paraphrased. This tool surface is a 0.0.x preview and will change without notice. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 3 tools
The three tools have clearly distinct roles: evaluate runs the COLREGS assessment engine, light returns a single light definition by id, and rule_text returns verbatim rule text by cite. Although evaluate's output references light ids and paragraph cites, there is no functional overlap with the two lookup tools.
The names are readable and all lowercase/snake_case, but they do not follow a single convention: evaluate is a verb while light and rule_text are noun-style lookup names. The mixed convention is minor given only three tools, but it is not a predictable verb_noun pattern.
Three tools is slightly thin but reasonable for a narrowly scoped COLREGS lights evaluator. Each tool serves a distinct purpose: assessment, light-definition lookup, and rule-text retrieval.
The core workflow is covered: evaluate a fact record, look up any light returned, and retrieve cited rule paragraphs. Minor gaps remain, such as no enumeration of all lights or rules and explicitly no compliance-over-time reading, but these are not fatal for the stated preview scope.