Skip to main content
Glama
BrandonDoster

PrintVaultMCP

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PRINT_VAULT_URLYesBase URL of your Print Vault instance
PRINT_VAULT_TIMEOUTNoHTTP request timeout in seconds30

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
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

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/BrandonDoster/PrintVault_MCP'

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