Skip to main content
Glama

图表MCP服务器

一个基于 Model Context Protocol (MCP) 的图表生成服务器,提供15种不同类型的图表生成功能,支持AI智能配色和优雅设计。

复刻:https://www.modelscope.cn/mcp/servers/antvis/mcp-server-chart

功能特性

本服务器提供以下15种图表生成工具:

  1. generate_area_chart - 生成面积图

  2. generate_bar_chart - 生成柱状图(水平)

  3. generate_column_chart - 生成柱状图(垂直)

  4. generate_dual_axes_chart - 生成双轴图表

  5. generate_fishbone_diagram - 生成鱼骨图(因果分析图)

  6. generate_flow_diagram - 生成流程图

  7. generate_histogram_chart - 生成直方图

  8. generate_line_chart - 生成线图

  9. generate_mind_map - 生成思维导图

  10. generate_network_graph - 生成网络图

  11. generate_pie_chart - 生成饼图

  12. generate_radar_chart - 生成雷达图

  13. generate_scatter_chart - 生成散点图

  14. generate_treemap_chart - 生成树形图

  15. generate_word_cloud_chart - 生成词云图

🎨 AI智能配色

  • 自动配色: AI根据图表类型和数据上下文自动选择优雅配色方案

  • 主题系统: 内置5种优雅配色主题(海洋蓝、日落、森林、紫色、珊瑚)

  • 智能映射: 不同类型的数据自动匹配最适合的颜色主题

  • 自定义支持: 可通过palette参数指定特定调色板

安装依赖

pip install -e .

或使用 pip 安装依赖:

pip install fastmcp plotly pandas kaleido pillow wordcloud matplotlib numpy

运行服务器

python src/main_optimized.py

使用示例

折线图(AI自动配色)

data = [ {"date": "12-17", "temperature": 5}, {"date": "12-18", "temperature": 3}, {"date": "12-19", "temperature": 2} ] result = generate_line_chart( data=data, x_field="date", y_field="temperature", title="温度变化趋势" )

柱状图(AI自动配色)

data = [ {"month": "1月", "sales": 120}, {"month": "2月", "sales": 98}, {"month": "3月", "sales": 145} ] result = generate_column_chart( data=data, x_field="month", y_field="sales", title="月度销售额统计" )

饼图(AI自动配色)

data = [ {"category": "移动端", "value": 45}, {"category": "桌面端", "value": 30}, {"category": "平板", "value": 15} ] result = generate_pie_chart( data=data, label_field="category", value_field="value", title="市场份额分布" )

双轴图(AI自动配色)

data = [ {"month": "1月", "revenue": 120, "users": 1000}, {"month": "2月", "revenue": 150, "users": 1200}, {"month": "3月", "revenue": 180, "users": 1500} ] result = generate_dual_axes_chart( data=data, x_field="month", y1_field="revenue", y2_field="users", title="收入与用户增长对比" )

输出说明

所有图表工具返回的结果格式如下:

{ "success": True, # 是否成功 "image_url": "http://127.0.0.1:8081/xxx.png", # 图像URL "message": "生成成功" # 消息 }

如果生成失败:

{ "success": False, "error": "错误信息" }

图像访问

  • 静态文件服务器: http://127.0.0.1:8081/

  • 访问限制: 仅允许访问.png格式文件

  • 安全提示: 访问非PNG文件将返回404错误

图像文件

  • 所有生成的图像保存在 images/ 目录中

  • 文件名格式:{chart_type}_YYYYMMDD_XXXXXXXX.png

  • 图像分辨率:1400x900,2倍缩放(高清晰度)

技术栈

  • FastMCP - MCP服务器框架

  • Plotly - 交互式图表库

  • Pandas - 数据处理

  • Matplotlib - 静态图表绘制

  • WordCloud - 词云生成

  • NetworkX - 网络图生成

  • Kaleido - 图像导出引擎

设计特性

  • 优雅边框: 只显示左边和下边框,移除重复边框线

  • 现代配色: 采用现代UI设计趋势的配色方案

  • 响应式布局: 图表布局自适应不同数据量

  • 高清晰度: 2倍缩放确保在各种设备上清晰显示

注意事项

  1. 确保已安装 kaleido 库,用于将 Plotly 图表导出为图像

  2. 首次运行可能需要安装系统字体(用于 Matplotlib)

  3. 图像文件会保存在 images/ 目录中,请确保有写入权限

  4. 服务器启动后会同时启动图像静态文件服务器(端口8081)

许可证

MIT License

-
security - not tested
F
license - not found
-
quality - not tested

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/qingfeng0512/chart-mcp-server'

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