Repository navigation
v0.8.4 - Internal cleanup
What's New in v0.8.4
Pure internal cleanup pass (from a /ponytail-audit over-engineering review). No tool, schema, or output changes — purely structural.
🔧 Improvements
- Removed redundant
zoddirect dependency — it was declared but never imported; still available transitively via@modelcontextprotocol/sdk, so behavior is unchanged. - Extracted shared
ok()helper — collapses 18 identical inline tool-result return blocks ({ content: [{ type:'text', text: JSON.stringify(...) }] }) into one wrapper. - Extracted
clamp()helper — dedupes the 3 repeated paginationper_pagebound expressions. - Deleted 4 decorative pass-through interfaces (
IntercomArticle/IntercomCollection/ListArticlesResponse/ListCollectionsResponse) that annotatedanyAPI responses and added no real boundary type safety. - Trimmed drift-prone startup log that hardcoded the tool list (the real source of truth is the ListTools handler).
📉 Result
src/index.ts: 1338 → 1199 lines (−139).- Build passes (
tsc, zero errors); startup smoke verified.
🧷 Deliberately not changed
- The
simplify*response-slimming layer (the fork's core value). - The per-handler
if (!id) throwruntime guards (the MCP SDK does not validaterequired, so these are real guards, not dead code).
📦 Installation
```bash
npm install
npm run build
```
Full Changelog: v0.8.3...v0.8.4