vizro-mcp

Official
by mckinsey

Integrations

  • Facilitates data loading and analysis through pandas DataFrames, supporting local and remote datasets for visualization in Vizro dashboards

  • Enables creation of Vizro styled Plotly charts with visualization capabilities, supporting various chart types and data sources for dashboard creation

Vizro MCP 服务器

Vizro-MCP 是一个模型上下文协议 (MCP)服务器,它与 LLM 一起工作来帮助您创建 Vizro 仪表板和图表。

Vizro-MCP 的特点

Vizro-MCP 提供工具和模板,帮助您逐步创建功能齐全的 Vizro 图表或仪表板。其优势包括:

✅ 一个用于图表和仪表板的一致框架,具有一种通用的设计语言。

✅ 经过验证的配置输出易于阅读且易于更改或维护。

✅ 实时预览仪表板,以迭代设计,直到仪表板完美为止。

✅ 只需提供路径或 URL 即可使用本地或远程数据集。

不含 Vizro-MCP

如果没有 Vizro-MCP,如果你尝试使用 LLM 制作仪表板,它可能会选择任何框架,并且在没有特定指导、设计原则或一致性的情况下使用它。结果是:

❌ 随机选择前端框架或图表库。

❌ 一种氛围编码的混乱,可能会运行也可能不会运行,但肯定不太易于维护。

❌ 无法轻松预览仪表板。

❌ 没有简单的方法来连接真实数据。

🛠️ 开始

如果您是开发人员并且需要从源代码运行 Vizro-MCP 的说明,请跳至本页末尾的开发或从源代码运行

先决条件

原则上,Vizro MCP 服务器可与任何支持 MCP 的 LLM 应用程序配合使用,但我们推荐 Claude Desktop 或 Cursor 作为热门选择。

🐛注意: VS Code目前存在一些已知问题,但我们正在努力解决这些问题,并希望 Copilot 能够尽快恢复正常运行。

⚠️**警告:**在某些主机(例如 Claude Desktop)中,免费方案的性能可能较低,当请求过于复杂时可能会导致问题。如果请求导致 UI 崩溃,请选择付费方案或降低请求的复杂度。

设置说明

将以下内容添加到通过开发人员设置找到的claude_desktop_config.json中。

{ "mcpServers": { "vizro-mcp": { "command": "uvx", "args": [ "vizro-mcp" ] } } }

⚠️**警告:**在某些情况下,你可能需要提供uvx可执行文件的完整路径,因此不要使用uvx ,而应该使用类似/Users/<your-username>/.local/bin/uvx的路径。要在你的机器上查找uvx的路径,请在终端应用中输入which uvx

如果您正在使用 Claude Desktop,请重新启动它,片刻之后,您应该会在打开设置/上下文菜单时看到 vizro-mcp 菜单:

将以下内容添加到通过 Cursor Settings 找到的mcp.json中。

{ "mcpServers": { "vizro-mcp": { "command": "uvx", "args": [ "vizro-mcp" ] } } }

⚠️**警告:**在某些情况下,你可能需要提供uvx可执行文件的完整路径,因此不要使用uvx ,而应该使用类似/Users/<your-username>/.local/bin/uvx的路径。要在你的机器上查找uvx的路径,请在终端应用中输入which uvx

同样,使用 Cursor 时,短暂暂停后,您应该会在 MCP 菜单中看到绿灯:

原则上,Vizro MCP 服务器可与任何支持MCP 的 LLM 应用程序兼容,但我们推荐 Claude Desktop 或 Cursor 作为主流选择。不同的 AI 工具可能使用不同的设置方法或连接设置。详情请参阅各工具的文档。

💻 使用方法

使用提示模板快速获取特定仪表板

并非所有 MCP 主机都提供提示模板,但如果提供,您可以使用它们快速获取特定的仪表板。要访问它们(例如在 Claude Desktop 中),请点击聊天下方的加号图标,然后选择*Add from vizro-mcp*

开始使用 Vizro 仪表板最简单的方法是选择模板create_starter_dashboard ,然后发送提示即可。这将创建一个非常简单的仪表板,其中包含一个页面、一个图表和一个筛选器。从这里开始吧!

根据本地或远程数据创建 Vizro 仪表板

如果你已经有了明确的目标,也可以要求法学硕士(LLM)根据本地或远程数据创建特定的仪表板。示例提示如下:

创建一个 Vizro 仪表板,其中包含一个页面、一个散点图和一个基于<insert absolute file path or public URL>数据的过滤器。

创建一个简单的两页 Vizro 仪表板,第一页是<insert absolute file path or public URL>数据的相关性分析,第二页是<insert absolute file path or public URL>数据的地图图

您可以在Plotly 存储库中找到一组示例 CSV 进行尝试。

您甚至可以在不提供数据的情况下请求仪表板:

创建一个包含一个页面、一个散点图和一个过滤器的 Vizro 仪表板。

一般来说,它有助于在提示中指定 Vizro 并使其尽可能精确(和简单)。

获取仪表板的实时预览

当 LLM 选择使用工具validate_model_config ,并且该工具成功执行时,如果仅使用通过 URL 访问的公共数据,LLM 将返回一个指向仪表板实时预览的链接。默认情况下,除非您设置不要打开,否则 LLM 甚至会在浏览器中打开该链接。在 Claude Desktop 中,您可以通过打开可折叠工具并向下滚动到最底部来查看该工具的输出。

您也可以要求模型为您提供链接,但它会尝试重新生成它,这很容易出错并且速度很慢。

创建 Vizro 图表

如果您不想创建完整的 Vizro 仪表板,仍然可以使用 Vizro-MCP 创建单个图表的代码。如果您不确定想要哪种图表,可以查看Vizro 可视化词汇表来获取灵感。

创建 Vizro 图表最简单的方法是选择模板create_vizro_chart ,然后发送提示即可。这将创建一个您可以修改的简单图表。从这里开始吧!

或者,您也可以直接在聊天中询问,例如:

根据鸢尾花数据集创建散点图。

根据<insert absolute file path or public URL>数据创建条形图。

🔍 透明度和信任

MCP 服务器是一个相对较新的概念,因此,务必明确了解这些工具的功能,以便用户做出明智的选择。总而言之,Vizro MCP 服务器仅读取数据,绝不会写入、删除或修改您计算机上的任何数据。

一般来说,该过程中最关键的部分是load_and_analyze_data工具。此工具在您的计算机上运行,会将本地或远程数据加载到 pandas DataFrame 中,并对其结构和内容进行详细分析。它仅使用pd.read_xxx ,因此通常无需担心隐私或数据安全问题。

第二个最关键的部分是validate_model_config工具。此工具将尝试实例化Vizro模型配置,并返回有效配置的Python代码和可视化链接。如果配置有效,它还将返回并尝试打开一个指向仪表板实时预览的链接,该链接将带您进入PyCafe 。如果您不想打开该链接,可以告诉LLM不要这样做。

可用工具(如果客户允许)

Vizro MCP 服务器提供以下工具。通常情况下,您不需要直接使用它们,但在特殊情况下,您可以要求 LLM 直接调用它们来帮助其找到路径。

  • get_vizro_chart_or_dashboard_plan - 获取创建图表或仪表板的结构化分步计划。提供整个创建过程的指导。
  • get_model_JSON_schema - 检索任何指定 Vizro 模型的完整 JSON 模式,有助于理解必需和可选参数。
  • validate_model_config - 通过尝试实例化 Vizro 模型配置来测试它们。返回有效配置的 Python 代码和可视化链接。
  • load_and_analyze_csv - 将 CSV 文件从本地路径或 URL 加载到 pandas DataFrame 中,并对其结构和内容进行详细分析。
  • validate_chart_code - 验证为图表创建的代码并返回有关其正确性的反馈。
  • get_sample_data_info - 提供可用于测试和开发的示例数据集的信息。

可用提示(如果客户允许)

  • create_starter_dashboard - 使用此提示模板开始使用 Vizro 仪表板。
  • create_EDA_dashboard - 使用此提示模板基于本地或远程 CSV 数据集创建探索性数据分析 (EDA) 仪表板。
  • create_vizro_chart - 使用此提示模板根据本地或远程 CSV 数据集创建 Vizro 风格的 plotly 图表。

从源代码开发或运行

如果您是开发人员,或者您正在从源代码运行 Vizro-MCP,则需要克隆 Vizro 代码库。要配置 Vizro MCP 服务器详细信息,请执行以下操作:

对于 Claude :将以下内容添加到通过开发人员设置找到claude_desktop_config.json中:

对于游标通过游标设置将以下内容添加到mcp.json中:

{ "mcpServers": { "vizro-mcp": { "command": "uv", "args": [ "run", "--directory", "<PATH TO VIZRO>/vizro-mcp/", "vizro-mcp" ] } } }

<PATH TO VIZRO>替换为 Vizro 存储库的实际路径。您可能还需要提供uv可执行文件的完整路径,因此,不要使用"uv"而应该使用类似"/Users/<your-username>/.local/bin/uv"的路径。要查找uv在您的计算机上的路径,请在终端应用中输入which uv

免责声明

用户对通过其主机 LLM 应用程序所做的任何事负责。

用户有责任获取访问任何第三方生成 AI 工具所需的所有权利,并遵守其任何适用的条款或条件。

用户对第三方生成 AI 工具和 Vizro 的使用和安全负全部责任。

用户承认并同意:

任何第三方生成式人工智能工具(“GenAI 工具”)生成的任何结果、选项、数据、建议、分析、代码或其他信息(“输出”)可能包含一些不准确、偏见、不合法、潜在侵权或其他不适当的内容,这些内容可能是错误的、歧视性的或误导性的。

麦肯锡公司:

(i)明确否认任何输出的准确性、充分性、及时性、可靠性、适销性、适用于特定用途、非侵权性、安全性或完整性,

(ii) 对于该等输出中的任何错误、遗漏或其他缺陷、延迟或中断,或依赖该等输出采取的任何行动,概不负责;

(iii)对于因用户使用 GenAI 工具和输出而导致的任何第三方权利被侵犯或侵害,GenAI 不承担任何责任。

输出应由用户验证和确认,不得在无人监督的情况下使用,也不得作为影响个人的决策的唯一依据。

用户对输出的使用负全部责任,特别是,用户需要根据具体情况和用例确定所需的人工监督级别,并告知用户人员和其他受影响用户有关 GenAI 输出的性质。用户还应对其决策、行为、Vizro 和 Vizro-MCP 的使用以及遵守适用法律、法规和规章负全部责任,包括但不限于确认输出不侵犯任何第三方权利。

Vizro-MCP 被生成式 AI 模型所采用,因为大型语言模型 (LLM) 代表了 AI 领域的重大进步。然而,与任何强大的工具一样,连接到生成式 AI 模型也存在潜在风险。

我们建议用户在使用 Vizro-MCP 之前研究并了解所选型号。

鼓励用户将人工智能生成的内容视为补充,始终运用人类判断,谨慎处理,查看相关免责声明页面,并考虑以下事项:

供应商模型可能缺乏除最新更新之外的实时知识或事件。Vizro-MCP 的输出可能有所不同,您应始终验证关键信息。用户有责任确认生成内容的准确性、一致性和可靠性。

Related MCP Servers

View all related MCP servers

ID: lvw130aakq