ngmcp defines 9 tools with consistent naming (verb_noun pattern: get_, list_, read_, follow_, search_) and clear descriptions (avg ~100 chars). All tools are READ_ONLY and well-scoped. However, parameter descriptions are minimal (often just 'Absolute path to the .ng file'), and output schemas are not documented in the visible code. The server lacks error handling guidance, recovery hints, and structured output documentation. Tool composition is sound (each does one thing), but descriptions could be more LLM-optimized per the 50-200 char baseline.
Search all entries in a Norton Guide for a query string anywhere in the body.
Follow a link in a short entry and return the target long entry.
Return metadata for a Norton Guide database file.
Search all entries in a Norton Guide for lines matching a query string.
List all entries in a Norton Guide database file.
List Norton Guide (.ng) files available to the server.
Return the menu structure of a Norton Guide database file.
Output schemas not documented. Tools return data but LLMs cannot infer field names, types, or structure for downstream chaining. E.g., list_entries and list_menus return offsets used by read_entry, but the response format is not specified.
Parameter descriptions are minimal and generic. 'Absolute path to the .ng file' appears 7 times but does not explain format constraints, whether relative paths are accepted, or what happens if the file does not exist.
No error handling guidance. Tools do not document what happens on invalid paths, missing files, invalid offsets, or malformed queries. LLMs receive no recovery hints.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 52 | 2026-07-28+ | v2 |
Return the full plain-text content of the entry at a given offset.
Return the raw source lines of the entry at a given offset.
No pagination or result limits documented. list_entries and search tools may return large result sets; no mention of limits, pagination, or how to handle thousands of matches.
Tool descriptions lack context on when to use each tool. E.g., follow_link vs read_entry distinction is unclear; line_search_guide vs body_search_guide difference is not explained.