Token-slimming AST code outliner and log compressor cutting AI agent context usage and API bills by up to 85%
MCP Context Condenser has 4 tools with good thematic cohesion but mixed quality. All tools have descriptions and input schemas visible in src/index.ts. However, descriptions lack depth, parameter descriptions are minimal or absent for optional/context parameters, and output schemas are not documented. Error handling guidance is absent. Tools follow a verb_noun pattern (condense_source, extract_symbol, compress_log, token_budget_view) but some names could be more specific (e.g., 'compress_log' is vague about what it does, compresses, filters, extracts root causes). No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite being READ_ONLY operations. Output structure is inferred from implementation, not declared. This server is solidly mid-range, better than a minimal implementation, but falls short of production-grade quality due to incomplete schema documentation and missing error guidance.
Filters and compresses verbose test runs, build logs, and compiler outputs (Jest, Vitest, tsc, cargo) to extract only the root-cause failures and actionable file locations, discarding passing suites and noise.
Extracts an AST-aware structural skeleton of a source file (preserves imports, interfaces, types, and function/method signatures while stripping implementation bodies) to slash token consumption by up to 85%.
Surgically extracts only the exact implementation of a named function, class, method, or interface along with top-level imports, omitting the rest of the file to save tokens.
Analyzes the line count and estimated LLM token weight of a source file, providing actionable recommendations to avoid context saturation.
Output schemas are not documented in tool definitions. LLMs cannot predict response structure, forcing them to invoke tools speculatively and parse unstructured output, increasing errors and token waste.
Error handling and recovery guidance absent. No documented error responses for missing files, parse failures, symbol not found, or unsupported formats. LLMs receive no direction on how to respond to failures.
Tool annotations (readOnlyHint, destructiveHint, idempotentHint) are missing. All tools are READ_ONLY but this is not declared in schemas, forcing LLMs to guess safety classification.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | 2026-07-28+ | v2 |
Parameter descriptions are minimal. Optional parameters lack guidance (e.g., compress_log's 'rawLog' vs 'logPath', when should each be used? What if both are provided?). Constraint information (regex, length, enum values) is absent.
Tool naming lacks precision for compress_log and token_budget_view. 'compress_log' doesn't signal root-cause extraction; 'token_budget_view' uses weak verb 'view' instead of 'analyze' or 'estimate'.