Roast-as-a-tool
Roast agent ideas without leaving your editor
The same verdict engine behind the site, exposed as an MCP server over Streamable HTTP. Call roast_idea from Claude Code, Claude Desktop, or ChatGPT and get the verdict tier, agent-readiness score, top OWASP-MCP risk, and a shareable /result URL back inline.
No token, no signup. The anonymous tier just works — 3 roasts/hour, 10/day. Want more? Add a token for the higher web limits and two extra tools. Either way: no human paywall, ever.
Install — anonymous (no token)
Paste one of these. Nothing to sign up for, nothing to configure.
claude mcp add --transport http whycant https://whycantwehaveanagentforthis.com/api/mcp{
"mcpServers": {
"whycant": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://whycantwehaveanagentforthis.com/api/mcp"]
}
}
}https://whycantwehaveanagentforthis.com/api/mcp
# ChatGPT → Settings → Connectors → Add custom MCP server
# Transport: Streamable HTTP · Authentication: NoneEndpoint: https://whycantwehaveanagentforthis.com/api/mcp (Streamable HTTP, POST). Claude Desktop and ChatGPT bridge remote servers through mcp-remote / the connector UI.
20-second demo
After installing, type this in your client:
roast this agent idea: an agent that auto-declines my pointless meetings🔥 MeetingAssassin
Verdict: Actually not bad
Readiness: 68/100 (band B)
Top risk: MCP-3 — Excessive agency
"Half of Calendly already does this; the other half is one Zapier zap."
Full breakdown + share card:
https://whycantwehaveanagentforthis.com/result/meetingassassin-9000-exampleThat /result link is a real, public page with its own share card — see the next section.
Anonymous vs token — the honest table
| Anonymous (no token) | Token | |
|---|---|---|
| Roasts | 3 / hour · 10 / day | 5 / hour · 15 / day |
| Tools | roast_idea, get_verdict, get_stats, browse_explore | + validate_idea, find_existing_agents |
| Signup | None | None (operator token, not a human login) |
| Kill switch + daily budget | Shared — can’t run up spend | Shared — can’t run up spend |
Both tiers pass the same guard pipeline the website uses (kill switch → daily cap → budget → burst → hourly → daily). The anonymous caps are simply tighter and gate first. Over a limit? You get a clear one-line message telling you when it resets. Need a token? Ask the operator; rotation and multiple tokens are supported.
Higher limits — add a token
Same install, one extra header. A valid token also auto-discovers via OAuth 2.1 + PKCE (/.well-known/oauth-protected-resource) in compliant clients, so there’s nothing to paste.
claude mcp add --transport http whycant https://whycantwehaveanagentforthis.com/api/mcp \
--header "Authorization: Bearer $WHYCANT_MCP_TOKEN"{
"mcpServers": {
"whycant": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://whycantwehaveanagentforthis.com/api/mcp",
"--header", "Authorization: Bearer <your-mcp-token>"]
}
}
}Every roast is shareable
A roast from a tool call isn’t a dead end. Every roast_idea mints a real, public /result/[id] page with its own OG share card — the same page a human submission creates. The tool hands back that URL, so an agent can drop the link into a PR, an issue, or a tweet and the card unfurls. MCP roasts also show up in /explore and the homepage counter — installs restock the shelves.
Registry
Machine-readable manifest (advertises the anonymous tier + limits), served identically at /server.json and /.well-known/mcp/server.json. Listed on the MCP Registry as io.github.sattyamjjain/whycant.