目标: 仅用于图形对象的 Plotly MCP 服务器,适用于 Cursor
输出: 从自然语言生成的 HTML 可视化
控制: 所有图表元素的分钟级自定义
范围: 完全覆盖 50 多种 Plotly 轨迹类型
基础完成:
使用 UV(推荐):
# 如果尚未安装,请安装 UV
curl -LsSf https://astral.sh/uv/install.sh | sh
# 设置项目
cd /Users/arshad/Desktop/personal/code/plotly-mcp-claude
uv sync
使用 pip:
pip install -r requirements.txt
cd src
python server.py
在你的 Cursor MCP 配置中添加以下内容:
{
"mcpServers": {
"plotly-mcp": {
"command": "python",
"args": ["/Users/arshad/Desktop/personal/code/plotly-mcp-claude/src/server.py"]
}
}
}
create_scatter_plot(
x_data=[1, 2, 3, 4, 5],
y_data=[2, 4, 1, 5, 3],
colors="red",
sizes=15,
mode="markers+lines",
name="我的数据"
)
create_bar_chart(
x_data=["A", "B", "C", "D"],
y_data=[20, 14, 23, 25],
colors="blue",
orientation="v",
text=["20", "14", "23", "25"],
name="销售数据"
)
create_pie_chart(
labels=["苹果", "橙子", "香蕉"],
values=[30, 25, 45],
hole=0.3, # 甜甜圈图
textinfo="label+percent"
)
generate_sample_data(
data_type="sine",
size=100,
noise=0.1
)
plotly-mcp-claude/
├── src/
│ ├── server.py # 主 MCP 服务器 (FastMCP)
│ ├── traces/ # 所有轨迹构建器 (5/49 完成)
│ │ └── basic/ # 第一阶段: 散点图、条形图、折线图、饼图、直方图
│ ├── layouts/ # 布局控制器
│ │ ├── axes.py # X/Y/Z 轴配置
│ │ └── styling.py # 颜色、字体、边距、图例
│ ├── assembly/ # 图表构建
│ │ └── builder.py # 组合轨迹 + 布局
│ └── [themes/, nlp/] # 未来阶段
├── data/ # 样本数据集 (未来)
├── examples/ # 使用示例 (未来)
├── tests/ # 单元测试 (未来)
├── requirements.txt # Python 依赖项
├── pyproject.toml # 项目配置
└── README.md # 本文件
总计: 计划 49 种轨迹构建器
每种轨迹类型返回完整的 HTML,可以:
准备好添加统计与三维轨迹:
模块化的架构使得添加新的轨迹类型变得容易:
src/traces/{category}/ 中创建轨迹构建器src/server.py 中添加工具装饰器第一阶段完成 - 实现了 5/49 种轨迹类型 准备好进入第二阶段:统计与三维可视化
为 Claude 生态系统而打造 ❤️