MCP server for formatting and managing markdown blog posts with YAML front matter, following the bckt specification
bckt-mcp has 5 tools with complete JSON Schema definitions and clear, contextually-aware descriptions. Naming follows verb_object conventions (bckt, bckt_preview, bckt_save, bckt_config, bckt_setup). Schemas are well-structured with proper type definitions and required field declarations. However, several parameter descriptions lack operational detail (e.g., 'Optional TOML configuration' doesn't explain what TOML keys are valid). Error handling is minimal, no recovery guidance or classification. Output schemas are present but sparse. The tool descriptions appropriately warn about user confirmation requirements (e.g., 'IMPORTANT: Before calling this tool, you MUST ask the user...'), which is good for agentic safety. Missing: actionable error messages, field-level descriptions for complex objects, and pagination support (though not applicable here). Per-tool scores range 58 - 68, averaging 62.
Format raw text and metadata into bckt-compatible Markdown with YAML front matter and compute file path. IMPORTANT: Before calling this tool, you MUST ask the user to provide: title, tags, abstract, and optionally slug, language, and excerpt. Never auto-generate metadata without explicit user confirmation.
View or update the bckt-mcp configuration. If no parameters provided, returns current config. If parameters provided, updates config and saves it.
Preview the formatted output without saving. Shows the generated YAML front matter, markdown, and computed file path.
Save the formatted markdown to the computed file path. Creates directories if needed. On first use, asks for root_path (e.g., /Users/yourname/blog) and saves it to config.
Interactive setup wizard for bckt-mcp configuration. Guides through setting root_path, timezone, path pattern, and other options. Use with confirm: false first to preview, then confirm: true to save.
Parameter descriptions use examples (e.g., 'timezone: America/New_York, Europe/London, UTC') instead of formal constraints. LLMs tend to reuse example values literally, causing incorrect parameter values.
Complex objects (e.g., 'meta' in bckt, bckt_preview) lack per-property descriptions. The 'meta' object has 6 properties (title, slug, date, tags, abstract, lang) with no individual guidance on format, constraints, or mutual exclusivity.
No error handling guidance. Tools lack recovery instructions or error categorization. E.g., bckt_save doesn't document what happens if path already exists, directory creation fails, or root_path is invalid. LLM has no recovery path.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | C | 62 | 2025-06-18+ | v2 |
| 2026-03-09 | F | 37 | - | v1 |
Output schemas present but lack field descriptions. bckt tool's output schema lists 'path', 'markdown', 'warnings' but doesn't describe when warnings appear, what 'path' format is, or whether markdown includes YAML front matter.
bckt_config and bckt_setup conflate in purpose. bckt_config is 'view or update'; bckt_setup is 'interactive wizard with confirm step'. Unclear when to call which. LLM may invoke both or the wrong one.
No validation bounds documented. wrap_at parameter has no min/max. path_pattern accepts any string with no documentation of {placeholder} syntax or allowed keys. LLM could pass invalid values without constraint.