ECharts MCP Server

A server for generating various types of charts using the ECharts library.

ECharts MCP Server build npm Version smithery badge npm License

A Model Context Protocol server for generating charts using ECharts inspired by AntV.

This is a TypeScript-based MCP server that provides chart generation capabilities. It allows you to create various types of charts through MCP tools. You can also use it in Dify.

✨ Features

Nearly all types of chart supported. Each tool will return a chart preview URL which is the echarts official chart preview page.

For example, this pie chart

  • generate_bar_chart - Generate a bar chart.
  • generate_line_chart - Generate a line chart.
  • generate_pie_chart - Generate a pie chart.
  • generate_scatter_chart - Generate a scatter chart.
  • generate_radar_chart - Generate a radar chart.
  • generate_heatmap_chart - Generate a heatmap chart.
  • generate_general_chart - Generate a effectScatter, tree, treemap, sunburst, boxplot, candlestick, graph, sankey, funnel, gauge or themeRiver chart.

🤖 Usage

To use with Desktop APP, such as Claude, VSCode, Cline, Cherry Studio, Cursor, and so on, add the MCP server config below.

{
  "mcpServers": {
    "echarts-server": {
      "command": "node",
      "args": [
        "your-path/echarts-mcp-server/build/index.js"
      ]
    }
  }
}

Or

{
  "mcpServers": {
    "echarts-server": {
      "command": "npx",
      "args": [
        "-y",
        "echarts-mcp-server"
      ]
    }
  }
}

Also, you can use it on aliyun, modelscope, glama.ai, smithery.ai or others with HTTP, SSE Protocol.

🚰 Run with SSE or Streamable transport

Install the package globally.

npm install -g echarts-mcp-server

Run the server with your preferred transport option:

# For SSE transport (default endpoint: /sse)
echarts-mcp-server --transport sse

# For Streamable transport with custom endpoint
echarts-mcp-server --transport streamable

Then you can access the server at:

  • SSE transport: http://localhost:1122/sse
  • Streamable transport: http://localhost:1122/mcp

🎮 CLI Options

You can also use the following CLI options when running the MCP server. Command options by run cli with -h.

MCP Server Chart CLI

Options:
  --transport, -t  Specify the transport protocol: "stdio", "sse", or "streamable" (default: "stdio")
  --port, -p       Specify the port for SSE or streamable transport (default: 1122)
  --endpoint, -e   Specify the endpoint for the transport:
                   - For SSE: default is "/sse"
                   - For streamable: default is "/mcp"
  --help, -h       Show this help message

🔨 Development

Install dependencies:

npm install

Build the server:

npm run build

Start the MCP server:

npm run start

Related Servers