Skip to main content
Glama

npm

MCP server for TableCharts — turn tables (CSV, JSON, Notion, Google Sheets, Salesforce) into shareable interactive dashboards, directly from Claude, Cursor, VS Code, or any other MCP client.

Why

LLMs are great at producing structured data but terrible at producing real charts. This server gives any MCP-aware assistant a one-shot tool to convert tabular data into a hosted, embeddable dashboard with a public URL.

Related MCP server: MCP Server Chart

Install

npm i -g @tablecharts/mcp-server

Or run on demand with npx -y @tablecharts/mcp-server — no install needed.

Get an API key

  1. Sign up at https://tablecharts.co

  2. Open https://tablecharts.co/api-keys

  3. Create a key starting with tc_live_…

Configure your MCP client

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "tablecharts": {
      "command": "npx",
      "args": ["-y", "@tablecharts/mcp-server"],
      "env": {
        "TABLECHARTS_API_KEY": "tc_live_..."
      }
    }
  }
}

Restart Claude Desktop. The generate_dashboard tool will appear in the tools menu.

Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "tablecharts": {
      "command": "npx",
      "args": ["-y", "@tablecharts/mcp-server"],
      "env": { "TABLECHARTS_API_KEY": "tc_live_..." }
    }
  }
}

VS Code (with MCP extension)

{
  "mcp.servers": {
    "tablecharts": {
      "command": "npx",
      "args": ["-y", "@tablecharts/mcp-server"],
      "env": { "TABLECHARTS_API_KEY": "tc_live_..." }
    }
  }
}

Tools

Tool

Description

generate_dashboard

Create a dashboard from data (JSON rows), csv (string), or source_url (Notion / Google Sheets / Salesforce). Returns dashboard_url, embed_url, iframe_code.

list_chart_types

Returns the 6 supported chart types: bar, line, area, pie, scatter, radar.

Example prompts

  • "Chart my monthly revenue: Jan 12k, Feb 15k, Mar 18k, Apr 22k. Use TableCharts."

  • "Pull this Notion database and build a dashboard: https://notion.so/…"

  • "Take this CSV and pick the best chart type automatically."

Environment variables

Variable

Required

Description

TABLECHARTS_API_KEY

yes

Your tc_live_… key from https://tablecharts.co/api-keys

TABLECHARTS_API_BASE

no

Override the API base (default https://tablecharts.co)

Limits

  • Free tier: 3 saved charts, 30 requests/minute.

  • Pro tier: unlimited charts, AI cleaning, AI chart recommendation, custom colors, no watermark.

License

MIT

Available Tools

2 tools
generate_dashboardA

Turn tabular data into a shareable interactive TableCharts dashboard. Accepts JSON rows, raw CSV, or a public Notion / Google Sheets / Salesforce URL. Returns a dashboard URL and an embeddable iframe.

ParametersJSON Schema
NameRequiredDescriptionDefault
csvNoRaw CSV text.
dataNoArray of row objects.
titleNo
ai_cleanNo
chart_typeNo
source_urlNoPublic Notion / Google Sheets / Salesforce report URL.
ai_recommendNo

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must cover behavioral traits. It mentions inputs and outputs but omits details on data storage, rate limits, authentication, or side effects. Adequate but not thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with key information front-loaded. No extraneous details. Efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 7 parameters, no output schema, and no annotations, the description lacks completeness: no explanation of optional parameters, no mention of data handling or size limits. Partially complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is low (43%). Description explains 'data', 'csv', 'source_url' but not 'title', 'chart_type', 'ai_clean', 'ai_recommend'. Partial compensation for missing schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the action (generate dashboard), the input types (tabular data, CSV, URL), and the output (URL and iframe). It is distinct from the sibling tool 'list_chart_types'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description implies usage context: when you have tabular data and want an interactive dashboard. However, it lacks explicit guidance on when not to use or alternatives beyond the sibling tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_chart_typesA

List the chart types TableCharts supports. Use this before calling generate_dashboard with an explicit chart_type.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but the description implies a read-only operation via 'list'. For a simple listing tool, this is sufficient; no further behavioral traits need disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no waste. Front-loaded with purpose, then usage advice. Highly concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless tool with no output schema, the description is complete: it explains what it does and when to use it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so the description adds no parameter info. With 100% schema coverage and 0 params, baseline is 4; no need for additional semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it lists supported chart types, with specific verb 'list' and resource 'chart types'. It distinguishes from sibling tool generate_dashboard by advising usage before calling that tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit usage guidance: 'Use this before calling generate_dashboard with an explicit chart_type.' Provides clear context for when to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 2 tool updatesv0.1.0
    • First observedgenerate_dashboard
    • First observedlist_chart_types

TDQS

A4/5.0
Disambiguation5/5

The two tools have clearly distinct purposes: generate_dashboard creates dashboards, while list_chart_types provides metadata about available chart types. No overlap or ambiguity.

Naming Consistency5/5

Both tool names follow a consistent verb_noun pattern (generate_dashboard, list_chart_types), using snake_case and clear verbs.

Tool Count3/5

With only 2 tools, the server is minimal but functional for its stated purpose of creating dashboards. However, it feels thin compared to typical server scopes.

Completeness2/5

The tool set covers only dashboard creation and chart type listing, missing obvious lifecycle operations like updating, deleting, or retrieving existing dashboards, leading to significant gaps.

Maintenance

ActivityStale
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Browncabinet/tablecharts-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server