MCP server for Shopify storefront replication pipeline, enabling deterministic conversion of reference storefronts to Shopify themes and Hydrogen storefronts
Server has 5 tools with complete JSON Schema definitions and descriptions. Naming follows verb_noun convention (replicate_*, get_*, list_*). Descriptions are present but brief (avg 95 chars, below 194-char baseline). All tools have typed input schemas with enums where appropriate (pageType, limit constraints). However, output schemas are inferred from TypeScript types rather than explicitly documented in tool registration. Error handling returns structured content with error codes and messages, but recovery guidance is minimal. No tool annotations (readOnlyHint, destructiveHint) despite clear risk levels (WRITE vs READ_ONLY). Parameter descriptions are adequate but lack dependency hints and format guidance.
Load a previously created replication job by id.
List configured destination Shopify store profiles available for replication runs.
List recent replication jobs, newest first.
Create an async Hydrogen replication job from a public ecommerce URL using Playwright discovery plus a Figma handoff stage.
Run the deterministic Shopify replication pipeline for a reference storefront and return a full handoff payload.
Output schemas not explicitly documented in tool registration. TypeScript types exist (ReplicationToolStructuredContent, JobLookupStructuredContent) but are not exposed as JSON Schema in the tool definition. LLMs cannot parse what fields to expect without explicit schema documentation.
Tool annotations missing. Both WRITE tools (replicate_site_to_theme, replicate_site_to_hydrogen) lack destructiveHint=true. READ_ONLY tools lack readOnlyHint=true. Agents cannot distinguish safe from unsafe operations without explicit annotations.
Descriptions are brief (60-70 chars) and lack context for tool selection. 'Run the deterministic Shopify replication pipeline...' does not explain WHEN to use this vs replicate_site_to_hydrogen, or what prerequisites exist. Baseline is 194 chars.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | 2025-06-18+ | v2 |
Error handling returns structured error objects but lacks recovery guidance. 'replication_failed' error includes stage but does not suggest next steps (e.g., 'Check logs at X' or 'Retry with different parameters'). Baseline pattern requires actionable recovery hints.
Parameter descriptions lack format guidance and constraints. 'referenceUrl' has format='url' in schema but description does not explain what constitutes a valid Shopify storefront URL. 'seedRoutes' array lacks examples of valid route formats.