diff --git a/docs/examples/index.md b/docs/examples/index.md index af65ea9..9246e31 100644 --- a/docs/examples/index.md +++ b/docs/examples/index.md @@ -23,3 +23,63 @@ Upload a dashboard image and Claude recreates it with Panel. [View Example →](generate-dashboard-from-picture.md) --- + +## Convert a Streamlit App + +Upload a Streamlit app and ask Claude Code to recreate it using Panel! + +[![Input](../assets/images/examples/stock-peer-analysis-streamlit.png)](convert-streamlit-app.md) + +[View Example →](convert-streamlit-app.md) + +--- + +## Convert an Excel Spreadsheet + +Upload an Excel spreadsheet and ask Claude Code to recreate it using Panel! + +[![Input](../assets/images/examples/convert-excel-app-image.png)](convert-excel-app.md) + +[View Example →](convert-excel-app.md) + +--- + +## Convert a Gradio 3D Camera Control Component + +Convert a Gradio 3D camera control interface with Three.js to a Panel component. + +[![Input](../assets/images/examples/camera-control-3d.gif)](convert-gradio-component.md) + +[View Example →](convert-gradio-component.md) + +--- + +## Build a Shipping Form + +Build a shipping address form with cascading country, state/province, and city selectors. + +[![Input](../assets/images/examples/shipping-form.gif)](build-a-shipping-form.md) + +[View Example →](build-a-shipping-form.md) + +--- + +## Build a Custom Model Viewer Component + +Build a custom Panel component to wrap Google's `` web component for interactive 3D model rendering. + +[![Input](../assets/images/examples/model-viewer.gif)](build-custom-model-viewer.md) + +[View Example →](build-custom-model-viewer.md) + +--- + +## Create an ML Experiment Tracker + +Build a machine learning experiment configuration tracker using Param's declarative parameter system. + +[![Input](../assets/images/examples/ml-experiment-tracker.png)](create-ml-experiment-tracker.md) + +[View Example →](create-ml-experiment-tracker.md) + +--- diff --git a/src/holoviz_mcp/holoviz_mcp/server.py b/src/holoviz_mcp/holoviz_mcp/server.py index 56f2f0f..23afd68 100644 --- a/src/holoviz_mcp/holoviz_mcp/server.py +++ b/src/holoviz_mcp/holoviz_mcp/server.py @@ -690,10 +690,7 @@ def _load_skill_utf8(self): raise FileNotFoundError(f"Skill directory not found: {self._skill_path}") if not main_file.exists(): - raise FileNotFoundError( - f"Main skill file not found: {main_file}. " - f"Expected {self._main_file_name} in {self._skill_path}" - ) + raise FileNotFoundError(f"Main skill file not found: {main_file}. " f"Expected {self._main_file_name} in {self._skill_path}") content = main_file.read_text(encoding="utf-8") frontmatter, body = _skill_provider_module.parse_frontmatter(content) @@ -793,6 +790,7 @@ def _add_skills_provider(): provider = SkillsDirectoryProvider(roots=roots, supporting_files="resources") mcp.add_provider(provider) + _add_agent_resources() _add_skills_provider()