Skip to content
Opusgen

Demo workspace

tools/call send_email113 accounts blocked · 2 of 5 agents · first seen Sep 11

MCP schema mismatch

The MCP tool declares to as a list of addresses. Agents pass one address as a string, the call fails validation, and the error doesn't say what shape it wants.

Share of failed tasks
14%
Accounts blocked
113
MRR a month at risk
$1,130
Lab trials failed
6 of 200

What agents doThe path most agents take, from production and the lab

  1. The agent lists the toolstools/list → send_email, create_domain, list_templates
  2. It sends to one address{"to":"ana@example.dev"}
  3. Validation fails-32602 to: expected array, received string
  4. It retries the same callSame arguments, same error
  5. It reports the server as brokenNo email sent

Where it comes from

  • mcp/tools/send-email.ts:12

    12to: z.array(z.string().email()),

In productionAccounts blocked, by the day they made their key

By agent

  • claude-code40 · 7%
  • codex30 · 8%
  • cursor28 · 11%
  • gemini-cli15 · 9%

Count, and the share of that agent's API keys it blocked.

Accounts it blocked

Fix

Suggested change

Accept one address or a list in send_email, and describe the field.

What it costs

$1,130/mo

113 blocked accounts × $10 of MRR per working account. New agent-started accounts that reach a working call bring $6,100 of MRR across 610 accounts.

In the labRun 412, failed trials by task

  • send1
  • domain2
  • webhook1
  • billing2
Open run 412