An MCP server so a coding agent can call contextcost tools instead of shelling out. Measures what a repository costs an AI coding agent to read, finds what is wasting that budget, and proves the saving by re-measuring.
Two tools with clear, actionable descriptions (estimate: 194 chars, propose: 186 chars) and proper JSON Schema input definitions. Both tools are read-only and well-scoped. However, output schemas are not documented in the visible code, the tools return dicts built by build_payload() and as_dict() methods, but the structure of those outputs is not declared in the tool definitions themselves. Parameter descriptions are minimal (single short phrase). No error handling guidance is visible in the tool definitions. The server implements only core MCP protocol (initialize, tools/list, tools/call) with no advanced features.
Measure what a repository costs an AI coding agent to read: total tokens with error bound, cost by directory and extension, largest files, and the measured saving available from excluding waste. Call before filling a context window with a codebase.
Get the exclusion proposal for a repository: ignore patterns with a *measured* saving (the repo is walked again with them applied, not subtracted), plus findings left for a human to decide. Call after estimate to act on what it found.
Output schemas not documented. Tools return complex dicts (build_payload, as_dict) but the response structure is not declared in tool definitions. LLMs cannot plan downstream operations or extract fields reliably.
Parameter descriptions are minimal. 'repo' param described only as 'path to the repository root', no guidance on format (absolute vs relative), validation rules, or error cases (e.g., what happens if path doesn't exist).
No error handling guidance in tool descriptions. estimate_tool() raises NotADirectoryError if repo is not a directory, but the tool description does not mention this or guide the LLM on recovery (e.g., 'If path is invalid, verify the repository root exists').
No tool annotations. Neither estimate nor propose declares readOnlyHint, destructiveHint, or idempotentHint. Both are read-only and idempotent, but this is not signaled to the client.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 65 | 2026-07-28+ | v2 |
STDIO transport only. Server is not remotely accessible and cannot be used by hosted MCP clients (e.g., Claude.ai, web-based agents). Hard cap at 50 for protocol readiness.