← WebMCP Directory

sheetcanvas.com

sheetcanvas.com

live Unverified (seed import) Productivity & Business 21 tools imperative implementation

Connect Claude, Codex, or another MCP-capable agent to SheetCanvas so messy business data becomes durable tables, charts, pivots, notes, and dashboards.

First seen 2026-09-14 · Last seen 2026-09-14 · Source: webmcp.com

Answer 10 · Act 10 · Transact 1 · Score: Not yet scored

Tool inspector

createChart

act imperative

Creates a chart from a source sheet; response includes formDecisions. mode:"group" aggregates row-level data via groupCol/valueCol/operation. mode:"metrics" charts aggregated columns: labelColumn is X-axis, dataColumns are Y series. Time-series charts need timeRange and timeGranularity. Duplicate X labels in metrics mode mean data is too granular — use mode:"group" or createPivot first. For "does X drive Y" use type:"scatter" (one point per entity), not dual-axis lines.

Page: /

Input schema

PropertyTypeRequiredDescription
sheetId string yes
type string yes
mode string no Use group for chart-only aggregation over row-level data; metrics charts already-aggregated columns directly.
labelColumn string yes
dataColumns array yes
groupCol string no For mode:"group", the X-axis grouping column. Usually the same as labelColumn for compatibility.
seriesGroupCol string no For mode:"group", optional column that splits the aggregate into series.
valueCol string no For mode:"group", the numeric value column to aggregate. Usually the first dataColumns entry for compatibility.
operation string no For mode:"group", how to aggregate valueCol values in the chart.
seriesTypes object no Per-series chart type override keyed by dataColumns letter, e.g. {"B":"bar","C":"line"}. Metrics mode only. Omit to auto-select.
rightAxisColumns array no dataColumns letters plotted on a second Y-axis, e.g. a rate paired with volumes. Metrics mode only. Omit to auto-gate the dual axis.
title string no
timeRange string no Required for time-series charts. Examples: "2026-05-01 to 2026-06-11", "last 30 days", or "full available range".
timeGranularity string no Required for time-series charts when the label column is date-like.
aggregation string no The analysis aggregation represented by this chart, such as SUM or COUNT. Use operation for chart-only group mode.
sourceGrain string no Declare whether the source sheet already matches the chart grain, or raw_rows when mode:"group" will aggregate directly.
allowDuplicateLabels boolean no Only set true when the user explicitly wants multiple plotted rows with the same label in metrics mode. Otherwise use group mode or create a
analysisNotes string no Briefly state the chart grain/assumption when using an explicit default or override.
Raw JSON schema
{
  "type": "object",
  "properties": {
    "sheetId": {
      "type": "string"
    },
    "type": {
      "type": "string",
      "enum": [
        "line",
        "bar",
        "pie",
        "area",
        "scatter",
        "treemap"
      ]
    },
    "mode": {
      "description": "Use group for chart-only aggregation over row-level data; metrics charts already-aggregated columns directly.",
      "type": "string",
      "enum": [
        "metrics",
        "group"
      ]
    },
    "labelColumn": {
      "type": "string",
      "pattern": "^[A-Z]+$"
    },
    "dataColumns": {
      "minItems": 1,
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Z]+$"
      }
    },
    "groupCol": {
      "description": "For mode:\"group\", the X-axis grouping column. Usually the same as labelColumn for compatibility.",
      "type": "string",
      "pattern": "^[A-Z]+$"
    },
    "seriesGroupCol": {
      "description": "For mode:\"group\", optional column that splits the aggregate into series.",
      "type": "string",
      "pattern": "^[A-Z]+$"
    },
    "valueCol": {
      "description": "For mode:\"group\", the numeric value column to aggregate. Usually the first dataColumns entry for compatibility.",
      "type": "string",
      "pattern": "^[A-Z]+$"
    },
    "operation": {
      "description": "For mode:\"group\", how to aggregate valueCol values in the chart.",
      "type": "string",
      "enum": [
        "SUM",
        "COUNT",
        "AVG",
        "MIN",
        "MAX"
      ]
    },
    "seriesTypes": {
      "description": "Per-series chart type override keyed by dataColumns letter, e.g. {\"B\":\"bar\",\"C\":\"line\"}. Metrics mode only. Omit to auto-select.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "pattern": "^[A-Z]+$"
      },
      "additionalProperties": {
        "type": "string",
        "enum": [
          "line",
          "bar",
          "pie",
          "area",
          "scatter",
          "treemap"
        ]
      }
    },
    "rightAxisColumns": {
      "description": "dataColumns letters plotted on a second Y-axis, e.g. a rate paired with volumes. Metrics mode only. Omit to auto-gate the dual axis.",
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Z]+$"
      }
    },
    "title": {
      "type": "string"
    },
    "timeRange": {
      "description": "Required for time-series charts. Examples: \"2026-05-01 to 2026-06-11\", \"last 30 days\", or \"full available range\".",
      "type": "string",
      "minLength": 1,
      "maxLength": 160
    },
    "timeGranularity": {
      "description": "Required for time-series charts when the label column is date-like.",
      "type": "string",
      "enum": [
        "day",
        "week",
        "month",
        "quarter",
        "year"
      ]
    },
    "aggregation": {
      "description": "The analysis aggregation represented by this chart, such as SUM or COUNT. Use operation for chart-only group mode.",
      "type": "string",
      "enum": [
        "SUM",
        "COUNT",
        "AVG",
        "MIN",
        "MAX"
      ]
    },
    "sourceGrain": {
      "description": "Declare whether the source sheet already matches the chart grain, or raw_rows when mode:\"group\" will aggregate directly.",
      "type": "string",
      "enum": [
        "raw_rows",
        "already_aggregated",
        "pivot_summary",
        "unknown"
      ]
    },
    "allowDuplicateLabels": {
      "description": "Only set true when the user explicitly wants multiple plotted rows with the same label in metrics mode. Otherwise use group mode or create a",
      "type": "boolean"
    },
    "analysisNotes": {
      "description": "Briefly state the chart grain/assumption when using an explicit default or override.",
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    }
  },
  "required": [
    "sheetId",
    "type",
    "labelColumn",
    "dataColumns"
  ],
  "additionalProperties": false
}

Similar websites

eworker.ca

eworker.ca

E-Worker is business infrastructure powered by AI, with focused apps and connected business work.

live Unverified Productivity & Business
73 tools A10 / Act63 / T0 Not yet scored Seen 2026-09-14
eworker_site_status eworker_list_apps eworker_resolve_app eworker_open_app ewdoc_status
Inspect tools
urban-planning-copilot.heisenbug.in

urban-planning-copilot.heisenbug.in

Urban Planning Copilot

demo Unverified Productivity & Business
37 tools A10 / Act27 / T0 Not yet scored Seen 2026-09-14
get_workspace get_analysis_plan list_candidates inspect_candidate list_shortlist
Inspect tools
vide.zerdalu.com

vide.zerdalu.com

Vide

live Unverified Productivity & Business Transact tools
28 tools A13 / Act14 / T1 Not yet scored Seen 2026-09-14
list_project_files read_project_file write_project_file delete_project_file get_active_script
Inspect tools
labspace-agent-twin.onrender.com

labspace-agent-twin.onrender.com

LabSpace Atlas — design laboratories, index exact locations, and let a browser agent plan, audit, and navigate the spatial twin.

demo Unverified Productivity & Business
24 tools A5 / Act19 / T0 Not yet scored Seen 2026-09-14
labspace_add_inventory labspace_assess_workflow labspace_resolve_materials labspace_start_collection labspace_collection_step
Inspect tools

Related on Influzer