Skip to main content
Glama
check_spz_and_install.py3.05 kB
"""Check .spz support and install Unity plugins. This script checks for .spz conversion tools and installs Unity plugins for Gaussian splat support (as an alternative to .spz). """ import asyncio import sys from pathlib import Path # Add src to path sys.path.insert(0, str(Path(__file__).parent.parent / "src")) from robotics_mcp.tools.spz_converter import SPZConverterTool from fastmcp import FastMCP async def main(): """Check .spz support and provide installation options.""" mcp = FastMCP("SPZ-Checker") tool = SPZConverterTool(mcp) tool.register() print("=" * 60) print("SPZ File Support Check") print("=" * 60) print() # Check support print("1. Checking .spz conversion tools...") async with mcp.client() as client: result = await client.call_tool("spz_converter", {"operation": "check_spz_support"}) print(f" Status: {result.get('status', 'unknown')}") if result.get("data"): tools = result["data"].get("tools_available", {}) print(f" Adobe spz-tools: {'✅' if tools.get('adobe_spz_tools') else '❌'}") print(f" Python spz lib: {'✅' if tools.get('python_spz_lib') else '❌'}") print(f" Manual conversion: {'✅' if tools.get('manual_conversion') else '❌'}") if result["data"].get("recommendations"): print("\n Recommendations:") for rec in result["data"]["recommendations"]: print(f" - {rec}") print() print("2. Extracting .spz file info...") spz_path = r"C:\Users\sandr\Downloads\Modern Tropical Luxury Residence.spz" if Path(spz_path).exists(): async with mcp.client() as client: result = await client.call_tool("spz_converter", {"operation": "extract_spz_info", "spz_path": spz_path}) if result.get("status") == "success" and result.get("data"): data = result["data"] print(f" File: {data.get('file_path')}") print(f" Size: {data.get('file_size_mb')} MB") print(f" Format: {data.get('format')}") print(f" Note: {data.get('note')}") print() print("=" * 60) print("Installation Options") print("=" * 60) print() print("Since there's no Unity plugin for .spz files, here are your options:") print() print("Option 1: Install Gaussian Splatting Plugin (for .ply files)") print(" - Re-export from Marble as .ply") print(" - Install plugin via: unity_install_gaussian_splatting") print() print("Option 2: Use Mesh Format (Recommended for Robotics)") print(" - Re-export from Marble as .fbx or .glb") print(" - Full Unity support, no plugins needed") print(" - Better for NavMesh and navigation") print() print("Option 3: Build Custom Converter") print(" - Use Adobe's spz library: https://github.com/adobe/spz") print(" - Convert .spz to .ply manually") print() if __name__ == "__main__": asyncio.run(main())

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/sandraschi/robotics-mcp'

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