supermemory/apps
Cursor Agent 34f9e0628a
fix(mcp): make MCP request handler errors observable
The MCP request handler surfaced failures only through createMcpHandler's
onerror callback as console.error("MCP request error:", error). The SDK
funnels non-Error throws through new Error(String(value)) and Cloudflare's
console renders an Error as its stack alone, so the log line carried no
message whenever the thrown value was empty or not a well-formed Error. When
this error class spiked, operators had a stack with no cause and nothing in
Sentry/otel.

Add describeThrownError() which renders any thrown value (Error, empty-message
Error, non-Error, object, primitive) into a single always-informative line,
including status/code and a chained cause where present, and use it in the
onerror reporter. The exact 'MCP request error' prefix is preserved so the
existing log-based monitoring keeps matching.

Co-authored-by: Dhravya Shah <dhravya@supermemory.com>
2026-09-12 21:09:50 +00:00
..
docs chore(web): reduce the app to a redirect shell, drop the browser extension (#1651) 2026-09-07 19:56:46 +00:00
mcp fix(mcp): make MCP request handler errors observable 2026-09-12 21:09:50 +00:00
memory-graph-playground fix(deps): bump next to 16.3.3 in chatapp, sdk-playground, and memory-graph-playground (#1655) 2026-09-09 23:01:32 -07:00
raycast-extension fix(mcp): bound tool inputs and scope get_document to the active space (#1593) 2026-08-24 21:36:04 +00:00
sdk-playground fix(deps): bump next to 16.3.3 in chatapp, sdk-playground, and memory-graph-playground (#1655) 2026-09-09 23:01:32 -07:00
web chore(web): reduce the app to a redirect shell, drop the browser extension (#1651) 2026-09-07 19:56:46 +00:00