quickchart-server MCP Server
A Model Context Protocol server for generating charts using QuickChart.io
This is a TypeScript-based MCP server that provides chart generation capabilities. It allows you to create various types of charts through MCP tools.
Overview
This server integrates with QuickChart.io's URL-based chart generation service to create chart images using Chart.js configurations. Users can generate various types of charts by providing data and styling parameters, which the server converts into chart URLs or downloadable images.
Features
Tools
-
generate_chart
- Generate a chart URL using QuickChart.io- Supports multiple chart types: bar, line, pie, doughnut, radar, polarArea, scatter, bubble, radialGauge, speedometer
- Customizable with labels, datasets, colors, and additional options
- Returns a URL to the generated chart
-
download_chart
- Download a chart image to a local file- Takes chart configuration and output path as parameters
- Saves the chart image to the specified location
Supported Chart Types
- Bar charts: For comparing values across categories
- Line charts: For showing trends over time
- Pie charts: For displaying proportional data
- Doughnut charts: Similar to pie charts with a hollow center
- Radar charts: For showing multivariate data
- Polar Area charts: For displaying proportional data with fixed-angle segments
- Scatter plots: For showing data point distributions
- Bubble charts: For three-dimensional data visualization
- Radial Gauge: For displaying single values within a range
- Speedometer: For speedometer-style value display
Usage
Chart Configuration
The server uses Chart.js configuration format. Here's a basic example:
1{ 2 "type": "bar", 3 "data": { 4 "labels": ["January", "February", "March"], 5 "datasets": [{ 6 "label": "Sales", 7 "data": [65, 59, 80], 8 "backgroundColor": "rgb(75, 192, 192)" 9 }] 10 }, 11 "options": { 12 "title": { 13 "display": true, 14 "text": "Monthly Sales" 15 } 16 } 17}
URL Generation
The server converts your configuration into a QuickChart URL:
https://quickchart.io/chart?c={...encoded configuration...}
Development
Install dependencies:
1npm install
Build the server:
1npm run build
Installation
Installing
1npm install @gongrzhe/quickchart-mcp-server
Installing via Smithery
To install QuickChart Server for Claude Desktop automatically via Smithery:
1npx -y @smithery/cli install @gongrzhe/quickchart-mcp-server --client claude
To use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
1{ 2 "mcpServers": { 3 "quickchart-server": { 4 "command": "node", 5 "args": ["/path/to/quickchart-server/build/index.js"] 6 } 7 } 8}
or
1{ 2 "mcpServers": { 3 "quickchart-server": { 4 "command": "npx", 5 "args": [ 6 "-y", 7 "@gongrzhe/quickchart-mcp-server" 8 ] 9 } 10 } 11}
Documentation References
📜 License
This project is licensed under the MIT License.