Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PATH | No | System path, adjusted for your system (e.g., /opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin). Needed for libusb access. | |
| DEBUG | No | Enable debug logging (true/false). | false |
| CARD_WIDTH | No | Card width in pixels (optimized for 58mm thermal printers). | 580 |
| OUTPUT_DIR | No | Where generated card images are saved (relative to Claude Desktop's working directory). | ./images |
| CARD_HEIGHT | No | Card height in pixels (optimized for 58mm thermal printers). | 580 |
| PRINTER_NAME | No | The name of your thermal printer. | EPSON_TM_T20III-17 |
| NOTION_API_KEY | No | Your Notion integration API key. Required only for Notion integration. | |
| TASKS_DATABASE_ID | No | Your Notion tasks database ID. Required only for Notion integration. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| todo_list_cards_from_markdown | Generate and optionally print task cards from a markdown file. Parses a markdown file with task lists (using ## headers and - bullets), generates PNG images for each section, and optionally sends them to your thermal printer. Priority tasks marked with * get a star symbol. Args: file: Path to markdown file (relative to current directory) no_print: If True, only generate images without printing (default: False) Returns: List of generated PNG file paths Example markdown format: ## Morning Tasks - *Get dressed (priority) - Brush teeth - Make coffee |
| task_cards_from_notion | Fetch today's tasks from Notion and generate thermal printer cards with QR codes. Connects to your Notion database, retrieves tasks with status "Today" or "In Progress", generates individual task cards with QR codes linking back to Notion, and optionally prints them. Provides real-time progress updates to prevent client timeouts. Requires NOTION_API_KEY and TASKS_DATABASE_ID environment variables. Args: no_print: If True, only generate images without printing (default: False) Returns: List of generated PNG file paths Progress tracking includes: - API connection status - Task fetching progress - Individual card generation - Print success/failure for each card |
| print_only | Send existing image files to the thermal printer without regenerating them. Scans a directory for PNG/JPG image files and sends them directly to your thermal printer. Useful for reprinting previously generated cards or printing custom images you've created. Args: directory: Path to directory containing image files Returns: Success message with count of printed images Supported formats: PNG, JPG, JPEG Images are printed in alphabetical order with automatic paper cutting. |
| test_printer_connection | Verify that your thermal printer is connected and responding. Attempts to establish a USB connection to your ESC/POS thermal printer and sends a basic test command. Use this to troubleshoot connection issues before printing actual content. Returns: Success/failure message with connection status Checks: - USB device detection - ESC/POS command response - Printer initialization If this fails, check: - Printer is powered on - USB cable is connected - PRINTER_NAME environment variable matches your device - libusb is installed on your system |
| run_diagnostics | Perform comprehensive system diagnostics for MCPOSprint setup. Runs a complete health check of your MCPOSprint installation, including configuration validation, printer connectivity, Notion API access, and system dependencies. Essential for troubleshooting setup issues. Returns: Detailed diagnostic report as JSON object Diagnostic checks include: - Environment variable configuration - Printer detection and connection - Notion API authentication and database access - Python package dependencies - Output directory permissions - System library availability (libusb, PIL, etc.) Use this when: - Setting up MCPOSprint for the first time - Troubleshooting printing or Notion connection issues - Verifying configuration after changes |
| info | Get MCPOSprint server information and system status. Returns version, dependency status, configuration issues, and operational health. Essential for troubleshooting and verifying proper setup. Returns: System information including version, dependencies, and configuration status Checks include: - Server version and build information - Required system dependencies (libusb, PIL, etc.) - Environment variable configuration - Log file accessibility - Basic printer connectivity |
| create_sample_files | Generate a sample markdown file to test MCPOSprint functionality. Creates 'sample_cards.md' in the current directory with example task lists formatted for MCPOSprint. Perfect for testing your setup or learning the markdown format before creating your own task lists. Returns: Success message confirming file creation Generated file includes: - Multiple task sections (Morning, Work, Evening) - Examples of priority tasks (marked with *) - Proper formatting with ## headers and - bullets Use the generated file with process_static_cards tool to test printing. Configuration is handled via environment variables in your MCP client. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| get_thermal_card_size | Get detailed thermal printer card size specifications and constraints. Provides comprehensive technical specifications for designing images that will print correctly on ESC/POS thermal printers. Essential reference for custom image creation or understanding MCPOSprint's card generation parameters. |