MCP server for Cloudflare Workers that exposes Worker entrypoint methods as MCP tools via HTTP RPC
Two tools with basic descriptions but significant gaps in schema completeness and parameter documentation. getRandomNumber lacks input schema entirely (empty object). sendEmail has a documented schema but descriptions are generic and lack actionable guidance. Neither tool includes error handling guidance, recovery hints, or idempotency markers. Naming is acceptable (verb_noun pattern) but descriptions fall short of LLM-optimization standards (194 char baseline). No tool annotations present.
Generates a random number. This is extra random because it had to travel all the way to your nearest Cloudflare PoP to be calculated which... something something lava lamps?
Send a text or HTML email to an arbitrary recipient.
getRandomNumber has no input schema (empty object {}). Tool is non-functional for LLM selection without parameter guidance.
sendEmail lacks error handling guidance. No recovery hints for common failures (invalid email, unverified recipient, missing EMAIL binding). LLM cannot self-correct on failure.
sendEmail description (67 chars) is below LLM-optimization baseline (194 chars avg). Missing WHEN to use, prerequisites (EMAIL binding, EMAIL_FROM config), and what happens on success/failure.
sendEmail contentType parameter lacks enum constraint. Description says 'Can be text/plain or text/html' but no formal enum. LLM may hallucinate invalid MIME types.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 39 | 2026-07-28+ | v2 |
No output schema documented for either tool. LLMs cannot plan downstream calls or extract structured data. getRandomNumber returns string; sendEmail returns string success message, both lack field documentation.