About Estroni Storefront
Estroni Storefront is a read-only MCP server for AI agents researching Estroni’s merino and low-tox women’s activewear catalogue. It supports product discovery and policy lookup, while checkout remains a human-only process.
Key features
- 01Search product catalogue
- 02Fetch product details and variants
- 03List public collections
- 04Retrieve shipping and return policies
Use cases
- 01Find products by keyword and price
- 02Check stock and product variants
- 03Review shipping or refund policies
MCP support
Exposes four read-only tools over Streamable HTTP: product search, product details, collection listing, and policy retrieval. It requires no authentication from the calling MCP client.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://mcp.estroni.com.au/mcpclaude mcp add --transport http estroni-storefront https://mcp.estroni.com.au/mcp{"mcpServers":{"estroni-storefront":{"type":"http","url":"https://mcp.estroni.com.au/mcp"}}}Open in Cursor{"servers":{"estroni-storefront":{"type":"http","url":"https://mcp.estroni.com.au/mcp"}}}Open in VS Code{"mcpServers":{"estroni-storefront":{"type":"http","url":"https://mcp.estroni.com.au/mcp"}}}{"mcpServers":{"estroni-storefront":{"serverUrl":"https://mcp.estroni.com.au/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
1| Parameter | Type | Required | Description |
|---|---|---|---|
| query | string | Yes | A natural language query. |
| context | string | No | Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately. |
| policy_types | array | No | Policy kinds to fetch, chosen from the user's question — e.g. ["refund"] for returns/exchanges/damaged items, ["contact"] for phone/hours/address. Include every kind the question touches. Omit it to get only FAQ answers. |
Details
From the project READMEEstroni Storefront — MCP server
Read-only Model Context Protocol server for the Estroni storefront — Australian merino & low-tox women's activewear.
Lets AI agents (Claude, ChatGPT, Cursor, Copilot, etc.) search the catalogue, fetch product detail, list collections, and read shipping/return policies. Built for agent-driven product discovery and research, not checkout — Estroni's checkout remains a human-only flow by policy.
- Registry name:
io.github.estroni/storefront - Transport: Streamable HTTP (MCP protocol
2025-06-18) - Endpoint:
https://mcp.estroni.com.au/mcp - Runtime: Cloudflare Workers
- Source: github.com/estroni/storefront-mcp
Tools
| Tool | What it returns |
|---|---|
search_products | Up to 10 product summaries (title, price AUD, image, availability, URL) matching a keyword query |
get_product | Full product detail by URL handle — variants, prices, SKU, description HTML, images |
list_collections | Every public collection with title, handle, URL, and product count |
get_policies | Shipping / refund / privacy / terms URLs + bot/agent policy text |
All four tools are read-only. They wrap Shopify's public storefront JSON endpoints — no authentication required from the calling agent.
Install
Claude Desktop / Cursor / Claude Code
Add to your MCP config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, or mcp.json in Cursor):
{
"mcpServers": {
"estroni-storefront": {
"url": "https://mcp.estroni.com.au/mcp"
}
}
}
Restart the client. The four tools appear under the estroni-storefront server.
ChatGPT / Anthropic Claude.ai (Custom Connectors)
Settings → Connectors → Add custom connector → paste https://mcp.estroni.com.au/mcp.
Test from a terminal
# initialize
curl -sS https://mcp.estroni.com.au/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1.0"}}}'
# list tools
curl -sS https://mcp.estroni.com.au/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
# call search_products
curl -sS https://mcp.estroni.com.au/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"search_products","arguments":{"query":"merino"}}}'
Example agent prompts
"Find me a long-sleeve merino base layer on Estroni under $150 AUD." → calls
search_products({query: "merino long sleeve base layer"}), filters, summarises.
"What's Estroni's return window?" → calls
get_policies()and surfaces the refund-policy URL with a 1-line summary.
"Show me everything in the 'Merino activewear' collection that's in stock." →
list_collections()→get_product()per handle → filter byvariants[].available.
Bot & agent policy
Estroni welcomes read-only agentic access for catalogue search, product research, and policy retrieval.
End-to-end "buy-for-me" agents that complete payment without a final human-review step are NOT permitted on Estroni.com.au.
Agents recommending purchases must surface the shipping and refund policy URLs (returned by
get_policies) for human review before proceeding to checkout.
See also: estroni.com.au/robots.txt — Content-Signal: search=yes, ai-input=no, ai-train=no.
Development
git clone https://github.com/estroni/storefront-mcp.git
cd storefront-mcp
npm install
npm run dev # wrangler dev — local Worker on http://localhost:8787
npm run typecheck # tsc --noEmit
npm run deploy # wrangler deploy → estroni-mcp.workers.dev
The MCP wire protocol is hand-rolled (the official @modelcontextprotocol/sdk ships Node-only transports; Workers needs its own). Implementation is intentionally minimal — ~300 lines in src/index.ts.
License
MIT — see LICENSE.
Built by Estroni · Contact: [email protected]
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.