mcpField
M
Mcp Chart Server

Mcp Chart Server

本地服务
github.com/KamranBiglari数据与分析865 周前更新

关于 Mcp Chart Server

Mcp Chart Server 是用于根据经过验证的配置生成图表的 MCP 服务,支持多种统计、金融和业务可视化图表。

主要功能

  1. 01支持 15 种以上图表
  2. 02Zod 模式验证
  3. 03支持本地、HTTP 流和 SSE
  4. 04金融与统计可视化

适用场景

  1. 01用柱状图比较类别
  2. 02绘制趋势与相关性
  3. 03可视化金融 OHLC 数据
  4. 04用 Sankey 图展示流程

MCP 相关

向 MCP 客户端提供图表生成工具,每种图表类型对应一个工具,并验证输入配置。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

1

收录的工具列表 · 更新于 2 周前

参数类型必填说明
jsonany否quick chart api(quickchart.io)的参数,格式为 JSON 对象。该对象不包含任何函数,仅包含值。

详细介绍

MCP Chart Server

一个 Model Context Protocol(MCP)服务,提供全面的图表生成功能。该服务支持多种图表类型,并通过全面的 Zod 模式验证确保图表配置的类型安全。

Claude.AI 集成(免费运行版本)

如需立即在 Claude.AI 中使用,无需本地设置,请使用以下公共端点:

  • Streamable HTTP:https://chart.mcp.cloudcertainty.com/mcp
  • Server-Sent Events:https://chart.mcp.cloudcertainty.com/sse

只需将任一端点添加到 Claude.AI MCP 配置中,即可立即开始生成图表。

Claude AI

功能

  • 🎯 15+ 种图表类型 - 全面的图表库,涵盖各类主要可视化需求
  • 🔒 类型安全 - 对所有图表配置进行完整的 Zod 模式验证
  • 🌐 多种部署方式 - 本地服务、HTTP 流式传输和 SSE 端点
  • 🚀 Claude.AI 集成 - 可直接用于 Claude.AI 集成的端点
  • 📊 专业图表 - 支持金融、统计和商业可视化

支持的图表类型

基础图表
  • 条形图 - 支持多个数据集的传统条形图
  • 折线图 - 样式和填充选项可自定义的折线图
  • 饼图 - 带悬停效果和自定义颜色的饼图
  • 雷达图 - 用于对比分析的多轴雷达图
  • 极区图 - 用于周期性数据的径向区域图
高级图表
  • 圆环图 - 增强型饼图,支持中心标签和半圆显示
  • 散点图 - 支持可选趋势线的 X/Y 坐标绘图
  • 气泡图 - 通过气泡大小呈现三维数据可视化
  • OHLC 图 - 带成交量和指标的金融蜡烛图
专用图表
  • 小提琴图 - 统计分布可视化
  • 仪表盘图 - 阈值可自定义的仪表
  • 径向仪表盘 - 简单的径向进度指示器
  • 进度条 - 线性进度指示器
  • 迷你图 - 简洁的趋势可视化
  • 桑基图 - 流程与过程可视化

快速开始

本地开发
  1. 克隆仓库

    git clone https://github.com/KamranBiglari/mcp-server-chart.git
    cd mcp-server-chart
    
  2. 安装依赖

    npm install
    
  3. 构建项目

    npm run build
    
  4. 运行服务

    npm start
    

使用示例

基础条形图
{
  "type": "bar",
  "data": {
    "labels": ["January", "February", "March", "April", "May"],
    "datasets": [
      { "label": "Sales", "data": [50, 60, 70, 180, 190] },
      { "label": "Expenses", "data": [100, 200, 300, 400, 500] }
    ]
  }
}
金融 OHLC 图
{
  "type": "ohlc",
  "data": {
    "datasets": [
      {
        "label": "MSFT",
        "data": [
          {"x": 1459468800000, "o": 18.23, "h": 19.36, "l": 18.18, "c": 19.31}
        ],
        "color": {"up": "#26a69a", "down": "#ef5350", "unchanged": "#999"}
      }
    ]
  }
}
高级圆环图
{
  "type": "doughnut",
  "data": {
    "labels": ["Complete", "Remaining"],
    "datasets": [{"data": [75, 25], "backgroundColor": ["#4CAF50", "#E0E0E0"]}]
  },
  "options": {
    "circumference": 3.14159,
    "rotation": 3.14159,
    "plugins": {
      "doughnutlabel": {
        "labels": [{"text": "75%", "font": {"size": 24}}]
      }
    }
  }
}
散点图
{
  "type": "scatter",
  "data": {
    "datasets": [
      {
        "label": "Dataset 1",
        "data": [
          {"x": 2, "y": 4},
          {"x": 3, "y": 3},
          {"x": 5, "y": 8}
        ]
      }
    ]
  }
}

配置

MCP 客户端配置

添加到 MCP 客户端配置中:

{
  "mcpServers": {
    "chart-server": {
      "command": "node",
      "args": ["path/to/mcp-server-chart/dist/index.js"]
    }
  }
}
Claude.AI 配置

如需集成 Claude.AI,请添加以下任一端点:

{
  "mcpServers": {
    "chart-server": {
      "url": "https://chart.mcp.cloudcertainty.com/mcp"
    }
  }
}

开发

项目结构
src/
├── charts/           # Chart type definitions
│   ├── bar.ts       # Bar chart schema
│   ├── line.ts      # Line chart schema
│   ├── ohlc.ts      # OHLC chart schema
│   └── ...          # Other chart types
├── utils/           # Utility functions
│   ├── index.ts     # Zod to JSON schema conversion
│   └── schema.ts    # Common schema definitions
└── index.ts         # Main MCP server
构建
npm run build      # Build TypeScript
npm run dev        # Development mode with watch
npm run lint       # Run linting
测试
npm test           # Run test suite
npm run test:watch # Watch mode testing

图表类型参考

图表类型适用场景数据格式
bar类别比较{labels: string[], datasets: {data: number[]}[]}
line时间趋势{labels: string[], datasets: {data: number[]}[]}
pie部分与整体的关系{labels: string[], datasets: {data: number[]}[]}
doughnut增强型饼图{labels: string[], datasets: {data: number[]}[]}
radar多变量比较{labels: string[], datasets: {data: number[]}[]}
polarArea周期性数据{labels: string[], datasets: {data: number[]}[]}
scatter相关性分析{datasets: {data: {x: number, y: number}[]}[]}
bubble三维数据{datasets: {data: {x: number, y: number, r: number}[]}[]}
ohlc金融数据{datasets: {data: {x: number, o: number, h: number, l: number, c: number}[]}[]}
violin统计分布{labels: string[], datasets: {data: number[][]}[]}
gaugeKPI 仪表盘{datasets: {value: number, data: number[]}[]}
sankey流程{datasets: {data: {from: string, to: string, flow: number}[]}[]}

API 参考

可用工具

所有图表类型都可作为 MCP 工具使用,并遵循以下模式:

  • 工具名称与图表类型一致(例如,bar、line、ohlc)
  • 输入模式会验证图表配置
  • 返回生成的图表数据
模式验证

每种图表类型都包含全面的 Zod 模式,用于验证:

  • 图表类型和结构
  • 数据格式和类型
  • 样式选项
  • 图表专属配置

参与贡献

  1. Fork 仓库
  2. 创建功能分支
  3. 添加图表类型或改进
  4. 添加测试和文档
  5. 提交拉取请求

许可证

MIT 许可证——详情请参阅 LICENSE 文件

支持

  • 📚 文档:查看内联模式文档
  • 🐛 问题:通过 GitHub Issues 报告错误
  • 💬 讨论:通过 GitHub Discussions 提问
  • 🌐 在线演示:通过 Claude.AI 试用公共端点

路线图

  • 实时数据绑定
  • 自定义主题支持
  • 导出格式(PNG、SVG、PDF)
  • 动画和交互选项
  • 仪表板布局组合

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。