Skip to main content
Glama

Servidor MCP de impresión Lulu

Un servidor de Protocolo de contexto de modelo (MCP) que proporciona integración con Lulu Print API para servicios de impresión a pedido a través de Claude Desktop y otros clientes MCP.

Características

📚 Gestión de trabajos de impresión

  • Crear y administrar trabajos de impresión para libros y otros materiales impresos

  • Seguimiento del estado del pedido desde su creación hasta la entrega

  • Calcular los costes antes de realizar pedidos

  • Admite múltiples líneas de artículos por pedido

📄 Validación de archivos

  • Validar los archivos PDF interiores antes de imprimir

  • Validar archivos PDF de portada con verificación de dimensiones

  • Calcular las dimensiones de la cubierta requeridas según el número de páginas

  • Obtenga el estado de validación detallado y los informes de errores

💰 Cálculo de costos

  • Calcular los costos del producto según las especificaciones

  • Incluir cálculos de envío e impuestos

  • Soporte para diferentes niveles de envío (CORREO a EXPRESS)

  • Obtenga desgloses detallados de costos

🚚 Gestión de envíos

  • Recuperar opciones de envío disponibles por destino

  • Soporte para envíos internacionales

  • Diferentes niveles de servicio desde correo estándar hasta entrega exprés

🔔 Webhooks

  • Suscribirse a los cambios de estado del trabajo de impresión

  • Administrar puntos finales de webhook

  • Prueba de entrega de webhook

  • Ver el historial de envío de webhooks

Related MCP server: Fused MCP Agents

Instalación

Instalación global

# Install the package globally npm install -g @devlimelabs/lulu-print-mcp # Start the server lulu-print-mcp

Desarrollo local

# Clone the repository git clone https://github.com/devlimelabs/lulu-print-mcp.git cd lulu-print-mcp # Install dependencies npm install # Set up development environment npm run setup:dev # Start the development server npm run dev

Instalación de Docker

# Build and run with Docker Compose docker-compose up -d # Or build and run the Docker image directly docker build -t lulu-print-mcp . docker run -p 3000:3000 lulu-print-mcp

Configuración

1. Obtenga las credenciales de la API de Lulu

  1. Regístrese para obtener una cuenta de desarrollador de Lulu en https://developers.lulu.com/

  2. Para realizar pruebas, cree una cuenta sandbox en https://developers.sandbox.lulu.com/

  3. Vaya a su página de claves API

  4. Copia tu clave de cliente y tu secreto de cliente

2. Configurar variables de entorno

# Create a configuration file cp .env.example .env

Edite el archivo .env con sus credenciales de API de Lulu:

# Required: Your Lulu API credentials LULU_CLIENT_KEY=your_client_key_here LULU_CLIENT_SECRET=your_client_secret_here # Optional: API endpoints (defaults are provided) LULU_API_URL=https://api.lulu.com LULU_SANDBOX_API_URL=https://api.sandbox.lulu.com LULU_AUTH_URL=https://api.lulu.com/auth/realms/glasstree/protocol/openid-connect/token LULU_SANDBOX_AUTH_URL=https://api.sandbox.lulu.com/auth/realms/glasstree/protocol/openid-connect/token # Use sandbox environment for testing (default: false) LULU_USE_SANDBOX=false # Enable debug logging (default: false) DEBUG=false

Uso con Claude Desktop

Agregue este servidor MCP a su archivo de configuración de Claude Desktop:

# Run the Claude Desktop setup script npm run setup:claude

Sigue las instrucciones para actualizar el archivo de configuración de Claude Desktop. El script generará una configuración similar a la siguiente:

{ "mcpServers": { "lulu-print": { "command": "lulu-print-mcp", "env": { "LULU_CLIENT_KEY": "your_client_key", "LULU_CLIENT_SECRET": "your_client_secret" } } } }

Uso con cursor

Agregue este servidor MCP a su archivo de configuración de Cursor:

  1. Abra la configuración del cursor ( Cursor → Settings o Cmd+, en Mac)

  2. Vaya a la sección Características

  3. Busque la configuración del "Protocolo de contexto del modelo"

  4. Agregue la siguiente configuración:

{ "mcpServers": { "lulu-print": { "command": "node", "args": ["/path/to/global/lulu-print-mcp/dist/index.js"], "env": { "LULU_CLIENT_KEY": "your_client_key", "LULU_CLIENT_SECRET": "your_client_secret" } } } }

O si se instala globalmente:

{ "mcpServers": { "lulu-print": { "command": "lulu-print-mcp", "env": { "LULU_CLIENT_KEY": "your_client_key", "LULU_CLIENT_SECRET": "your_client_secret" } } } }

Uso con Windsurf

Añade este servidor MCP a tu configuración de Windsurf:

  1. Cree o edite el archivo .windsurf/config.json en el directorio de su proyecto

  2. Agregue la siguiente configuración:

{ "mcpServers": { "lulu-print": { "command": "lulu-print-mcp", "env": { "LULU_CLIENT_KEY": "your_client_key", "LULU_CLIENT_SECRET": "your_client_secret" } } } }

Para la configuración de desarrollo con Windsurf:

{ "mcpServers": { "lulu-print": { "command": "tsx", "args": ["src/index.ts"], "cwd": "/path/to/lulu-print-mcp", "env": { "LULU_CLIENT_KEY": "your_client_key", "LULU_CLIENT_SECRET": "your_client_secret" } } } }

Herramientas disponibles

Cálculo de costos

calcular el coste del trabajo de impresión

Calcular el coste de un trabajo de impresión sin crearlo:

calculate-print-job-cost line_items: Array of items to price - pod_package_id: Product SKU (e.g., "0600X0900BWSTDPB060UW444MXX") - page_count: Number of pages - quantity: Number of copies shipping_address: Delivery address - street1: Street address - city: City name - country_code: 2-letter ISO country code - postcode: Postal code - phone_number: Contact phone shipping_option: MAIL | PRIORITY_MAIL | GROUND | EXPEDITED | EXPRESS

Gestión de trabajos de impresión

crear-trabajo-de-impresión

Crear una nueva orden de trabajo de impresión:

create-print-job line_items: Array of books to print - title: Book title - cover_url: URL to cover PDF - interior_url: URL to interior PDF - pod_package_id: Product SKU - quantity: Number of copies shipping_address: Delivery address - name: Recipient name - street1: Street address - city: City - country_code: 2-letter ISO code - postcode: Postal code - phone_number: Phone contact_email: Email for order communication shipping_level: MAIL | PRIORITY_MAIL | GROUND | EXPEDITED | EXPRESS external_id: Your order reference (optional)

lista-impresión-trabajos

Lista de trabajos de impresión con filtros opcionales:

list-print-jobs page: Page number (optional) page_size: Results per page (optional) status: Filter by status (optional) created_after: Filter by creation date (optional) created_before: Filter by creation date (optional)

obtener-trabajo-de-impresión

Obtener detalles de un trabajo de impresión específico:

get-print-job id: Print job ID

actualizar-trabajo-de-impresión

Actualizar un trabajo de impresión (solo antes del pago):

update-print-job id: Print job ID external_id: New reference (optional) contact_email: New email (optional)

cancelar trabajo de impresión

Cancelar un trabajo de impresión (solo si no se ha pagado):

cancel-print-job id: Print job ID

obtener el estado del trabajo de impresión

Obtener el estado actual de un trabajo de impresión:

get-print-job-status id: Print job ID

costos de obtener trabajos de impresión

Obtenga los costos detallados de un trabajo de impresión:

get-print-job-costs id: Print job ID

obtener estadísticas del trabajo de impresión

Obtener estadísticas de trabajos de impresión durante un período de tiempo:

get-print-job-statistics start_date: Start date (YYYY-MM-DD) (optional) end_date: End date (YYYY-MM-DD) (optional) group_by: DAY | WEEK | MONTH (optional)

Validación de archivos

validar archivo interior

Validar un archivo PDF interior:

validate-interior-file file_url: URL to interior PDF pod_package_id: Product SKU (optional, for normalization)

obtener validación interior

Comprobar el estado de la validación:

get-interior-validation validation_id: ID from validate-interior-file

calcular-dimensiones-de-cobertura

Calcular las dimensiones de la cubierta requerida:

calculate-cover-dimensions pod_package_id: Product SKU page_count: Number of interior pages unit: IN | MM | PT (optional, default: PT)

validar archivo de portada

Validar un archivo PDF de portada:

validate-cover-file file_url: URL to cover PDF pod_package_id: Product SKU page_count: Number of interior pages

validación de obtención de cobertura

Comprobar el estado de validación de la portada:

get-cover-validation validation_id: ID from validate-cover-file

Envío

obtener opciones de envío

Obtenga las opciones de envío disponibles:

get-shipping-options country_code: 2-letter ISO country code state_code: State/province code (optional) quantity: Number of items (optional) pod_package_id: Product SKU (optional) page_count: Number of pages (optional) level: Filter by specific level (optional)

Webhooks

crear-webhook

Crear una suscripción de webhook:

create-webhook url: Webhook endpoint URL topics: Array of events (currently supports ["PRINT_JOB_STATUS_CHANGED"])

lista-webhooks

Listar todas las suscripciones de webhook:

list-webhooks

obtener-webhook

Obtener detalles del webhook:

get-webhook id: Webhook ID

actualización-webhook

Actualizar un webhook:

update-webhook id: Webhook ID url: New URL (optional) topics: New topics (optional) is_active: Enable/disable (optional)

eliminar-webhook

Eliminar un webhook:

delete-webhook id: Webhook ID

prueba-webhook

Enviar un webhook de prueba:

test-webhook id: Webhook ID topic: PRINT_JOB_STATUS_CHANGED

envíos de lista de webhooks

Lista de intentos de entrega de webhook:

list-webhook-submissions webhook_id: Filter by webhook (optional) page: Page number (optional) page_size: Results per page (optional)

SKU de productos Lulu

Lulu utiliza un sistema SKU de 27 caracteres para identificar los productos:

Formato : Trim Size + Color + Print Quality + Bind + Paper + PPI + Finish + Linen + Foil

Ejemplos comunes

Código SKU

Descripción

0850X1100BWSTDLW060UW444MNG

Envoltura de lino estándar en blanco y negro de 8,5" x 11" con lino azul marino y lámina dorada

0600X0900FCSTDPB080CW444GXX

Libro de bolsillo estándar a todo color de 6" x 9" con cubierta brillante

0700X1000FCPRECO060UC444MXX

Encuadernación en espiral premium a todo color de 7" x 10" con cubierta mate

0600X0900BWSTDPB060UW444MXX

Libro de bolsillo estándar en blanco y negro de 6" x 9" con cubierta mate

Utilice la calculadora de precios de Lulu para generar SKU para sus necesidades específicas.

Pruebas con Sandbox

Para utilizar el entorno sandbox de Lulu para realizar pruebas:

  1. Crea una cuenta sandbox en https://developers.sandbox.lulu.com/

  2. Obtenga sus credenciales de API de sandbox

  3. Establezca LULU_USE_SANDBOX=true en su archivo .env

  4. O utilice el indicador --sandbox al ejecutar la CLI: lulu-print-mcp --sandbox

En modo sandbox:

  • Utilice números de tarjetas de crédito de prueba para los pagos

  • Los pedidos no se enviarán a producción real.

  • Perfecto para desarrollo y pruebas.

Opciones de línea de comandos

lulu-print-mcp [options] Options: -s, --sandbox Use Lulu sandbox environment instead of production -d, --debug Enable debug logging -h, --help Display help -V, --version Display version

Solución de problemas

Problemas de autenticación

  • Verifique que su clave de cliente y su secreto sean correctos

  • Comprueba si estás utilizando el entorno adecuado (producción vs. sandbox)

  • Asegúrese de que sus credenciales de API tengan los permisos necesarios

Errores de validación de archivos

  • Asegúrese de que los archivos PDF sean accesibles públicamente a través de URL

  • Consulte los requisitos de formato de archivo en la documentación de Lulu

  • Verifique que el número de páginas y las dimensiones coincidan con las especificaciones del producto

Problemas de red

  • Comprueba tu conexión a Internet

  • Verifique que la configuración del firewall permita conexiones HTTPS a api.lulu.com

  • Habilite el modo de depuración para ver registros detallados de solicitudes y respuestas

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

Licencia

Instituto Tecnológico de Massachusetts (MIT)

One-click Deploy
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/devlimelabs/lulu-print-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server