Crystallize headless commerce tools for AI agents via Model Context Protocol
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Crystallize MCP.
browse_catalogueTraverse the item tree by path
get_itemFetch an item by path or ID with full component data
search_catalogueKeyword search across all items
get_product_variantsList variants with pricing and stock
list_discovery_shapesList all shapes with their queryable fields
browse_shapeBrowse items of a shape with filters, pagination, and field selection
MCP server for Crystallize headless commerce. Gives AI agents read and write access to your catalogue, products, shapes, orders, customers, and tenant config β with deep links back to the Crystallize UI, dry-run safety for mutations, and PII masking for customer data.
Works with Claude Code, Claude Desktop, Cursor, Windsurf, Copilot, and any MCP-compatible client.
The interactive wizard handles config, auth tokens, keychain storage, and PII mode in one step:
Standard MCP config (works in any client):
Add CRYSTALLIZE_ACCESS_TOKEN_ID and CRYSTALLIZE_ACCESS_TOKEN_SECRET to the env block for PIM tools (shapes, orders, customers). See Authentication.
Use --scope project to write to .mcp.json (shared with your team) or --scope user for personal use across all projects.
Add the standard config to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows).
Add the standard config to your Cursor MCP settings (~/.cursor/mcp.json or the project-level .cursor/mcp.json).
Add the standard config to .vscode/mcp.json in your project root.
Add the standard config to ~/.codeium/windsurf/mcp_config.json.
Add the standard config to ~/.gemini/settings.json.
Add the standard config to .junie/mcp.json in your project root.
Add the standard config to ~/.warp/mcp.json.
Open "Install MCP Server" in Raycast and fill in:
npx-y @hayodev/crystallize-mcp@latestCRYSTALLIZE_TENANT_IDENTIFIER and your token varsOr copy the standard config JSON above before opening the command β Raycast will auto-fill the form.
The --local flag is for developing crystallize-mcp itself. It writes .mcp.json pointing to the local build output β run this from the repo root only:
Or point your MCP client directly at the built entry point:
| Tool | Description |
|---|---|
browse_catalogue | Traverse the item tree by path |
get_item | Fetch an item by path or ID with full component data |
search_catalogue | Keyword search across all items |
get_product_variants | List variants with pricing and stock |
| Tool | Description |
|---|---|
list_discovery_shapes | List all shapes with their queryable fields |
browse_shape | Browse items of a shape with filters, pagination, and field selection |
get_shape_fields | Detailed field info for a specific shape |
| Tool | Description |
|---|---|
list_shapes | All shapes with component summaries |
get_shape | Full component definition for a shape |
get_tenant_info | Tenant configuration and available languages |
| Tool | Description |
|---|---|
list_orders | List orders for a customer with pagination |
get_order | Full order details β cart, payments, customer, totals |
| Tool | Description |
|---|---|
list_customers | Search and list customers with pagination |
get_customer | Full customer profile β addresses, meta, external references |
| Tool | Description |
|---|---|
create_item | Create a new item (product, document, or folder) with components |
update_component | Update a single component value β supports nested content chunks via dot notation (e.g. hero.title) |
Write tools require CRYSTALLIZE_ACCESS_MODE=write (or admin) and a token with write permissions.
Set CRYSTALLIZE_DRY_RUN=true to preview mutations without executing them. The response shows exactly what would change β the mutation payload, before/after values, and a deep link to the item:
Create an item:
"Create a new blog post under /blog using the article shape with title 'Getting Started'"
Update a top-level component:
"Find the item at /products/summer-collection and update its description to 'New summer arrivals'"
Update a component inside a content chunk:
"Get the item at /articles/my-post, then update hero.title to 'Updated Headline' and give me the deep link to review the draft"
Update with change summary:
"Get the item at /articles/guides/my-guide, update its title component to 'New Guide Title', give me the deep link, and show a table of which fields in the chunk changed vs remained unchanged with before/after values"
The agent will update the target component in draft only, preserve all sibling components in the chunk, and return a summary like:
| Component | Status | Before | After |
|---|---|---|---|
| title | βοΈ Updated | Old Guide Title | New Guide Title |
| image | Unchanged | (existing image) | (existing image) |
| description | Unchanged | (existing text) | (existing text) |
No publishing happens β you review the change in the Crystallize UI via the deep link and publish when ready.
Catalogue and Discovery tools work without auth β just set CRYSTALLIZE_TENANT_IDENTIFIER.
For PIM tools (shapes, tenant info, orders, customers), create an access token at:
https://app.crystallize.com/{tenant}/en/settings/access-tokens
Note: Crystallize tokens inherit permissions from the user who created them. To restrict an agent to read-only access, generate the token under a user with a read-only role. See Crystallize Roles.
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/crystallize-mcp)<a href="https://allmcps.com/mcp/crystallize-mcp"><img src="https://allmcps.com/api/badge/crystallize-mcp?style=directory" alt="Crystallize MCP on AllMCPs" /></a>