Data Visualization
Generate customizable area charts from data with filled areas under lines, perfect for showing trends and cumulative data
Call this tool from your code in three languages.
curl -X POST 'https://api.elysiatools.com/en/api/tools/area-chart-generator' \
-H 'Content-Type: application/json' \
-d '{"chartData":"Single line JSON:\n[{"label": "Jan", "value": 100},\n{"label": "Feb", "value": 150}]\n\nMulti-line JSON:\n{\n "labels": ["Jan", "Feb", "Mar"],\n "series": [\n {"name": "Product A", "data": [100, 150, 120]}\n ]\n}\n\nor text format:\nJan:100\nFeb:150","chartTitle":"Enter chart title...","curveType":"linear","areaColors":"#3b82f6,#ef4444,#10b981","fillOpacity":"0.3","stacked":false,"backgroundColor":"#ffffff","gridColor":"#e0e0e0","lineWidth":"2","chartHeight":"400","maxValue":0,"minValue":0,"xAxisLabel":"Category","yAxisLabel":"Value","showGrid":true,"showPoints":true,"showValues":true,"showLegend":true}'Send a POST request with your inputs as JSON. File parameters require a separate upload first.
POST https://api.elysiatools.com/en/api/tools/area-chart-generator| Name | Type | Required | Description |
|---|---|---|---|
| chartData | textarea | Yes | Data for the chart. Supports single line array, multi-line object, or simple text format |
| chartTitle | text | No | Title that will be displayed above the chart |
| curveType | select | No | — |
| areaColors | text | No | Colors for multiple areas (comma-separated hex colors). Leave empty for default colors. |
| fillOpacity | number | No | Opacity of the area fill (0.0 to 1.0) |
| stacked | checkbox | No | Stack areas on top of each other instead of overlapping |
| backgroundColor | color | No | Background color for the chart container |
| gridColor | color | No | Color for the grid lines |
| lineWidth | number | No | Width of the area border lines in pixels |
| chartHeight | number | No | Height of the chart in pixels |
| maxValue | number | No | Maximum value for Y-axis (leave empty for auto-scale) |
| minValue | number | No | Minimum value for Y-axis |
| xAxisLabel | text | No | Label for the X-axis |
| yAxisLabel | text | No | Label for the Y-axis |
| showGrid | checkbox | No | Display grid lines for better readability |
| showPoints | checkbox | No | Display data points on the area border |
| showValues | checkbox | No | Display the actual values on data points |
| showLegend | checkbox | No | Display a legend below the chart |
HTML result
{
"result": "<div>Processed HTML content</div>",
"error": "Error message (optional)",
"message": "Notification message (optional)",
"metadata": {
"key": "value"
}
}Add this tool to your Model Context Protocol server so AI agents can list and call it.
Add this block to your MCP client configuration:
{
"mcpServers": {
"elysiatools-area-chart-generator": {
"name": "area-chart-generator",
"description": "Generate customizable area charts from data with filled areas under lines, perfect for showing trends and cumulative data",
"baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=area-chart-generator",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}After connecting to the SSE endpoint, list the exposed tools:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Invoke the tool by its id, passing arguments built from its parameters:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "area-chart-generator",
"arguments": {
"chartData": "Single line JSON:\n[{"label": "Jan", "value": 100},\n{"label": "Feb", "value": 150}]\n\nMulti-line JSON:\n{\n "labels": ["Jan", "Feb", "Mar"],\n "series": [\n {"name": "Product A", "data": [100, 150, 120]}\n ]\n}\n\nor text format:\nJan:100\nFeb:150",
"chartTitle": "Enter chart title...",
"curveType": "linear",
"areaColors": "#3b82f6,#ef4444,#10b981",
"fillOpacity": "0.3",
"stacked": false,
"backgroundColor": "#ffffff",
"gridColor": "#e0e0e0",
"lineWidth": "2",
"chartHeight": "400",
"maxValue": 0,
"minValue": 0,
"xAxisLabel": "Category",
"yAxisLabel": "Value",
"showGrid": true,
"showPoints": true,
"showValues": true,
"showLegend": true
}
}
}Questions or issues? Contact [email protected]