MCP server exposing 집현전 (PaperReviewAgent) as Claude agent/skill tools
Six tools with basic schemas and descriptions, but significant gaps in parameter documentation and output schema clarity. Tool names follow verb_noun convention (search_papers, get_paper, list_bookmarks, add_bookmark, remove_bookmark, start_review). Descriptions exist but are minimal (10-50 chars), below the 50-200 char baseline for LLM-optimized descriptions. Input schemas present with type declarations, but parameter descriptions are sparse or missing. No documented output schemas. Error handling and recovery guidance absent. Composition is reasonable (single responsibility per tool), but parameter constraints (enums, ranges, formats) are underdeclared.
Create a new bookmark for a paper
Retrieve detailed information about a specific paper
List all bookmarks for the authenticated user
Delete a bookmark by ID
Search for academic papers
Start a deep review session for one or more papers
Descriptions are too short (10-50 chars vs. 50-200 char baseline). 'Search for academic papers' and 'Retrieve detailed information about a specific paper' lack context on when to use each tool, what they return, and dependencies.
Output schemas are not documented. LLMs cannot plan downstream calls or extract required fields (e.g., does search_papers return paper_id, title, authors, year? Does get_paper return full text or summary?). This forces agents to guess or make extra discovery calls.
Parameter descriptions are minimal or missing. 'query' in search_papers lacks format guidance (free text? boolean operators? max length?). 'num_researchers' in start_review has no range (1-10? 1-100?). 'fast_mode' boolean lacks explanation of trade-offs.
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2025-06-18+ | v2 |
No error handling or recovery guidance. If search_papers returns zero results, what should the agent do? If add_bookmark fails due to duplicate, should it retry or suggest alternatives? No error classification (retryable vs. user-fixable vs. fatal).
Destructive tool (remove_bookmark) lacks confirmation or dry-run support. Agents make mistakes, no pattern to prevent accidental deletion of bookmarks.