Skip to main content
Glama
README.md4.56 kB
# 图表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参数指定特定调色板 ## 安装依赖 ```bash pip install -e . ``` 或使用 pip 安装依赖: ```bash pip install fastmcp plotly pandas kaleido pillow wordcloud matplotlib numpy ``` ## 运行服务器 ```bash python src/main_optimized.py ``` ## 使用示例 ### 折线图(AI自动配色) ```python 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自动配色) ```python 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自动配色) ```python data = [ {"category": "移动端", "value": 45}, {"category": "桌面端", "value": 30}, {"category": "平板", "value": 15} ] result = generate_pie_chart( data=data, label_field="category", value_field="value", title="市场份额分布" ) ``` ### 双轴图(AI自动配色) ```python 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="收入与用户增长对比" ) ``` ## 输出说明 所有图表工具返回的结果格式如下: ```python { "success": True, # 是否成功 "image_url": "http://127.0.0.1:8081/xxx.png", # 图像URL "message": "生成成功" # 消息 } ``` 如果生成失败: ```python { "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

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