MCP server: One MCP server.

VTEX IO MCP

@zeluizrMCP server · External

Scaffold VTEX IO apps, Node services and GraphQL, look up Store Framework block props, search docs

Developer documentationv0.1.8MITTypeScript
Freeno charge per call

Runs on your machine from its package; the steps are below.

VTEX IO MCP: documentación, bloques de tienda y código conectados a un servidor de conocimiento local
From the README

What it does

  1. Reads
  2. Writes
  3. High impact

At most: creates or changes data: records, files, settings.

What it costs

Free

Odel charges nothing per call. The publisher may charge for its own service.

Runs locally over stdio

This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).

npmvtex-io-mcpv0.1.8

Run

npx -y vtex-io-mcp

MCP client config

{
  "mcpServers": {
    "vtex-io-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "vtex-io-mcp"
      ]
    }
  }
}
README7 min read
VTEX IO MCP: documentación, bloques de tienda y código conectados a un servidor de conocimiento local

VTEX IO MCP vtex-io-mcp MCP server – quality and maintenance score on Glama

Servidor MCP para desarrollar en VTEX IO: Store Framework, React, servicios Node, GraphQL, Admin y más.

vtex-io-mcp es un servidor Model Context Protocol que convierte a tu asistente de IA en un copiloto de VTEX IO. Genera el scaffolding de apps, servicios Node y esquemas GraphQL, consulta las props de los blocks de Store Framework y busca en una base de documentación y cursos que viaja dentro del paquete. Funciona con Claude Code, Claude Desktop, Cursor, VS Code, Windsurf y cualquier cliente MCP.

npm node licencia


Características

Versión del código: 0.1.8, según package.json. La entrada src/index.ts conecta el servidor por stdio; el cliente MCP inicia el proceso y se comunica por la entrada y salida estándar, sin abrir un puerto HTTP. Las nueve herramientas se registran en src/tools/index.ts.

  • Scaffolding de apps VTEX IO: manifest.json y estructura de carpetas para cualquier combinación de builders.
  • Backend listo para empezar: servicio Node con service.json, clients, rutas HTTP y handlers de eventos; esquema GraphQL con resolvers tipados.
  • Store Framework: props, ejemplos y generación de JSONC validado para los blocks del catálogo.
  • Documentación sin salir del editor: 391 documentos de VTEX y 10 cursos oficiales con búsqueda por palabras clave.
  • Local y sin credenciales: todo el conocimiento va en el paquete; no llama a APIs externas ni pide claves.

Instalación

El cliente MCP ejecuta el servidor bajo demanda con npx, así que no hace falta instalarlo. Requiere Node >= 18.

Claude Code

bash
claude mcp add vtex-io -- npx -y vtex-io-mcp

Para compartirlo con el equipo en un repositorio, usa --scope project: la configuración queda en .mcp.json.

Claude Desktop

En claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):

json
{
  "mcpServers": {
    "vtex-io": {
      "command": "npx",
      "args": ["-y", "vtex-io-mcp"]
    }
  }
}

Cursor

En ~/.cursor/mcp.json (global) o .cursor/mcp.json (por proyecto):

json
{
  "mcpServers": {
    "vtex-io": {
      "command": "npx",
      "args": ["-y", "vtex-io-mcp"]
    }
  }
}

VS Code

En .vscode/mcp.json:

json
{
  "servers": {
    "vtex-io": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "vtex-io-mcp"]
    }
  }
}

Windsurf

En ~/.codeium/windsurf/mcp_config.json:

json
{
  "mcpServers": {
    "vtex-io": {
      "command": "npx",
      "args": ["-y", "vtex-io-mcp"]
    }
  }
}

Otros clientes

Cualquier cliente con transporte stdio sirve: el comando es npx y los argumentos, -y vtex-io-mcp. Si prefieres una instalación global, npm install -g vtex-io-mcp y usa vtex-io-mcp como comando.

El servidor está listado en el Official MCP Registry como io.github.zeluizr/vtex-io-mcp.

Uso

Después de reiniciar el cliente, pide lo que necesitas en lenguaje natural y el asistente elige la herramienta:

  • "Crea una app VTEX IO llamada product-reviews con los builders react, node, graphql y store"
  • "¿Qué props acepta el flex-layout.row? Dame un ejemplo con dos columnas"
  • "Genera un servicio Node con una ruta pública GET /_v/order/:orderId y un handler para order.created"
  • "Arma el esquema GraphQL con una query productReviews(productId: ID!) y una mutation addReview"
  • "Busca en la documentación cómo funcionan las CSS Handles"
  • "¿Qué endpoints tiene la API de Master Data?"

Herramientas

Apps y backend

herramientaparámetrosqué hace
scaffold-vtex-appappName, vendor, builders, version?, description?Genera manifest.json y la estructura de carpetas de los builders elegidos: store, react, node, graphql, styles, messages, admin, pixel, docs.
scaffold-node-serviceappName, vendor, routes?, events?, memory?, timeout?Genera node/index.ts, service.json, clients y middlewares. Cada ruta lleva name, path, method y public; cada evento, name, sender y keys.
scaffold-graphqlappName, vendor, queries?, mutations?Genera schema.graphql y los resolvers en TypeScript, con argumentos, tipo de retorno y descripción.

Store Framework

herramientaparámetrosqué hace
lookup-block-propsblockNameDevuelve descripción, props y ejemplos de un block.
add-blockblockName, blockId?, props?, children?Genera un fragmento JSONC para blocks.jsonc y valida las props contra el esquema del block.

Blocks disponibles hoy: rich-text, info-card, flex-layout.row, flex-layout.col, shelf, image.

Documentación

herramientaparámetrosqué hace
search-conceptsquery, maxResults?Busca por palabras clave en los 391 documentos y devuelve resultados ordenados con extractos.
explain-conceptconceptDevuelve el documento completo de un concepto por su ID.
search-coursesquery, courseId?Busca en los cursos oficiales de VTEX IO y devuelve extractos con contexto.
lookup-vtex-apiapiReferencia REST de una API de VTEX: catalog, orders, checkout, master-data, logistics, pricing, intelligent-search, session, headless-cms, promotions, payments-gateway, license-manager.

Resources

URIcontenido
vtex://conceptsÍndice de los documentos, agrupados por prefijo.
vtex://concepts/{conceptId}Documento completo de un concepto.
vtex://coursesÍndice de los cursos, con título, descripción y número de pasos.
vtex://courses/{id}Contenido completo de un curso: onboarding, basic-blocks, layout-blocks, styles-course, store-block, service-course, calling-commerce-apis, admin, content-workflow, store-performance.

Hoja de ruta

  • Más blocks de Store Framework: layouts (slider-layout, tab-layout, responsive-layout, stack-layout, condition-layout, modal-layout, disclosure-layout), producto (product-summary, product-images, product-price, sku-selector, buy-button), búsqueda, header, footer, minicart y login
  • Referencia de todos los builders en data/builders/ (hoy: store y node)
  • Herramientas de Store Framework: validate-blocks, create-page-template
  • Herramientas de React: generate-react-component, add-css-handles, create-graphql-query
  • Herramientas de backend: add-route-handler, add-event-handler, create-client, add-graphql-field
  • Herramientas de manifiesto: add-builder, add-dependency, add-policy, generate-manifest
  • Scaffolding de apps Admin y Pixel
  • Resources vtex://builders/{name} y vtex://api/{client} con los clients de @vtex/api
  • Prompts MCP para escenarios comunes: home, PDP, servicio REST, app fullstack, app Admin
  • Scripts de ingestión para actualizar data/ desde los cursos y los README de vtex-apps

Estructura

text
src/
├── index.ts          # entry point del binario (stdio)
├── server.ts         # McpServer: registra tools y resources
├── tools/            # una herramienta por archivo, registradas en tools/index.ts
├── resources/        # vtex://concepts y vtex://courses
└── knowledge/        # carga y búsqueda sobre data/
data/
├── blocks/           # un JSON por block + _index.json
├── builders/         # referencia por builder
├── concepts/         # documentación en Markdown
└── courses/          # cursos en Markdown + _index.json
public/               # imágenes del README (no va en el paquete npm)

Desarrollo

bash
git clone https://github.com/zeluizr/vtex-io-mcp.git
cd vtex-io-mcp
npm install
npm run build
npm run inspect

npm run inspect abre el MCP Inspector sobre build/index.js para llamar a cada herramienta y leer los resources sin un cliente.

Para probar la versión local en un cliente, apunta el comando a la build en lugar de npx:

bash
claude mcp add vtex-io-local -- node /ruta/a/vtex-io-mcp/build/index.js
comandoqué hace
npm run buildCompila TypeScript en build/ y marca el binario como ejecutable.
npm run devCompilación en modo watch.
npm run lintVerificación de tipos (tsc --noEmit).
npm run inspectAbre el MCP Inspector sobre el servidor compilado.

Añadir una herramienta

  1. Crea src/tools/<nombre>.ts exportando el esquema zod (<nombre>Schema) y la función que devuelve el contenido.
  2. Regístrala en src/tools/index.ts con server.tool(nombre, descripción, esquema, función). La descripción es lo que el modelo lee para decidir cuándo usarla: di qué hace y con qué ejemplos.
  3. Si necesita conocimiento nuevo, añade los archivos en data/ y cárgalos desde src/knowledge/.
  4. npm run build y pruébala en el Inspector.

Convenciones

  • TypeScript con módulos ESM; Prettier sin punto y coma y con comillas simples.
  • Conventional Commits.
  • El conocimiento es solo lectura en tiempo de ejecución: nada se escribe en disco ni se descarga.

Ramas y publicación

El trabajo nace en una rama salida de dev y el PR va contra dev. De ahí se promueve a qa y, después de probar, a main, siempre con merge de la rama completa. El CI corre lint y build en Node 18, 20 y 22.

Para publicar, actualiza la versión en package.json y CHANGELOG.md y sube un tag v*: el workflow publish.yml compila, publica en npm con provenance, crea el GitHub Release y publica el server.json en el MCP Registry.

GLAMA

vtex-io-mcp MCP server – quality and maintenance score on Glama

Changelog

Ver CHANGELOG.md.

Licencia

MIT

Hecho con amor y café por zeluizr y con la ayuda de Claude ☕

Similar modules

Browse Developer documentation