打印保险库MCP服务器
一 主控程序 允许AI助手完全访问自托管服务器的服务器 打印保险库 实例——3D打印库存、耗材、打印机、项目和打印跟踪器管理应用程序。
专为Claude Desktop、Claude Code和任何兼容MCP的客户端而构建。
快速开始
先决条件
紫外线 (Python包管理器)
正在运行的Print Vault实例(v1.1.0+)
安装并运行
复制 # Clone the repo
git clone https://github.com/your-org/PrintVaultMCP.git
cd PrintVaultMCP
# Copy and configure environment
cp .env.example .env
# Edit .env and set PRINT_VAULT_URL to your instance
# Run the server
uv run print-vault-mcp
添加到克劳德桌面
添加到您的 claude_desktop_config.json:
复制 {
"mcpServers": {
"print-vault": {
"command": "uv",
"args": ["--directory", "/path/to/PrintVaultMCP", "run", "print-vault-mcp"],
"env": {
"PRINT_VAULT_URL": "http://192.168.1.100:8000"
}
}
}
}
添加到克劳德代码
复制 claude mcp add print-vault \
--command "uv --directory /path/to/PrintVaultMCP run print-vault-mcp" \
--env PRINT_VAULT_URL=http://192.168.1.100:8000
配置
变量
必填
默认
描述
PRINT_VAULT_URL
是
--
您的Print Vault实例的基本URL
PRINT_VAULT_TIMEOUT
没有
30
HTTP请求超时(秒)
工具
40个工具分为7组:
仪表板和系统
工具
说明
get_dashboard
完整状态概述——警报、统计数据、特色跟踪器、活动项目
get_version
当前打印保险库版本
dismiss_alert
取消特定仪表板警报
库存管理
工具
说明
search_inventory
按关键字、品牌、零件类型或位置搜索项目
get_inventory_item
特定项目的全部细节
add_inventory_item
添加新项目(自动创建品牌、地点等)
update_inventory_item
更新现有项目上的任何字段
get_low_stock
列出所有达到或低于阈值的消耗品
get_item_allocation
查看哪些项目正在使用某个项目
长丝管理
工具
说明
list_materials
浏览材料蓝图和通用类型
create_material
创建通用材料类型或特定蓝图
get_material_spools
列出物料蓝图的物理线轴
list_spools
使用状态/打印机/滤色器浏览线轴
add_filament_spool
添加链接到材质蓝图的新线轴
quick_add_spool
快速添加没有蓝图的线轴(独立字段)
update_spool_weight
更新当前重量(自动更新状态)
mark_spool_empty
将滑阀标记为空
open_spool
从未打开的批次中打开卷轴
archive_spools
批量存档空线轴
toggle_material_favorite
在材质上切换收藏夹(最多5个)
打印机管理
工具
说明
list_printers
列出具有搜索和状态过滤器的打印机
get_printer
完整细节,包括模组和灯丝
update_printer
更新状态、注释等。
add_mod
为打印机添加模块/升级
update_mod
更新mod状态
项目管理
工具
说明
list_projects
列出具有搜索和状态筛选器的项目
get_project
包含BOM、库存、打印机、跟踪器的完整细节
create_project
创建新项目
update_project
更新项目字段
add_bom_item
添加BOM行项目(自动储备链接库存)
get_shopping_list
所有活动项目的合并采购清单
link_printer_to_project
将打印机与项目关联
打印跟踪器
工具
说明
list_trackers
列出所有打印跟踪器
get_tracker
完整的跟踪器详细信息,包括文件列表和进度
create_tracker_from_github
在GitHub仓库中抓取可打印文件
update_file_status
更新跟踪器文件的打印状态
参考数据
工具
说明
list_brands
所有品牌/制造商
list_locations
所有存储位置
list_part_types
所有零件类型类别
list_vendors
所有供应商/供货商
项目结构
复制 PrintVaultMCP/
├── src/print_vault_mcp/
│ ├── __init__.py # Package entry point
│ ├── __main__.py # python -m support
│ ├── client.py # Async HTTP client for Print Vault API
│ ├── formatters.py # AI-friendly response formatters
│ └── server.py # MCP server & tool definitions
├── docs/
│ ├── design.md # Architecture & design document
│ └── reference/ # API contract references (links to upstream source)
├── .env.example # Environment variable template
├── .gitignore
├── pyproject.toml # uv/pip package configuration
└── README.md
发展
复制 # Install dependencies
uv sync
# Run the server locally (stdio mode)
PRINT_VAULT_URL=http://localhost:8000 uv run print-vault-mcp
# Run with the MCP inspector for debugging
npx @modelcontextprotocol/inspector uv run print-vault-mcp
运作原理
服务器是一个无状态协议转换层。它通过MCP(stdio传输)接收来自AI客户端的结构化工具调用,将其转换为针对Print Vault REST API的HTTP请求,并返回AI可以推理的格式化文本响应。
复制 AI Client ──MCP (stdio)──> PrintVaultMCP ──HTTP/JSON──> Print Vault
打印保险库使用 AllowAny 每个端点(单用户自托管应用程序)的权限,因此MCP服务器只需要基本URL,不需要令牌或凭据。
许可证
AGPL-3.0 --与相同的许可证系列 打印保险库 本身。