Search official Codeforces problem metadata through a small MCP server.
Server defines 4 tools with explicit schemas and descriptions. Naming follows verb_noun pattern (oj_*, codeforces_get_*). Descriptions are present (34-128 chars) but lack actionable context for LLM selection. Input schemas are well-formed with Zod validation and JSON Schema export. However, parameter descriptions are entirely absent, LLMs cannot infer what 'nativeId', 'query', 'limit', 'platform', 'requestId', 'schemaVersion' mean without documentation. Output schemas are referenced but not visible in source. Error handling exists (CodeforcesApiError, CodeforcesRequestCancelledError) but recovery guidance is minimal. Tool composition is sound (single responsibility), but parameter naming could be more explicit (e.g., 'problem_id' vs 'nativeId').
Get official metadata by problem id such as 158/A, 158A, or 158-A. This tool does not return a problem statement or submit code.
Report audited Codeforces official API capabilities and unsupported operations.
Return passive transport, schema, and persisted Codeforces upstream health.
Search official Codeforces problem metadata by id, title, or tag.
Parameter descriptions entirely missing. 'nativeId', 'query', 'limit', 'platform', 'requestId', 'schemaVersion' have no documentation. LLMs cannot infer meaning from names alone.
Tool descriptions are too brief (34-128 chars, baseline 194 chars). Lack WHEN to use, prerequisites, and distinction from similar tools. 'oj_health' and 'oj_capabilities' are vague about their purpose.
Parameter 'nativeId' is opaque. Should accept human-friendly formats (158/A, 158A, 158-A) but description does not explain this. Naming should be 'problem_id' with format guidance in description.
Output schemas (ojCapabilitiesSchema, ojProviderHealthSchema, ojSearchResultSchema, ojProblemSummarySchema) are imported but not visible in source. Cannot verify field names, types, or whether they include chaining IDs for downstream tool calls.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | 2025-06-18+ | v2 |
Error handling returns CodeforcesApiError and CodeforcesRequestCancelledError but recovery guidance is minimal. 'resource.not_found' error for missing problem lacks suggestions for alternatives or retry strategy.