MCP server for publishing blog posts to dev.to
Single tool with adequate naming and schema, but descriptions lack depth and lack error guidance patterns. The tool name 'publish_blog_to_devto' is clear and verb-first (positive). Input schema is fully visible with all parameters typed and described. However, descriptions are generic and do not explain recovery paths, dependencies, or prerequisites. The tool performs a write operation (publish) but lacks idempotency markers, confirmation patterns, and rate-limit guidance. Error handling returns plain strings rather than structured recovery instructions. No output schema is documented, callers don't know the exact structure of success/failure responses. The single tool design is appropriate (one responsibility), but execution quality is middling.
Publishes a blog post to dev.to.
Tool performs irreversible write operation (publish) without confirmation pattern or dry-run support. Agents may publish inadvertently.
Error responses return free-form strings rather than structured guidance. 'Error: DEVTO_API_KEY environment variable is not set' does not guide the LLM on next steps.
No documented output schema. Tool description promises 'A message indicating success or failure' but does not specify return format. Callers cannot parse response structure.
Tool description (101 chars) is below optimal range (150-250 chars) and lacks context on WHEN to use it and prerequisites. Does not explain that DEVTO_API_KEY must be set beforehand.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 49 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 0 | - | v1 |
Parameter 'body_markdown' lacks format/length guidance. No indication of maximum character limit, required structure, or syntax expectations.
Tags parameter accepts free-form array of strings. No guidance on valid tag format, length, or count limits. Dev.to likely has tag constraints not documented here.
No idempotency annotation. The tool modifies state (publishes). Agents do not know if retrying with the same input will create duplicates.
DEVTO_API_KEY passed via environment variable is secure, but tool does not validate key presence before constructing API request. Early validation error message is good, but no retry guidance.