← Back to directory
M

MCP ECharts

Community
Generate visual charts using ECharts with AI MCP dynamically for chart generation and data analysis.
Category
Other #38 of 230
Stars
★ 270 Popular
Transport
stdio (local process) · SSE · Streamable HTTP
Runtime
Node.js 18+
Credentials
No credential needed
License
MIT
Last commit
Tools
2
65FMRS · C

MCP ECharts is a powerful MCP server that generates charts based on Apache ECharts, supporting multiple output formats and storage options. It is easy to install, zero-dependency, and fully local, making it suitable for data analysis and AI-driven chart generation. However, performance is limited by local resources, and it requires a Node.js environment.

Strongest · Maintenance 17/20 Weakest · Reliability 8/20

Reliability
8/20
Security and permissions
10/20
Maintenance
17/20
Documentation
15/20
Setup experience
15/20
Why each score
Reliability 8/20
Static review shows CI workflow (build.yml) and test files (e.g., test/ directory) exist, but no execution was performed, so we cannot confirm the server starts cleanly and completes the MCP handshake. README claims support for multiple transports (stdio, SSE, streamable) and output formats, but lacks detailed test evidence for tool parameters. Thus reliability score is capped at 8, based on presence of CI and tests but unverified behavior.
Security and permissions 10/20
Server generates charts entirely locally, not relying on remote services (except optional MinIO), reducing external network risks. MinIO config uses environment variables, no hardcoded credentials found. However, lacks explicit output sanitization (e.g., preventing malicious SVG/PNG injection) and least-privilege declarations. MinIO integration may add attack surface but is optional. No red-line risks triggered, so score is 10.
Maintenance 17/20
Repository is not archived, has 4 open issues, and recent commits (based on contributor info in README). Uses MIT license, active development with multiple contributors fixing issues. However, no explicit release strategy or dependency update policy observed, so score is 17, slightly below full.
Documentation 15/20
README provides detailed installation and usage instructions, including desktop app config examples, CLI options, MinIO setup steps, and development guide. Documentation is structured and covers main use cases, but lacks detailed tool parameter reference, troubleshooting guide, and cost explanations (e.g., MinIO storage fees). Hence score 15.
Setup experience 15/20
Installation steps are simple: run via npx or install npm package globally, with desktop app config examples. Supports Windows and Mac. However, requires manual MCP server JSON configuration in client (e.g., Claude), and no explicit Node.js version check. No verifiable installation test in static review, so score capped at 15.

Static review · not runListed 2026-08-07

Read the FMRS scoring method →

Fit and risk

What it can accessUses the network

Best for

  • Data analysts, developers, and AI application builders who need quick chart generation.
  • Users who want to integrate chart generation into LLM workflows.
  • Users needing charts exported in multiple formats.

Not for

  • Users needing complex interactive charts or real-time data updates.
  • Enterprise users requiring extensive chart storage and management (may need additional MinIO setup).
  • Users wanting fully managed chart hosting (since it generates locally, not relying on cloud services).

Required permissions

  • Access to the file system to read config and output files.
  • Access to MinIO service if configured.
  • Network access to install npm packages (if run via npx).

Risks and side effects

  • Since generation is fully local, performance may be limited by local resources.
  • If MinIO is not configured, exported charts are returned as Base64, which may be large and affect response speed.
  • Depends on Node.js environment; ensure version compatibility.

Setup

Before you start

Runtime:Node.js 18+

MINIO_ACCESS_KEY optionalsecret Object storage access key from the MinIO/S3 console; optional.
MINIO_SECRET_KEY optionalsecret Secret key paired with the access key, from the storage console; optional.
Other optional settings (4)
MINIO_ENDPOINT optional Endpoint of a MinIO or S3-compatible object store, e.g. localhost; optional.
MINIO_PORT optional Port of the object storage service, e.g. 9000 in the example; optional.
MINIO_USE_SSL optional Whether to use SSL (true/false); optional.
MINIO_BUCKET_NAME optional Bucket name for storing chart images; optional, must exist in the storage service.
  1. Ensure Node.js 18 or higher.
  2. Add the following configuration to your client's MCP config file:
{
  "mcpServers": {
    "mcp-echarts": {
      "command": "npx",
      "args": ["-y", "mcp-echarts"]
    }
  }
}

For Windows, use cmd /c npx -y mcp-echarts.

  1. For SSE or streamable transport, install globally: npm install -g mcp-echarts, then run mcp-echarts -t sse or mcp-echarts -t streamable.
claude_desktop_config.json
{
  "mcpServers": {
    "mcp-echarts": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-echarts"
      ]
    }
  }
}

Shown for Claude Desktop. Other clients may use a different file or key (VS Code uses "servers") — the configurator below converts it.

.vscode/mcp.json
{
  "servers": {
    "mcp-echarts": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-echarts"
      ]
    }
  }
}

Goes in your project's .vscode/mcp.json (VS Code uses a "servers" key).

Terminal
claude mcp add mcp-echarts -- npx -y mcp-echarts

Run it in a terminal; replace any <…> placeholders with your own values first.

Check that it works

Confirm that echarts_generate_chart and validate_chart_option appear in the client's tool list, then ask the AI to generate a simple chart and check that it returns png/svg or Base64 data to prove the connection works.

Troubleshooting

  1. Common issues: - Ensure Node.js version >= 18. - If `npx` fails, check npm installation. - For SSE or streamable, check if port is in use (default 3033). - If MinIO is configured, verify environment variables; otherwise, it falls back to Base64.

Things to try

Once connected, you can ask your AI assistant things like:

  • Generate a bar chart of monthly sales for 2024 with ECharts and export it as png
  • Plot this quarterly data as a line chart using the dark theme
  • Validate this ECharts option config and then render it as svg
  • Create a pie chart of category shares and return the option format so I can tweak it

Tools 2

echarts_generate_chart writes
Generates an ECharts chart based on provided options, outputting in PNG, SVG, or option format.
validate_chart_option read-only
Validates the ECharts configuration object for correctness.

Use cases

Generate visual charts from natural language without manual coding.
Quickly create charts in data analysis workflows to support decisions.
Produce shareable chart links for collaboration.

Supported clients

Claude Desktop
VS CodePartial support
ClinePartial support
Cherry StudioPartial support

Listed from the project's documentation, not tested by this site.

Overview

This is an MCP server that dynamically generates Apache ECharts charts using AI. It supports all features and syntax of ECharts, including data, style, theme, etc. It can export to PNG, SVG, and option formats, and provides ECharts validation to facilitate the model's multi-round output of correct syntax and graphics. It integrates with MinIO object storage to store charts as URLs instead of Base64 data for better performance and sharing capabilities. It is lightweight, zero-dependency, and fully generated locally without relying on any remote services.

Similar servers

BioMCP 75 · B

One binary. One grammar. Evidence from the biomedical sources you already trust.

★ 659 · Tools 11 Compare with this →

Source revision 3ed2496c3312 Data synced 2026-10-19 Read the FMRS scoring method