News aggregator API using MCP server architecture with TypeScript and Express. Provides REST API endpoints for fetching and aggregating news articles with caching, database persistence, and user preferences.
Scoring was not performed
Output schemas not documented. LLMs cannot predict response structure or plan downstream tool calls. No evidence of return type documentation for any tool.
Parameter descriptions lack actionable constraints. 'limit' and 'offset' lack min/max bounds. 'sort' field accepts arbitrary strings with no validation guidance. 'order' should constrain to enum.
Date parameters (fromDate, toDate in getAllNews) specify ISO format but lack examples or clear guidance on timezone handling. LLMs frequently miscalculate date strings.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 14 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 40 | - | v1 |
getCacheStats has empty input schema but no documentation of what metrics it returns. Agents cannot predict the response structure.
Tool names use verb_noun pattern (good), but descriptions for discovery tools (getNewsSources, getCacheStats) do not explain when to call them or what structure they reveal.
No error handling guidance in tool descriptions. No indication of retryability, user-fixable vs fatal errors, or recovery paths if a lookup fails.
clearCache and clearCacheByType descriptions do not warn about irreversibility or consequence of cache clearing. Agents should know this is destructive.