whycant
Roast any AI agent idea from your IDE: verdict tier, readiness score, top risk, shareable URL.
使うべきか
品質と安全性
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"whycant": {
"url": "https://whycantwehaveanagentforthis.com/api/mcp"
}
}
}リモートエンドポイント
https://whycantwehaveanagentforthis.com/api/mcpstreamable-httpできること
ツール一覧
ツール(4)
🟡roast_idea(idea)
Get the full whycantwehaveanagentforthis.com roast for an AI agent idea: the verdict tier, an agent-readiness score (0-100 + band), the top OWASP-MCP security risk, the "you're the X% who…" framing, and a shareable /result URL. Every call mints a real, persistent result page (its own OG share card) — so roasting from your IDE also publishes it. Anonymous (no token): 3/hour, 10/day. Add a token for higher limits.
入力スキーマ
{
"type": "object",
"properties": {
"idea": {
"type": "string",
"description": "The agent idea or problem to analyze, in one or two sentences. e.g. \"an agent that auto-declines pointless meetings\"."
}
},
"required": [
"idea"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}出力スキーマ
{
"type": "object",
"properties": {
"agentName": {
"type": "string"
},
"verdict": {
"type": "string",
"description": "Real VerdictTier enum value, e.g. SHUT_UP_AND_TAKE_MY_MONEY"
},
"verdictLabel": {
"type": "string"
},
"readinessScore": {
"type": "number",
"description": "Agent-readiness 0-100"
},
"readinessBand": {
"type": "string",
"description": "Letter band A-F"
},
"topRiskCode": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Top OWASP-MCP risk code, e.g. MCP-3"
},
"topRiskTitle": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"percentileFraming": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "\"You're the X% who…\" line"
},
"savageLine": {
"type": "string"
},
"resultUrl": {
"type": "string",
"description": "Canonical /result/[id] share URL"
},
"scopeCallUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Cal.com 20-min scope-call URL"
}
},
"required": [
"agentName",
"verdict",
"verdictLabel",
"readinessScore",
"readinessBand",
"topRiskCode",
"topRiskTitle",
"percentileFraming",
"savageLine",
"resultUrl",
"scopeCallUrl"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_verdict(id)
Fetch a verdict that was already minted, by its result id or slug. Read-only — no new analysis, no rate-limit cost. Returns the same structured verdict shape as roast_idea.
入力スキーマ
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The /result/[id] id or slug returned by a prior roast_idea call."
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}出力スキーマ
{
"type": "object",
"properties": {
"agentName": {
"type": "string"
},
"verdict": {
"type": "string",
"description": "Real VerdictTier enum value, e.g. SHUT_UP_AND_TAKE_MY_MONEY"
},
"verdictLabel": {
"type": "string"
},
"readinessScore": {
"type": "number",
"description": "Agent-readiness 0-100"
},
"readinessBand": {
"type": "string",
"description": "Letter band A-F"
},
"topRiskCode": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Top OWASP-MCP risk code, e.g. MCP-3"
},
"topRiskTitle": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"percentileFraming": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "\"You're the X% who…\" line"
},
"savageLine": {
"type": "string"
},
"resultUrl": {
"type": "string",
"description": "Canonical /result/[id] share URL"
},
"scopeCallUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Cal.com 20-min scope-call URL"
}
},
"required": [
"agentName",
"verdict",
"verdictLabel",
"readinessScore",
"readinessBand",
"topRiskCode",
"topRiskTitle",
"percentileFraming",
"savageLine",
"resultUrl",
"scopeCallUrl"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_stats
Live public numbers for whycantwehaveanagentforthis.com: total ideas roasted, live results, % told to ship, % that already exist, roast battles, and how many roasts came in via MCP. Read-only, no rate-limit cost.
入力スキーマ
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢browse_explore(query, sort, limit)
Page through existing public roasts (the /explore feed) with their shareable /result URLs. Optional free-text query and sort (newest | top | money). Read-only, no rate-limit cost — use it to see whether an idea was already roasted before minting a new one.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Free-text filter over name/problem.",
"type": "string"
},
"sort": {
"description": "Sort order. Default: newest.",
"type": "string",
"enum": [
"newest",
"top",
"money"
]
},
"limit": {
"description": "Max 20. Default 10.",
"type": "integer",
"minimum": 1,
"maximum": 20
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}コミュニティ
エビデンス