What you can do with it
- Search and recommend CrowCrowCrow products inside a chat assistant.
- Compare two products and surface ratings, prices, and key features.
- Read blog posts and CMS pages (about, shipping, returns…) without scraping.
- Build a shopping agent that links the user back to the PDP for checkout.
Tools
products.searchproductsKeyword search; returns compact summaries (use products.get for full detail).
products.listproductsBrowse the catalogue with category, brand, price, and country filters.
products.getproductsFull product detail by slug or sku — description, images, FAQs, related.
products.relatedproductsRelated published products for a given slug (curated + category fallback).
categories.listcategoriesSix top-level categories with live product counts and PLP URLs.
categories.treecategoriesBrowse-path tree (1–4 levels deep) with counts.
categories.brandscategoriesTop brands overall or scoped to a category.
blog.listblogPublished blog posts (newest first), paginated.
blog.getblogSingle published post by slug — sanitized HTML body.
pages.listpagesAll published static CMS pages (about, shipping, returns, etc.).
pages.getpagesSingle CMS page by slug — sanitized HTML body.
All tools are documented in the live WebMCP descriptor and the OpenAPI spec. Capable MCP clients also auto-load three resource documents (ccc://guide/readme, ccc://schema/product, ccc://guide/categories) so the agent has the schema before it calls a tool.
Limits (anti-scraping)
The MCP exists to make our catalogue discoverable, not harvestable. Every anonymous request is bounded:
| Limit | Value |
|---|---|
Items returned per call (limit) | ≤ 20 (default 10) |
Reachable pagination (offset) | ≤ 200 |
| Anonymous requests per minute / IP | 60 |
| Long text fields | Truncated to 4 000 characters |
| Long arrays (highlights, FAQs…) | Capped at 12 items |
When a rate limit is hit you get an HTTP 429 with a Retry-After header and a JSON-RPC error message. Need higher caps for a partner integration? Email support@crowcrowcrow.com for a Bearer token.
Connect from Claude Desktop / Cursor
Add the snippet below to your claude_desktop_config.json (Claude Desktop) or your Cursor MCP settings. It uses the official mcp-remote bridge so HTTP MCP servers appear as if they were local.
{
"mcpServers": {
"crowcrowcrow": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://crowcrowcrow.com/api/mcp/mcp"]
}
}
}Connect from Claude.ai (web) / ChatGPT custom connectors
Both clients accept a remote MCP URL directly. Paste https://crowcrowcrow.com/api/mcp/mcp into their Add Connector / Add MCP server dialog. Auth: None.
Try it from curl
1. Initialize the session
curl -s -X POST https://crowcrowcrow.com/api/mcp/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize",
"params":{"protocolVersion":"2024-11-05","capabilities":{},
"clientInfo":{"name":"my-app","version":"1.0"}}}'2. Search products
curl -s -X POST https://crowcrowcrow.com/api/mcp/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call",
"params":{"name":"products.search",
"arguments":{"query":"protein bar","limit":5}}}'3. Fetch full product detail
curl -s -X POST https://crowcrowcrow.com/api/mcp/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call",
"params":{"name":"products.get",
"arguments":{"slug":"earth-mama-vegan-nipple-butter-2-pack"}}}'Response shape (summary)
products.search and products.list return compact summaries:
{
"slug": "earth-mama-vegan-nipple-butter-2-pack",
"sku": "AMZ-...",
"asin": "B0...",
"url": "https://crowcrowcrow.com/p/<slug>/<sku>",
"title": "Earth Mama Vegan Nipple Butter (2-Pack)",
"brand": "Earth Mama",
"shortDescription": "...",
"category": "Health & Supplement",
"categoryPath": "Baby Products › Feeding › Nursing & Feeding",
"price": { "currency": "INR", "price": 3587, "listPrice": 4601, "discountPercent": 22 },
"rating": 4.8,
"reviewCount": 529,
"inStock": true,
"primaryImage": "https://...",
"countryStore": "USA"
}products.get adds description, images[], highlights[], keyFeatures[], whyChoose[], howToUse[], productDetails[], faqs[], dimensions, country of origin, comparisonTable[], relatedSlugs[], comparableSlugs[]. All prices are in INR and already include applicable Indian import duties.
FAQ
Do I need an API key?
No. The MCP is anonymous. Just rate-limited.
Can I use this to scrape your full catalogue?
Not really — the offset cap of 200 per query limits how deep you can paginate, and the rate limit will cut you off long before you finish. The MCP exists for agentic discovery, not bulk export. For bulk feeds use Google Merchant XML or contact us for partner access.
Are the prices accurate?
Yes. The MCP runs the same USD→INR conversion the storefront UI uses (live rate from currency_rates), so values match what a human visitor sees on the PDP.
Are there write operations?
No. The public MCP is strictly read-only — there is no way to place orders, modify the catalogue, or sign up users through it. Checkout happens on the storefront with browser session auth + Razorpay.
How do I report a bug or request a tool?
Email support@crowcrowcrow.com with the request payload, the response, and what you expected. We publish changes via /.well-known/webmcp.json.
More agent resources
- Developers & agents index
- OpenAPI 3.1 spec
- llms.txt (LLM index)
- llms-full.txt (long-form context)
- A2A agent card
- /ask (NLWeb-style entry)
