实用指南:MCP Server Chart AntV 项目解析

1. 项目背景与目标

项目定位

MCP Server Chart 是一个基于 Model Context Protocol (MCP) 的图表生成服务器,专门用于通过 AntV 生态系统创建各种类型的资料可视化图表。

核心目标

  • 图表生成:提供25+种图表类型的生成能力,包括基础图表(折线图、柱状图、饼图等)和高级可视化(桑基图、小提琴图、词云等)
  • 数据分析:支持数据可视化分析,帮助用户理解内容趋势和模式
  • 通过MCP协议集成:作为标准的MCP服务器,能够与Claude、VSCode、Cursor等支持MCP的应用无缝集成

应用场景

  • AI助手的数据可视化能力扩展
  • 开发工具中的图表生成效果
  • 数据分析和报告生成
  • 商业智能和仪表板应用

2. 核心功能与架构

重要功能模块

2.1 图表生成引擎

方案拥护25+种图表类型,每种图表都有独立的模块:

基础图表类型:

  • 折线图 (line)、柱状图 (column)、条形图 (bar)
  • 饼图 (pie)、面积图 (area)、散点图 (scatter)
  • 雷达图 (radar)、漏斗图 (funnel)等

高级可视化:

  • 桑基图 (sankey)、树图 (treemap)、小提琴图 (violin)
  • 词云 (word-cloud)、网络图 (network-graph)
  • 组织架构图 (organization-chart)、思维导图 (mind-map)

地理可视化(基于高德地图):

  • 行政区划图 (district-map)
  • 路径规划图 (path-map)
  • POI分布图 (pin-map)
2.2 传输协议支撑

server.ts 实现了三种传输方式:

  • STDIO:标准输入输出,用于命令行工具集成
  • SSE (Server-Sent Events):用于Web应用的实时通信
  • HTTP Streamable:用于HTTP API调用

整体架构设计

┌────────────────────────────────────────────────────────────┐
│                    MCP Server Chart                        │
├────────────────────────────────────────────────────────────┤
│  Entry Point (index.ts)                                    │
│  ├── CLI Arguments Parsing                                 │
│  └── Transport Selection (stdio/sse/streamable)            │
├────────────────────────────────────────────────────────────┤
│  Server Layer (server.ts)                                  │
│  ├── MCP Server Creation                                   │
│  ├── Tool Registration                                     │
│  └── Request Handling                                      │
├────────────────────────────────────────────────────────────┤
│  Charts Module (charts/)                                   │
│  ├── Base Schema Definitions                               │
│  ├── Individual Chart Implementations                      │
│  └── Tool Descriptors                                      │
├────────────────────────────────────────────────────
posted @ 2025-10-09 10:09  ycfenxi  阅读(51)  评论(0)    收藏  举报