Data Visualization
Paste an order or event CSV and get the growth stack in one page: a cohort retention triangle with a heatmap, RFM quintile scoring mapped to the ten standard lifecycle segments, and a strict-order funnel.
Call this tool from your code in three languages.
curl -X POST 'http://127.0.0.1:3003/en/api/tools/cohort-retention-rfm-funnel-analyzer' \
-H 'Content-Type: application/json' \
-d '{"ordersCsv":"user_id,date,amount\nu1,2026-01-05,120\nu1,2026-02-03,80\nu1,2026-03-02,60\nu1,2026-04-01,40\nu2,2026-01-08,200\nu2,2026-02-20,150\nu3,2026-01-15,90\nu4,2026-02-02,300\nu4,2026-03-05,250\nu4,2026-04-06,220\nu5,2026-02-10,60\nu6,2026-02-14,75\nu6,2026-03-20,50\nu7,2026-03-01,500\nu7,2026-04-02,400\nu8,2026-03-12,110\nu9,2026-03-25,45\nu10,2026-04-03,160","cohortPeriod":"month","periodsCount":3,"analysisDate":"2026-04-06","funnelSteps":"signup, cart, checkout, purchase — needs an event column"}'Send a POST request with your inputs as JSON. File parameters require a separate upload first.
POST http://127.0.0.1:3003/en/api/tools/cohort-retention-rfm-funnel-analyzer| Name | Type | Required | Description |
|---|---|---|---|
| ordersCsv | textarea | Yes | — |
| cohortPeriod | select | Yes | — |
| periodsCount | number | No | — |
| analysisDate | text | No | — |
| funnelSteps | text | No | — |
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-cohort-retention-rfm-funnel-analyzer": {
"name": "cohort-retention-rfm-funnel-analyzer",
"description": "Paste an order or event CSV and get the growth stack in one page: a cohort retention triangle with a heatmap, RFM quintile scoring mapped to the ten standard lifecycle segments, and a strict-order funnel.",
"baseUrl": "http://127.0.0.1:3003/mcp/sse?toolId=cohort-retention-rfm-funnel-analyzer",
"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": "cohort-retention-rfm-funnel-analyzer",
"arguments": {
"ordersCsv": "user_id,date,amount\nu1,2026-01-05,120\nu1,2026-02-03,80\nu1,2026-03-02,60\nu1,2026-04-01,40\nu2,2026-01-08,200\nu2,2026-02-20,150\nu3,2026-01-15,90\nu4,2026-02-02,300\nu4,2026-03-05,250\nu4,2026-04-06,220\nu5,2026-02-10,60\nu6,2026-02-14,75\nu6,2026-03-20,50\nu7,2026-03-01,500\nu7,2026-04-02,400\nu8,2026-03-12,110\nu9,2026-03-25,45\nu10,2026-04-03,160",
"cohortPeriod": "month",
"periodsCount": 3,
"analysisDate": "2026-04-06",
"funnelSteps": "signup, cart, checkout, purchase — needs an event column"
}
}
}Questions or issues? Contact [email protected]