Open-source B2B and marketplace ecommerce; new stores include an MCP server for AI agents.
Crystallize MCP
Resumen
Descripción del creador (original en inglés)
Crystallize headless commerce tools for AI agents via Model Context Protocol
Los tres pilares de PopNx MCP
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
- Opinión de usuariosiAún no hay reseñasLas reseñas se abrirán junto con las cuentas en una etapa posterior
- Nuestras revisiones básicasi1 de 1 superadasRevisado con información pública; el código aún no se ha escaneado
- UsoiAún sin medir★ –
Qué puedes hacer con él
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
- Conexión: Se ejecuta en tu computadora
- Transporte: stdio
- Categoría: Tiendas en línea y pagos
Instalación
Elige la app de IA que usas y copia la configuración.
Antes de instalar
- Revisiones básicas: 1 de 1 superadas
- Se ejecuta en tu computadora con los permisos de tu usuario (archivos, red, apps).
- Debes completar tú:
CRYSTALLIZE_TENANT_IDENTIFIER,CRYSTALLIZE_ACCESS_TOKEN_ID,CRYSTALLIZE_ACCESS_TOKEN_SECRET,CRYSTALLIZE_STATIC_AUTH_TOKEN,CRYSTALLIZE_ACCESS_MODE
Necesitas
- npmNode.js instalado (para el comando npx)
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"crystallize": {
"command": "npx",
"args": [
"-y",
"@hayodev/crystallize-mcp"
],
"env": {
"CRYSTALLIZE_TENANT_IDENTIFIER": "your-value",
"CRYSTALLIZE_ACCESS_TOKEN_ID": "your-value",
"CRYSTALLIZE_ACCESS_TOKEN_SECRET": "your-value",
"CRYSTALLIZE_STATIC_AUTH_TOKEN": "your-value",
"CRYSTALLIZE_ACCESS_MODE": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add crystallize --env CRYSTALLIZE_TENANT_IDENTIFIER=your-value --env CRYSTALLIZE_ACCESS_TOKEN_ID=your-value --env CRYSTALLIZE_ACCESS_TOKEN_SECRET=your-value --env CRYSTALLIZE_STATIC_AUTH_TOKEN=your-value --env CRYSTALLIZE_ACCESS_MODE=your-value -- npx -y @hayodev/crystallize-mcpCompleta los valores vacíos antes de ejecutarlo.
O copia la configuración tú
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"crystallize": {
"command": "npx",
"args": [
"-y",
"@hayodev/crystallize-mcp"
],
"env": {
"CRYSTALLIZE_TENANT_IDENTIFIER": "your-value",
"CRYSTALLIZE_ACCESS_TOKEN_ID": "your-value",
"CRYSTALLIZE_ACCESS_TOKEN_SECRET": "your-value",
"CRYSTALLIZE_STATIC_AUTH_TOKEN": "your-value",
"CRYSTALLIZE_ACCESS_MODE": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
O copia la configuración tú
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"crystallize": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@hayodev/crystallize-mcp"
],
"env": {
"CRYSTALLIZE_TENANT_IDENTIFIER": "your-value",
"CRYSTALLIZE_ACCESS_TOKEN_ID": "your-value",
"CRYSTALLIZE_ACCESS_TOKEN_SECRET": "your-value",
"CRYSTALLIZE_STATIC_AUTH_TOKEN": "your-value",
"CRYSTALLIZE_ACCESS_MODE": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Valores que debes completar
CRYSTALLIZE_TENANT_IDENTIFIERenvYour Crystallize tenant identifier (e.g. 'my-store'). Find it in your Crystallize dashboard URL: app.crystallize.com/{tenant}CRYSTALLIZE_ACCESS_TOKEN_IDenvAccess Token ID for authenticated API access. Create one at Settings > Access Tokens in your Crystallize dashboard. Optional — public catalogue and Discovery API work without auth.CRYSTALLIZE_ACCESS_TOKEN_SECRETenvAccess Token Secret (paired with Access Token ID).CRYSTALLIZE_STATIC_AUTH_TOKENenvStatic auth token (alternative to token ID/secret pair). Read-only.CRYSTALLIZE_ACCESS_MODEenvControls which tools are available: 'read' (default, safe), 'write' (can create/update items), 'admin' (full access including webhooks).
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Qué puede hacer
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisiones básicasi
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 6 nov 2026
- ✓ Superada
El creador coincide con el repo
El nombre en el registro se verificó con la cuenta de GitHub HayoDev, dueña del repo
- … Aún sin revisar
Sigue en mantenimiento
Todavía no hemos leído este repo en GitHub
- … Aún sin revisar
Tiene licencia
Todavía no hemos leído este repo en GitHub
- – No aplica
El endpoint responde
Este se ejecuta en tu computadora; no hay endpoint en internet
- – No aplica
Inicio de sesión con OAuth
Se ejecuta en tu computadora y usa ajustes locales en su lugar
- … Aún sin revisar
Sin instrucciones ocultas en las descripciones de herramientas
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con otros en Tiendas en línea y pagosi
- Más estrellas que el 0% de los otros 1745 servidores de esta categoría
- Publicado en el registro más recientemente que el 5% de los otros 1745 servidores de esta categoría
- Revisiones básicas iguales o mejores que el 100% de los otros 1745 servidores de esta categoría
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Preguntas frecuentes
¿Es seguro Crystallize MCP?
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
¿Qué claves o códigos necesita?
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
¿Se ejecuta en mi computadora o en la nube?
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
¿Sigue en mantenimiento?
El repo de GitHub cambió por última vez –, y la última versión (0.2.0) llegó al registro hace 7 meses.
¿Qué apps pueden usarlo?
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
¿Qué puedo usar en su lugar?
En la misma categoría: Spree Commerce: open-source B2B and marketplace ecommerce, Stripe MCP, MCP Cn Commerce
Alternativas
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Stripe MCP
MCP server integrating with Stripe - tools for customers, products, payments, and more.
MCP Cn Commerce
8 read-only MCP platform entries; support is operation-specific; merchant live acceptance pending
README del creador
Abrir el README
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Crystallize MCP
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.
Getting started
Setup wizard
The interactive wizard handles config, auth tokens, keychain storage, and PII mode in one step:
# Project-level — writes .mcp.json in the current directory (shared with your team)
npx @hayodev/crystallize-mcp --setup
Global — registers via claude mcp add (Claude Code) or writes Claude Desktop config
npx @hayodev/crystallize-mcp --setup --global
Manual config
Standard MCP config (works in any client):
{
"mcpServers": { "crystallize": { "command": "npx", "args": ["-y", "@hayodev/crystallize-mcp@latest"], "env": { "CRYSTALLIZE_TENANT_IDENTIFIER": "your-tenant" } } } }
Add CRYSTALLIZE_ACCESS_TOKEN_ID and CRYSTALLIZE_ACCESS_TOKEN_SECRET to the env block for PIM tools (shapes, orders, customers). See Authentication.
Claude Code (CLI)
claude mcp add crystallize \
-e CRYSTALLIZE_TENANT_IDENTIFIER=your-tenant \ -e CRYSTALLIZE_ACCESS_TOKEN_ID=your-token-id \ -e CRYSTALLIZE_ACCESS_TOKEN_SECRET=your-token-secret \ -- npx -y @hayodev/crystallize-mcp@latest
Use --scope project to write to .mcp.json (shared with your team) or --scope user for personal use across all projects.
Claude Desktop
Add the standard config to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows).
Cursor
Add the standard config to your Cursor MCP settings (~/.cursor/mcp.json or the project-level .cursor/mcp.json).
VS Code / GitHub Copilot
Add the standard config to .vscode/mcp.json in your project root.
{
"servers": { "crystallize": { "command": "npx", "args": ["-y", "@hayodev/crystallize-mcp@latest"], "env": { "CRYSTALLIZE_TENANT_IDENTIFIER": "your-tenant", "CRYSTALLIZE_ACCESS_TOKEN_ID": "your-token-id", "CRYSTALLIZE_ACCESS_TOKEN_SECRET": "your-token-secret" } } } }
Windsurf
Add the standard config to ~/.codeium/windsurf/mcp_config.json.
Gemini CLI
Add the standard config to ~/.gemini/settings.json.
JetBrains AI Assistant
Add the standard config to .junie/mcp.json in your project root.
Warp
Add the standard config to ~/.warp/mcp.json.
Raycast
Open "Install MCP Server" in Raycast and fill in:
- Command:
npx - Arguments:
-y @hayodev/crystallize-mcp@latest - Environment: add
CRYSTALLIZE_TENANT_IDENTIFIERand your token vars
Or copy the standard config JSON above before opening the command — Raycast will auto-fill the form.
From source (maintainers)
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:
git clone https://github.com/HayoDev/crystallize-mcp.git
cd crystallize-mcp npm install && npm run build npx . --setup --local # writes .mcp.json pointing to ./build/
Or point your MCP client directly at the built entry point:
{
"mcpServers": { "crystallize": { "command": "node", "args": ["/path/to/crystallize-mcp/build/src/bin/crystallize-mcp.js"], "env": { "CRYSTALLIZE_TENANT_IDENTIFIER": "your-tenant" } } } }
Tools (16)
Catalogue (4 tools)
| 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 |
Discovery (3 tools)
| 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 |
Shapes & Tenant (3 tools, requires auth)
| 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 |
Orders (2 tools, requires auth)
| Tool | Description |
|---|---|
list_orders | List orders for a customer with pagination |
get_order | Full order details — cart, payments, customer, totals |
Customers (2 tools, requires auth)
| Tool | Description |
|---|---|
list_customers | Search and list customers with pagination |
get_customer | Full customer profile — addresses, meta, external references |
Content (2 tools, requires auth + write mode)
| 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
Write tools require CRYSTALLIZE_ACCESS_MODE=write (or admin) and a token with write permissions.
Dry-run mode
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:
"env": {
"CRYSTALLIZE_ACCESS_MODE": "write", "CRYSTALLIZE_DRY_RUN": "true" }
Example prompts
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.
Authentication
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.
Environment variables
| Variable | Required | Description |
|---|---|---|
CRYSTALLIZE_TENANT_IDENTIFIER | Yes | Your tenant identifier from app.crystallize.com/{tenant} |
CRYSTALLIZE_ACCESS_TOKEN_ID | No | Access token ID for PIM API |
CRYSTALLIZE_ACCESS_TOKEN_SECRET | No | Access token secret (paired with token ID) |
CRYSTALLIZE_STATIC_AUTH_TOKEN | No | Static auth token (alternative to ID/secret pair) |
CRYSTALLIZE_ACCESS_MODE | No | read (default), write, or admin — controls which tools are registered |
CRYSTALLIZE_DRY_RUN | No | true to preview write operations without executing — see Write tools |
CRYSTALLIZE_PII_MODE | No | full (default), masked, or none — controls PII in customer/order responses |
CRYSTALLIZE_AUDIT_LOG | No | Path to write an audit log — ~ is expanded (e.g. ~/.crystallize-mcp/audit.log) |
PII mode (opt-in)
By default all customer and order data is returned as-is (full). Set CRYSTALLIZE_PII_MODE to opt in to data minimisation:
| Mode | Behaviour |
|---|---|
full | Default — all fields returned unchanged |
masked | Emails → h***@example.com, phones → ***-1234, addresses → city + country only |
| none | Contact/PII fields stripped — names, emails, phones, addresses, meta
Solo se muestra el principio; lee el resto en el repo