Elysia Tools Docs
EN
Language
ZHESPTRUFRDEEN
Back to site
Browse tools

Data Visualization

Venn Diagram Generator

Generate customizable Venn diagrams to visualize set relationships, intersections, exclusions, and hierarchical structures

html· HTML resultOpen tool

Quick start

Call this tool from your code in three languages.

cURL
curl -X POST 'https://api.elysiatools.com/en/api/tools/euler-diagram-generator' \
  -H 'Content-Type: application/json' \
  -d '{"chartData":"New simplified format:\n{\n  "element": [\n    {"name": "A", "count": 150},\n    {"name": "B", "count": 120},\n    {"name": "C", "count": 80}\n  ],\n  "Intersecting": [\n    {"names": "A,B", "count": 50}\n  ]\n}\n\nParent-child example (intersection equals smaller set):\n{\n  "element": [\n    {"name": "Animals", "count": 100},\n    {"name": "Mammals", "count": 80}\n  ],\n  "Intersecting": [\n    {"names": "Animals,Mammals", "count": 80}\n  ]\n}\n\nor simple text format:\nA|150\nB|120\nC|80","chartTitle":"Enter chart title...","borderStyle":"solid","colorScheme":"default","customColors":"#3b82f6,#ef4444,#10b981","circleOpacity":"0.4","fontSize":"14","chartWidth":"700","chartHeight":"600","animationDuration":"1200","backgroundColor":"#ffffff","gridColor":"#f0f0f0","showGrid":false,"showLabels":true,"showValues":true,"showLegend":true}'

© 2026 Elysia Tools. Developer documentation.

Back to siteBrowse tools

API reference

Send a POST request with your inputs as JSON. File parameters require a separate upload first.

Endpoint

HTTP
POST https://api.elysiatools.com/en/api/tools/euler-diagram-generator

Parameters

NameTypeRequiredDescription
chartDatatextareaYesSimplified format for Venn diagram. Layout is auto-detected: intersection=smaller set → parent-child; otherwise overlapping; 3+ sets with no intersections → disjoint.
chartTitletextNoTitle that will be displayed above the diagram
borderStyleselectNo—
colorSchemeselectNo—
customColorstextNoCustom hex colors for sets (comma-separated). Overrides color scheme.
circleOpacitynumberNoOpacity of the circles (0.2 to 1.0)
fontSizenumberNoFont size for labels in pixels
chartWidthnumberNoWidth of the chart in pixels
chartHeightnumberNoHeight of the chart in pixels
animationDurationnumberNoDuration of animation in milliseconds
backgroundColorcolorNoBackground color for the chart container
gridColorcolorNoColor for the background grid
showGridcheckboxNoDisplay background grid for better positioning
showLabelscheckboxNoDisplay set names on the diagram
showValuescheckboxNoDisplay element counts in the circles
showLegendcheckboxNoDisplay a legend below the diagram

Response format

HTML result

JSON
{
  "result": "<div>Processed HTML content</div>",
  "error": "Error message (optional)",
  "message": "Notification message (optional)",
  "metadata": {
    "key": "value"
  }
}

MCP integration

Add this tool to your Model Context Protocol server so AI agents can list and call it.

Server configuration

Add this block to your MCP client configuration:

mcp.json
{
  "mcpServers": {
    "elysiatools-euler-diagram-generator": {
      "name": "euler-diagram-generator",
      "description": "Generate customizable Venn diagrams to visualize set relationships, intersections, exclusions, and hierarchical structures",
      "baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=euler-diagram-generator",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

List available tools

After connecting to the SSE endpoint, list the exposed tools:

tools/list
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list"
}

Call this tool

Invoke the tool by its id, passing arguments built from its parameters:

tools/call
{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "euler-diagram-generator",
    "arguments": {
  "chartData": "New simplified format:\n{\n  &quot;element&quot;: [\n    {&quot;name&quot;: &quot;A&quot;, &quot;count&quot;: 150},\n    {&quot;name&quot;: &quot;B&quot;, &quot;count&quot;: 120},\n    {&quot;name&quot;: &quot;C&quot;, &quot;count&quot;: 80}\n  ],\n  &quot;Intersecting&quot;: [\n    {&quot;names&quot;: &quot;A,B&quot;, &quot;count&quot;: 50}\n  ]\n}\n\nParent-child example (intersection equals smaller set):\n{\n  &quot;element&quot;: [\n    {&quot;name&quot;: &quot;Animals&quot;, &quot;count&quot;: 100},\n    {&quot;name&quot;: &quot;Mammals&quot;, &quot;count&quot;: 80}\n  ],\n  &quot;Intersecting&quot;: [\n    {&quot;names&quot;: &quot;Animals,Mammals&quot;, &quot;count&quot;: 80}\n  ]\n}\n\nor simple text format:\nA|150\nB|120\nC|80",
  "chartTitle": "Enter chart title...",
  "borderStyle": "solid",
  "colorScheme": "default",
  "customColors": "#3b82f6,#ef4444,#10b981",
  "circleOpacity": "0.4",
  "fontSize": "14",
  "chartWidth": "700",
  "chartHeight": "600",
  "animationDuration": "1200",
  "backgroundColor": "#ffffff",
  "gridColor": "#f0f0f0",
  "showGrid": false,
  "showLabels": true,
  "showValues": true,
  "showLegend": true
}
  }
}
Chain multiple tools in one session with a comma-separated toolId list, e.g. /mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp (max 20).

Questions or issues? Contact [email protected]

Browse tools
Open tool