The output layer for AI agents — turn any markdown into a beautiful shareable link. MCP server for Claude Desktop & AI assistants.
Two tools with complete input schemas and descriptions. Naming follows verb_noun pattern (share_markdown, share_diagram). Descriptions are clear and action-oriented (194 - 250 chars, within baseline 34 - 392 range). All parameters have type definitions and descriptions. However, output schema is not documented, LLMs cannot see what fields to expect from the API response (url, id, expires_in are visible only in code, not in tool definition). No error handling guidance for LLMs (e.g., 'If API fails, try again in 30s' or 'Check MDSHARE_API env var'). No parameter constraints (ttl accepts any number; should enforce max 604800). Missing idempotency guidance for a tool that creates shareable links.
Share a standalone SVG diagram as a rendered page. Use this for fully custom visuals that Mermaid can't express (hand-crafted SVGs, generated charts, etc). For most diagrams, prefer share_markdown with ```mermaid blocks instead — it's simpler.
Share markdown as a beautifully rendered web page. Returns a URL you can send to anyone. Use this whenever you want to share structured content (tables, code, lists, diagrams) in a readable format. Supports Mermaid diagrams: use ```mermaid fenced code blocks for flowcharts, sequence diagrams, ER diagrams, etc. They render as interactive SVGs automatically.
Output schema not documented. Tool returns {url, id, expires_in} but LLM cannot see this structure in the tool definition. LLMs need documented return types to plan downstream actions and extract data correctly.
No parameter constraints on 'ttl'. Description says 'max: 604800' but schema has no maximum property. LLMs may pass invalid values; tool will silently accept them or fail at API layer without guidance.
Error responses lack recovery guidance. Code throws generic errors like 'mdshare API error: 500 Internal Server Error' without telling LLM what to do next (retry? check env var? contact support?).
No idempotency or confirmation pattern. Both tools create shareable links (state-modifying operations). If an LLM retries on transient failure, it may create duplicate links. No dry-run or confirmation step.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2026-07-28+ | v2 |
API endpoint URLs hardcoded in tool implementation via environment variables (MDSHARE_API, MDSHARE_DIAGRAM_API). If API is down or misconfigured, error messages do not hint at checking these env vars.