home / mcp / lulu print mcp server
MCP server for lulu-print-mcp - Part of the master-mcps collection
Configuration
View docs{
"mcpServers": {
"devlimelabs-lulu-print-mcp": {
"command": "lulu-print-mcp",
"args": [],
"env": {
"DEBUG": "false",
"LULU_CLIENT_KEY": "your_client_key_here",
"LULU_USE_SANDBOX": "false",
"LULU_CLIENT_SECRET": "your_client_secret_here"
}
}
}
}Lulu Print MCP Server enables seamless integration with Lulu Print API for print-on-demand workflows. You can manage print jobs, validate files, calculate costs, handle shipping, and subscribe to status Webhooks from a single MCP server reachable by Claude Desktop, Cursor, Windsurf, or other MCP clients.
You connect an MCP client to the Lulu Print MCP Server to create and manage print jobs, validate interior and cover PDFs, estimate costs, and obtain shipping options. You can set up webhooks to receive status updates and test deliveries to ensure your integration behaves as expected. Use environment variables for credentials and toggle sandbox mode for safe testing.
Prerequisites: you need Node.js installed on your system. If you plan to run Docker, ensure Docker and Docker Compose are available.
# Global installation
npm install -g @devlimelabs/lulu-print-mcp
# Start the server
lulu-print-mcpLocal development flow: clone the project, install dependencies, set up the development environment, and run the dev server.
# 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 devDocker usage: you can build and run with Docker Compose or run the image directly.
# 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-mcpConfigure your Lulu API credentials in a configuration file. Create a copy of the example config and edit it with your keys and endpoints.
# Create a configuration file
cp .env.example .env
```
```bash
# Edit the .env file with your Lulu API credentials
LULU_CLIENT_KEY=your_client_key_here
LULU_CLIENT_SECRET=your_client_secret_here
# Optional 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=falseAdd the MCP server to your client configuration so it can communicate with Lulu Print APIs. You will typically provide the server command and required environment variables.
{
"mcpServers": {
"lulu-print": {
"command": "lulu-print-mcp",
"env": {
"LULU_CLIENT_KEY": "your_client_key",
"LULU_CLIENT_SECRET": "your_client_secret"
}
}
}
}Protect your API credentials. Store keys in a secure environment file and ensure the file is not committed to version control. Use sandbox mode for development to avoid affecting real orders.
Environment variables shown here are required for running the MCP server with Lulu Print integration.
If you encounter authentication issues, verify your client key and secret and ensure you are using the correct environment (production vs sandbox). Check that your API credentials have the necessary permissions.
For file validation errors, confirm that PDFs are publicly accessible via URL and that page counts and dimensions match product specifications.
If you experience network issues, ensure a stable internet connection and that HTTPS connections to the Lulu API are not blocked. Enable debug mode to see more detailed logs.
Webhooks are available to subscribe to print job status changes and to test webhook delivery. You can manage webhook endpoints and view delivery history.
Calculate the cost of a print job without creating it, including line items and shipping options.
Create a new print job with details such as titles, PDFs for cover/interior, shipping address, and options.
List existing print jobs with filters like status and date range.
Retrieve details for a specific print job by ID.
Update details of a print job before payment is completed.
Cancel an unpaid print job by ID.
Get the current status of a print job.
Obtain a detailed cost breakdown for a print job.
Get aggregated statistics for print jobs over a time period.
Validate an interior PDF for print readiness.
Validate a cover PDF and check required dimensions.
Compute required cover dimensions based on interior pages.
Retrieve available shipping options by destination and product.
Subscribe to webhook events for status changes.
List configured webhook subscriptions.
Retrieve details for a specific webhook.
Update webhook configuration.
Remove a webhook subscription.
Send a test webhook delivery for a given topic.
List delivery attempts for webhook endpoints.