Data Visualization
Generate project milestone charts with timeline nodes and key achievement points
Call this tool from your code in three languages.
curl -X POST 'https://api.elysiatools.com/en/api/tools/milestone-chart' \
-H 'Content-Type: application/json' \
-d '{"milestoneData":"JSON format:\n[{"name": "Project Start", "date": "2024-01-01", "status": "completed", "description": "Project kickoff", "progress": 100},\n{"name": "Phase 1", "date": "2024-02-15", "status": "completed", "description": "Requirements completed", "progress": 100},\n{"name": "Phase 2", "date": "2024-04-01", "status": "in-progress", "description": "Development in progress", "progress": 60}]\n\nor text format:\nProject Start:2024-01-01:completed:Project kickoff\nPhase 1:2024-02-15:completed:Requirements completed\nPhase 2:2024-04-01:in-progress:Development in progress","chartTitle":"Enter chart title...","orientation":"horizontal","milestoneColor":"#3b82f6","completedColor":"#10b981","timelineColor":"#d1d5db","textColor":"#374151","backgroundColor":"#ffffff","nodeSize":"12","lineWidth":"3","chartHeight":"400","showDates":true,"showProgress":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/milestone-chart| Name | Type | Required | Description |
|---|---|---|---|
| milestoneData | textarea | Yes | Milestone data. Can be JSON array with name, date, status, description, progress or simple text format |
| chartTitle | text | No | Title that will be displayed above the chart |
| orientation | select | No | — |
| milestoneColor | color | No | Color for milestone nodes (in-progress) |
| completedColor | color | No | Color for completed milestones |
| timelineColor | color | No | Color for the main timeline line |
| textColor | color | No | Color for milestone labels and descriptions |
| backgroundColor | color | No | Background color for the chart container |
| nodeSize | number | No | Size of milestone nodes in pixels |
| lineWidth | number | No | Width of the timeline line in pixels |
| chartHeight | number | No | Height of the chart in pixels |
| showDates | checkbox | No | Display dates below milestone names |
| showProgress | checkbox | No | Display progress indicators and percentages |
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-milestone-chart": {
"name": "milestone-chart",
"description": "Generate project milestone charts with timeline nodes and key achievement points",
"baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=milestone-chart",
"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": "milestone-chart",
"arguments": {
"milestoneData": "JSON format:\n[{"name": "Project Start", "date": "2024-01-01", "status": "completed", "description": "Project kickoff", "progress": 100},\n{"name": "Phase 1", "date": "2024-02-15", "status": "completed", "description": "Requirements completed", "progress": 100},\n{"name": "Phase 2", "date": "2024-04-01", "status": "in-progress", "description": "Development in progress", "progress": 60}]\n\nor text format:\nProject Start:2024-01-01:completed:Project kickoff\nPhase 1:2024-02-15:completed:Requirements completed\nPhase 2:2024-04-01:in-progress:Development in progress",
"chartTitle": "Enter chart title...",
"orientation": "horizontal",
"milestoneColor": "#3b82f6",
"completedColor": "#10b981",
"timelineColor": "#d1d5db",
"textColor": "#374151",
"backgroundColor": "#ffffff",
"nodeSize": "12",
"lineWidth": "3",
"chartHeight": "400",
"showDates": true,
"showProgress": true
}
}
}Questions or issues? Contact [email protected]