Andrew Fribush

fig. 2.23.1: 100 of the 123 .describe() calls in the server never reached the model: 83 written on one line, which the review counted, and 17 split across two lines, which it missed

fig. 2.23.1 · 100 of the 123 .describe() calls in the server never reached the model: 83 written on one line, which the review counted, and 17 split across two lines, which it missed.
100 OF 123 PARAMETER DESCRIPTIONS (81%) NEVER REACHED THE MODELONE SQUARE: ONE .describe() CALL IN THE SOURCE. ACCENT: THE CONVERTER DROPPEDIT.23 DELIVERED: DESCRIBED ON THE LEAF.describe() AFTER .min(), z.string(), .enum(), .regex(), .positive()83 DROPPED: .optional().describe() ON ONE LINE, THE REVIEW'S COUNTBANKING.TX_HISTORY: ALL 12 OF ITS PARAMETERS17 MORE DROPPED: THE SAME CHAIN SPLIT ACROSS TWO LINES, MISSED BY THE REVIEWSLEEP-DIARY 9 · PURCHASING 4 · LIFEMAIN 2 · OUTREACH 2

source: lifemain docs/review-2026-09-01-tools-bot.md section 2, lines 62-63 (123 calls, 83 dropped on one line); chain-aware recount of src/tools/*.ts and src/*.ts at commit 8cbe41f (17 split across lines); banking.ts lines 126-137 · describeCount.data.ts

View in context: Your MCP tool descriptions are probably being thrown away → · All figures

Andrew Fribush, software and computer engineer in Austin. I build consequential systems where software meets institutions: finance, healthcare, commerce, government data, and the mechanisms that govern AI agents. Taking new engagements: hello@andrewfribush.com.