get_vizro_chart_or_dashboard_plan
Generate step-by-step instructions for building Vizro charts or dashboards. Start with basic configurations and use advanced mode for custom CSS, components, or actions when needed.
Instructions
Get instructions for creating a Vizro chart or dashboard. Call FIRST when asked to create Vizro things.
Must be ALWAYS called FIRST with advanced_mode=False, then call again with advanced_mode=True
if the JSON config does not suffice anymore.
Args:
user_plan: The type of Vizro thing the user wants to create
user_host: The host the user is using, if "ide" you can use the IDE/editor to run python code
advanced_mode: Only call if you need to use custom CSS, custom components or custom actions.
No need to call this with advanced_mode=True if you need advanced charts, use `custom_charts` in
the `validate_dashboard_config` tool instead.
Returns:
Instructions for creating a Vizro chart or dashboard
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| advanced_mode | No | ||
| user_host | Yes | ||
| user_plan | Yes |
Implementation Reference
- vizro-mcp/src/vizro_mcp/server.py:80-105 (handler)The handler function for the 'get_vizro_chart_or_dashboard_plan' tool, decorated with @mcp.tool() which also serves as registration. It returns predefined instructions for creating Vizro charts or dashboards based on the user_plan, user_host, and advanced_mode parameters.@mcp.tool() def get_vizro_chart_or_dashboard_plan( user_plan: Literal["chart", "dashboard"] = Field(description="The type of Vizro thing the user wants to create"), user_host: Literal["generic_host", "ide"] = Field( description="The host the user is using, if 'ide' you can use the IDE/editor to run python code" ), advanced_mode: bool = Field( default=False, description="""Only call if you need to use custom CSS, custom components or custom actions. No need to call this with advanced_mode=True if you need advanced charts, use `custom_charts` in the `validate_dashboard_config` tool instead.""", ), ) -> str: """Get instructions for creating a Vizro chart or dashboard. Call FIRST when asked to create Vizro things. Must be ALWAYS called FIRST with advanced_mode=False, then call again with advanced_mode=True if the JSON config does not suffice anymore. Returns: Instructions for creating a Vizro chart or dashboard """ if user_plan == "chart": return CHART_INSTRUCTIONS elif user_plan == "dashboard": return f"{get_dashboard_instructions(advanced_mode, user_host)}"