Standalone Corsen Context example for the Next.js App Router. Provides read-only MCP tools for searching, retrieving, and listing public website content.
Four tools with minimal descriptions (10-30 chars each) and incomplete schemas. Tool names follow verb_noun convention (search_site, get_page_content, list_content, get_sitemap), which is good. However, descriptions are far below the 50-200 char baseline for LLM-optimized tools. Input schemas are present but sparse: search_site has 'query' and 'limit' with basic type info; get_page_content has only 'uri'; list_content has 'type'; get_sitemap has empty input. No output schemas documented. No error handling guidance. No parameter constraints (enums, ranges, formats). All tools are read-only (low risk), but lack the depth needed for confident agent selection and execution.
Retrieve its clean content
Map the public corpus
Browse public records
Find the relevant URL
Descriptions are critically short (10-30 chars). LLMs cannot determine when/why to select each tool. Baseline is 50-200 chars.
No output schemas documented. Agents cannot plan downstream calls or extract required fields (e.g., does search_site return URLs, titles, snippets?).
Parameter descriptions missing or minimal. 'query' and 'uri' lack format/constraint guidance. 'type' in list_content has no enum or examples of valid values.
get_sitemap has empty input schema ({}). No parameters documented. Unclear if it accepts filters, pagination, or format options.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 49 | 2026-07-28+ | v2 |
No error handling guidance. If search_site returns no results or get_page_content fails, agents have no recovery path.