mcp-data-viz

mcp-data-viz

A data visualization MCP server built on FastMCP, providing 32 tools for chart generation, report building, and data processing.

Category
访问服务器

README

MCP 数据可视化服务器

基于 FastMCP 框架的数据可视化 MCP 服务器,提供 32 个工具用于图表生成、报告构建和数据处理。

项目描述

本项目是一个基于 Model Context Protocol (MCP) 的数据可视化服务器,通过 32 个工具函数为 AI 助手提供强大的数据可视化能力。服务器使用 FastMCP 框架构建,所有图表通过 matplotlib 生成并保存为 PNG 图片,所有工具返回 Markdown 格式字符串,方便 AI 助手直接呈现给用户。

特性列表

  • 32 个 MCP 工具:涵盖图表生成、报告构建、数据处理三大能力域
  • 18 种图表类型:柱状图、折线图、饼图、散点图、热力图、箱线图、直方图、雷达图等
  • 8 种报告工具:HTML 报告、数据表、KPI 卡片、仪表盘布局、趋势指标等
  • 6 种辅助工具:CSV 解析、颜色方案、数字格式化、数据验证、异常值检测、归一化
  • 中文字体支持:内置 SimHei / Microsoft YaHei 中文字体配置
  • 6 套颜色方案:default、warm、cool、pastel、grayscale、nature
  • 数组参数传递:使用逗号分隔的字符串传递数组参数,简单直观
  • 图表自动保存:生成的图表自动保存到 output/ 目录
  • Markdown 返回格式:所有工具返回 Markdown 格式,便于 AI 直接呈现

安装方法

1. 克隆项目

cd d:\D盘TRAE办公\github_repos
# 项目已在此目录下

2. 安装依赖

pip install -r requirements.txt

依赖列表:

  • mcp>=1.0.0 — MCP 协议框架
  • matplotlib — 图表绘制库
  • numpy — 数值计算库
  • pandas — 数据处理库

3. 配置 MCP 客户端

在支持 MCP 的客户端(如 Claude Desktop、Cursor 等)配置文件中添加:

{
  "mcpServers": {
    "data-viz": {
      "command": "python",
      "args": ["d:\\D盘TRAE办公\\github_repos\\mcp-data-viz\\server.py"]
    }
  }
}

使用示例

示例 1:生成柱状图

工具: bar_chart
参数:
  categories: "Q1,Q2,Q3,Q4"
  values: "120,180,150,200"
  title: "2024年季度销售"
  ylabel: "销售额(万元)"

示例 2:生成折线图

工具: line_chart
参数:
  x_values: "1月,2月,3月,4月,5月,6月"
  y_values: "30,45,38,52,48,65"
  title: "上半年用户增长趋势"
  xlabel: "月份"
  ylabel: "新增用户(万)"

示例 3:生成 KPI 卡片

工具: kpi_card
参数:
  label: "月度营收"
  value: "50000"
  target: "55000"
  unit: "元"
  trend: "up"
  trend_value: "+15.2%"

示例 4:生成热力图

工具: heatmap
参数:
  data: "10,20,30;40,50,60;70,80,90"
  title: "产品评分矩阵"
  x_labels: "质量,价格,服务"
  y_labels: "产品A,产品B,产品C"

示例 5:生成 HTML 报告

工具: generate_html_report
参数:
  title: "月度数据分析报告"
  content: "# 1月数据概览\n\n本月营收增长15%,核心指标表现良好。"
  style: "modern"

工具列表

图表工具(18个)

序号 工具名称 功能描述
1 bar_chart 柱状图 — 用垂直柱子展示各类别数值
2 grouped_bar 分组柱状图 — 多组数据并列对比
3 horizontal_bar 水平柱状图 — 类别名较长时适用
4 line_chart 折线图 — 展示数据变化趋势
5 multi_line 多折线图 — 多条线对比
6 area_chart 面积图 — 折线下方填充颜色
7 pie_chart 饼图 — 展示各部分占整体比例
8 donut_chart 环形图 — 中空饼图,圆心可显示汇总
9 scatter_plot 散点图 — 展示两变量关系
10 bubble_chart 气泡图 — 散点大小表示第三维度
11 heatmap 热力图 — 颜色深浅表示矩阵值
12 correlation_heatmap 相关性热力图 — 变量间相关系数
13 box_plot 箱线图 — 四分位数和异常值
14 violin_plot 小提琴图 — 密度分布估计
15 histogram 直方图 — 数据分布频率
16 density_plot 密度图 — 概率密度曲线
17 radar_chart 雷达图 — 多维度指标综合表现
18 pair_plot 散点矩阵图 — 多变量两两关系

报告工具(8个)

序号 工具名称 功能描述
19 generate_html_report 生成完整 HTML 报告
20 data_table CSV 数据渲染为 Markdown 表格
21 summary_card 摘要卡片(关键指标)
22 dashboard_layout 仪表盘网格布局
23 kpi_card KPI 指标卡片
24 comparison_table 多项目对比表
25 trend_indicator 趋势指标(变化对比)
26 export_markdown 组装完整 Markdown 文档

辅助工具(6个)

序号 工具名称 功能描述
27 parse_csv_string CSV 字符串解析
28 color_palette 颜色色板生成
29 format_number 数字格式化
30 validate_data 数据验证
31 detect_outliers 异常值检测
32 normalize_data 数据归一化

技术栈

技术 版本要求 用途
Python >= 3.10 运行环境
FastMCP (mcp) >= 1.0.0 MCP 服务器框架
matplotlib latest 图表绘制与渲染
numpy latest 数值计算与矩阵操作
pandas latest 数据处理与分析

项目结构

mcp-data-viz/
├── server.py          # 主入口,FastMCP 服务器,注册32个工具
├── chart_tools.py     # 图表工具模块(18个图表函数)
├── report_tools.py    # 报告工具模块(8个报告函数)
├── utils.py           # 辅助函数模块(6个工具函数)
├── requirements.txt   # Python 依赖
├── README.md          # 项目文档
├── SKILL.md           # SkillHub 技能描述
└── output/            # 图表输出目录(自动创建)

许可证

MIT License

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选