Provides containerized deployment of the Lulu Print MCP server through Docker and Docker Compose
Used for environment variable configuration to store Lulu API credentials and other settings
Repository hosting for the Lulu Print MCP code, allowing cloning for local development
Used for package installation and management of the Lulu Print MCP server
Used for authentication with Lulu's API through OpenID Connect protocol
Lulu Print MCP Server
A Model Context Protocol (MCP) server that provides integration with Lulu Print API for print-on-demand services through Claude Desktop and other MCP clients.
Features
📚 Print Job Management
- Create and manage print jobs for books and other printed materials
- Track order status from creation to delivery
- Calculate costs before placing orders
- Support for multiple line items per order
📄 File Validation
- Validate interior PDF files before printing
- Validate cover PDF files with dimension checking
- Calculate required cover dimensions based on page count
- Get detailed validation status and error reporting
💰 Cost Calculation
- Calculate product costs based on specifications
- Include shipping and tax calculations
- Support for different shipping levels (MAIL to EXPRESS)
- Get detailed cost breakdowns
🚚 Shipping Management
- Retrieve available shipping options by destination
- Support for international shipping
- Different service levels from standard mail to express delivery
🔔 Webhooks
- Subscribe to print job status changes
- Manage webhook endpoints
- Test webhook delivery
- View webhook submission history
Installation
Global Installation
Local Development
Docker Installation
Configuration
1. Get Lulu API Credentials
- Sign up for a Lulu developer account at https://developers.lulu.com/
- For testing, create a sandbox account at https://developers.sandbox.lulu.com/
- Navigate to your API Keys page
- Copy your client key and client secret
2. Configure Environment Variables
Edit the .env
file with your Lulu API credentials:
Usage with Claude Desktop
Add this MCP server to your Claude Desktop configuration file:
Follow the instructions to update your Claude Desktop configuration file. The script will generate a configuration similar to:
Usage with Cursor
Add this MCP server to your Cursor configuration file:
- Open Cursor Settings (
Cursor → Settings
orCmd+,
on Mac) - Navigate to the Features section
- Find the "Model Context Protocol" settings
- Add the following configuration:
Or if installed globally:
Usage with Windsurf
Add this MCP server to your Windsurf configuration:
- Create or edit the
.windsurf/config.json
file in your project directory - Add the following configuration:
For development setup with Windsurf:
Available Tools
Cost Calculation
calculate-print-job-cost
Calculate the cost of a print job without creating it:
Print Job Management
create-print-job
Create a new print job order:
list-print-jobs
List print jobs with optional filters:
get-print-job
Get details of a specific print job:
update-print-job
Update a print job (only before payment):
cancel-print-job
Cancel a print job (only if unpaid):
get-print-job-status
Get the current status of a print job:
get-print-job-costs
Get detailed costs for a print job:
get-print-job-statistics
Get statistics for print jobs over a time period:
File Validation
validate-interior-file
Validate an interior PDF file:
get-interior-validation
Check validation status:
calculate-cover-dimensions
Calculate required cover dimensions:
validate-cover-file
Validate a cover PDF file:
get-cover-validation
Check cover validation status:
Shipping
get-shipping-options
Get available shipping options:
Webhooks
create-webhook
Create a webhook subscription:
list-webhooks
List all webhook subscriptions:
get-webhook
Get webhook details:
update-webhook
Update a webhook:
delete-webhook
Delete a webhook:
test-webhook
Send a test webhook:
list-webhook-submissions
List webhook delivery attempts:
Lulu Product SKUs
Lulu uses a 27-character SKU system to identify products:
Format: Trim Size + Color + Print Quality + Bind + Paper + PPI + Finish + Linen + Foil
Common Examples
SKU | Description |
---|---|
0850X1100BWSTDLW060UW444MNG | 8.5" x 11" black-and-white standard linen wrap with navy linen and gold foil |
0600X0900FCSTDPB080CW444GXX | 6" x 9" full color standard paperback with glossy cover |
0700X1000FCPRECO060UC444MXX | 7" x 10" full color premium coil-bound with matte cover |
0600X0900BWSTDPB060UW444MXX | 6" x 9" black-and-white standard paperback with matte cover |
Use the Lulu Pricing Calculator to generate SKUs for your specific needs.
Testing with Sandbox
To use the Lulu sandbox environment for testing:
- Create a sandbox account at https://developers.sandbox.lulu.com/
- Get your sandbox API credentials
- Set
LULU_USE_SANDBOX=true
in your.env
file - Or use the
--sandbox
flag when running the CLI:lulu-print-mcp --sandbox
In sandbox mode:
- Use test credit card numbers for payments
- Orders won't be sent to real production
- Perfect for development and testing
Command Line Options
Troubleshooting
Authentication Issues
- Verify your client key and secret are correct
- Check if you're using the right environment (production vs sandbox)
- Ensure your API credentials have the necessary permissions
File Validation Errors
- Ensure PDF files are publicly accessible via URL
- Check file format requirements in Lulu's documentation
- Verify page count and dimensions match the product specifications
Network Issues
- Check your internet connection
- Verify firewall settings allow HTTPS connections to api.lulu.com
- Enable debug mode to see detailed request/response logs
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
MIT
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Provides integration with Lulu Print API for print-on-demand services through Claude Desktop and other MCP clients, enabling users to create and manage print jobs, validate files, calculate costs, and handle shipping for books and printed materials.
Related MCP Servers
- -securityAlicense-qualityThis tool creates a Model Context Protocol (MCP) server that acts as a proxy for any API that has an OpenAPI v3.1 specification. This allows you to use Claude Desktop to easily interact with both local and remote server APIs.Last updated -126742JavaScriptMIT License
Fused MCP Agentsofficial
-securityAlicense-qualityA Python-based MCP server that allows Claude and other LLMs to execute arbitrary Python code directly through your desktop Claude app, enabling data scientists to connect LLMs to APIs and executable code.Last updated -26MIT License- -securityFlicense-qualityAn MCP server that integrates with Claude to provide smart documentation search capabilities across multiple AI/ML libraries, allowing users to retrieve and process technical information through natural language queries.Last updated -Python
- -securityAlicense-qualityAn MCP server that allows Claude models to use Union tasks, workflows, and apps as tools in conversations.Last updated -5PythonApache 2.0