PrintVaultMCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PRINT_VAULT_URL | Yes | Base URL of your Print Vault instance | |
| PRINT_VAULT_TIMEOUT | No | HTTP request timeout in seconds | 30 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| 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 |
|---|---|
| get_dashboardA | Get a full status overview of your Print Vault: alerts, stats, featured trackers, and active projects. |
| get_versionA | Get the current Print Vault version. |
| dismiss_alertA | Dismiss a specific dashboard alert. Args: alert_type: The type of alert (e.g. 'printer_repair', 'low_stock', 'maintenance_overdue'). alert_id: The ID of the specific alert to dismiss. |
| search_inventoryA | Search inventory items by keyword, brand, part type, or location. Args: query: Free-text search across title, brand, part type, location, and notes. brand: Filter by brand name (exact match on brand__name). part_type: Filter by part type name (exact match on part_type__name). location: Filter by location name (exact match on location__name). |
| get_inventory_itemB | Get full details on a specific inventory item. Args: item_id: The ID of the inventory item. |
| add_inventory_itemA | Add a new inventory item. Brand, part type, location, and vendor are created automatically if they don't exist. Args: title: Name/title of the inventory item. quantity: Quantity on hand. brand: Brand name (will be created if new). part_type: Part type name (will be created if new). location: Storage location name (will be created if new). cost: Unit cost. is_consumable: Whether this is a consumable item (enables low stock tracking). low_stock_threshold: Quantity threshold for low stock alerts (consumables only). notes: Free-text notes. vendor: Vendor name (will be created if new). vendor_link: URL to vendor product page. model: Model/part number. |
| update_inventory_itemA | Update an existing inventory item. Only the fields you provide will be changed. Args: item_id: The ID of the inventory item to update. title: New title. quantity: New quantity on hand. brand: Brand name (will be created if new). part_type: Part type name (will be created if new). location: Location name (will be created if new). cost: Unit cost. is_consumable: Whether this is a consumable item. low_stock_threshold: Low stock alert threshold. notes: Free-text notes. vendor: Vendor name (will be created if new). vendor_link: URL to vendor product page. model: Model/part number. |
| get_low_stockA | List all consumable inventory items that are at or below their low stock threshold. |
| get_item_allocationA | Get the allocation summary for an inventory item — how much is on hand, needed, and which projects are using it. Args: item_id: The ID of the inventory item. |
| list_materialsA | List filament material blueprints and generic material types. Args: search: Search by material or brand name. material_type: Filter by 'generic' or 'blueprint'. favorites: If true, show only favorited materials. |
| get_material_spoolsA | List all physical spools for a given material blueprint. Args: material_id: The ID of the material blueprint. |
| create_materialA | Create a new material — either a generic type (e.g. 'PLA') or a specific blueprint (e.g. 'Sunlu PLA+ Black'). A generic material is a base type that blueprints reference. A blueprint is a specific brand/color combination that spools are linked to. Create a generic first, then blueprints that reference it via base_material_id. Args: name: Material name (e.g. 'PLA' for generic, 'Sunlu PLA+ Black' for blueprint). is_generic: True for a generic base material, False for a specific blueprint. brand: Brand name for blueprints (will be created if new). Ignored for generics. base_material_id: ID of a generic material this blueprint is based on. colors: List of color names (e.g. ['Black'] or ['Black', 'Red'] for multicolor). color_family: Color family for grouping (e.g. 'Black', 'Red', 'Neutral'). diameter: Filament diameter in mm (default 1.75). spool_weight: Net filament weight per spool in grams (default 1000). empty_spool_weight: Empty spool weight in grams. nozzle_temp_min: Minimum nozzle temperature in Celsius. nozzle_temp_max: Maximum nozzle temperature in Celsius. bed_temp_min: Minimum bed temperature in Celsius. bed_temp_max: Maximum bed temperature in Celsius. density: Filament density in g/cm3 (e.g. 1.24 for PLA). price_per_spool: Price per spool. vendor: Vendor name (will be created if new). vendor_link: URL to vendor product page. notes: Free-text notes. features: List of feature names (e.g. ['Matte', 'High Speed']). Created if new. |
| list_spoolsA | List filament spools with optional filtering. Args: status: Filter by status — 'new', 'opened', 'active', 'in_use', 'low', 'empty', 'archived'. printer: Filter by assigned printer ID. color: Filter by color name (fuzzy match). is_archived: If true, show only archived spools. If false, exclude archived. |
| add_filament_spoolA | Add new filament spool(s) linked to an existing material blueprint. Args: filament_type_id: ID of the material blueprint this spool uses. quantity: Number of identical spools to add (default 1). initial_weight: Net filament weight in grams (default 1000g / 1kg). location: Storage location name (will be created if new). notes: Free-text notes. price_paid: Price paid for this spool. |
| quick_add_spoolA | Quick-add a filament spool without a material blueprint. Use this when you just want to track a spool without setting up a full material blueprint first. Args: standalone_name: Name for this spool (e.g. 'eSun PLA+ Black'). quantity: Number of identical spools to add (default 1). initial_weight: Net filament weight in grams (default 1000g / 1kg). standalone_brand: Brand name (will be created if new). standalone_material_type_id: ID of a generic material type (e.g. PLA, PETG). Use list_materials with material_type='generic' to find IDs. standalone_colors: List of color names (e.g. ['Black']). standalone_color_family: Color family for grouping (e.g. 'Black', 'Red'). location: Storage location name (will be created if new). notes: Free-text notes. price_paid: Price paid for this spool. standalone_nozzle_temp_min: Min nozzle temp in Celsius. standalone_nozzle_temp_max: Max nozzle temp in Celsius. standalone_bed_temp_min: Min bed temp in Celsius. standalone_bed_temp_max: Max bed temp in Celsius. standalone_density: Filament density in g/cm3. |
| update_spool_weightA | Update the current weight of an opened filament spool. Auto-updates status based on remaining weight. Args: spool_id: The ID of the spool to update. current_weight: The current net filament weight in grams. |
| mark_spool_emptyA | Mark a filament spool as empty and clear its printer assignment. Args: spool_id: The ID of the spool to mark as empty. |
| open_spoolA | Open a spool from an unopened batch. Creates a new individual spool record. Args: spool_id: The ID of the unopened spool batch to open from. status: Status for the opened spool — 'opened' or 'in_use'. location_id: Optional location ID to assign the opened spool. printer_id: Optional printer ID to assign the opened spool. |
| archive_spoolsA | Bulk archive empty spools. Args: spool_ids: List of spool IDs to archive (must have 'empty' status). |
| toggle_material_favoriteA | Toggle the favorite status of a material blueprint (max 5 favorites). Args: material_id: The ID of the material blueprint. |
| list_printersA | List all printers with optional search and status filter. Args: search: Search by title, manufacturer, serial number, or notes. status: Filter by status (e.g. 'Active', 'Under Repair', 'Retired'). |
| get_printerA | Get full details on a specific printer including mods and assigned filament. Args: printer_id: The ID of the printer. |
| update_printerA | Update a printer record. Only the fields you provide will be changed. Args: printer_id: The ID of the printer to update. title: New title. status: New status (e.g. 'Active', 'Under Repair', 'Retired'). serial_number: Serial number. notes: Free-text notes. purchase_price: Purchase price. maintenance_notes: Maintenance notes. manufacturer: Manufacturer/brand name (will be created if new). |
| add_modA | Add a mod/upgrade to a printer. Args: printer: The ID of the printer to add the mod to. name: Name of the mod. link: URL to the mod (Printables, GitHub, etc.). status: Mod status — 'Planned', 'In Progress', 'Completed'. |
| update_modA | Update a printer mod. Only the fields you provide will be changed. Args: mod_id: The ID of the mod to update. name: New name for the mod. link: URL to the mod. status: New status — 'Planned', 'In Progress', 'Completed'. |
| list_projectsA | List projects with optional search and status filter. Args: search: Search by project name, description, status, or notes. status: Filter by status — 'Planning', 'In Progress', 'On Hold', 'Completed', 'Canceled'. |
| get_projectA | Get full project details including BOM, linked inventory, printers, trackers, and files. Args: project_id: The ID of the project. |
| create_projectA | Create a new project. Args: project_name: Name of the project. description: Project description. status: Initial status — 'Planning', 'In Progress', 'On Hold'. start_date: Start date in YYYY-MM-DD format. due_date: Due date in YYYY-MM-DD format. notes: Free-text notes. |
| update_projectA | Update a project. Only the fields you provide will be changed. Args: project_id: The ID of the project to update. project_name: New project name. description: New description. status: New status — 'Planning', 'In Progress', 'On Hold', 'Completed', 'Canceled'. start_date: Start date in YYYY-MM-DD format. due_date: Due date in YYYY-MM-DD format. notes: Free-text notes. |
| add_bom_itemA | Add a Bill of Materials line item to a project. If linked to an inventory item, it reserves stock. Args: project: The ID of the project. description: Description of the BOM item (e.g. "M3x8 SHCS"). quantity_needed: Quantity needed. inventory_item: Optional ID of an existing inventory item to link (reserves stock). status: BOM status — 'linked' (auto-reserves), 'unlinked', or 'needs_purchase'. notes: Free-text notes. |
| get_shopping_listA | Get the consolidated shopping list — items that need to be purchased across all active projects. |
| link_printer_to_projectB | Associate a printer with a project. Args: project: The project ID. printer: The printer ID. |
| list_trackersA | List all print trackers with optional search. Args: search: Search by tracker name or GitHub URL. |
| get_trackerA | Get full tracker details including file list and progress. Args: tracker_id: The ID of the tracker. |
| create_tracker_from_githubA | Crawl a GitHub repository for printable files and return the results. Use this to preview files before creating a tracker. Args: github_url: Full GitHub URL to a repository or subdirectory (e.g. https://github.com/VoronDesign/Voron-0/tree/main/STLs). |
| update_file_statusB | Update the print status or printed quantity of a tracker file. Args: file_id: The ID of the tracker file. status: New status for the file. printed_quantity: Number of copies printed so far. |
| list_brandsA | List all brands/manufacturers in the system. |
| list_locationsA | List all storage locations in the system. |
| list_part_typesB | List all part types/categories in the system. |
| list_vendorsA | List all vendors/suppliers in the system. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/BrandonDoster/PrintVault_MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server