Semiotic logo

Semiotic

by nteract

Recommends, validates, renders, diagnoses, and repairs Semiotic React chart configurations through MCP.

Install Semiotic

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "nteract-semiotic": {
      "command": "npx",
      "args": [
        "-y",
        "-p",
        "semiotic",
        "semiotic-mcp"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

nteract/semiotic connects MCP clients to Semiotic’s schema-backed React visualization system for chart recommendations, configuration checks, and SVG rendering. Its tools cover static charts, interactive ChatGPT Apps widgets, streaming-chart recommendations, dashboards, themes, statistical interrogation, and artifact-policy review. Reach for it when an agent needs to choose a chart from sample data, generate validated props, inspect a configuration, or produce render evidence. Rendered output is limited to components exposed by the schema as renderable; realtime charts require a browser or live environment.

Use cases

  • Recommend chart types from representative dataset rows
  • Render validated Semiotic configurations as SVG
  • Diagnose missing accessors and incompatible data shapes
  • Compose dashboards from analytical or streaming requirements
  • Audit and repair visualization artifact contracts

Key features

  • Schema-backed chart catalog
  • Static SVG rendering with render evidence
  • Interactive ChatGPT Apps chart widgets
  • Chart, dashboard, and stream recommendations
  • Configuration diagnosis and repair
  • Artifact policy audit and refusal explanations

Tools18

What Semiotic lets your agent do. Expand a tool for its parameters.

Self-reported~711 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

31/31 checks healthy over the last 78d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 7d ago via OSV.dev · semiotic (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars2.7kStargazers on the source repository.
npm downloads43kPackage downloads in the last 30 days.
Last commitTodayMost recent push to the default branch.
Tools exposed18Callable tools this server registers over MCP.
Directory activity6 viewsConfig copies, upvotes, and views on AllMCPs.

How Semiotic works

What nteract/semiotic does

nteract/semiotic brings Semiotic’s React data-visualization components into MCP workflows. It gives coding assistants structured access to chart schemas, recommendation logic, validation, rendering, and repair operations instead of requiring them to guess component names and prop shapes. The underlying catalog spans common chart families as well as network, geographic, statistical, value, and realtime visualizations.

The server is useful across the chart lifecycle. An agent can start with a few sample rows, identify suitable chart forms, generate props, check whether the proposed encoding fits the data, render a static result, and inspect evidence from the render. It can also help assemble dashboards, choose themes, explain policy refusals, and evaluate or repair explicit visualization artifacts.

How it works

Chart generation is schema-driven. getSchema returns the prop definition for one component or the complete catalog, while recommendation tools use sample rows, capabilities, stream schemas, analytical intent, or audience profiles to produce ranked options. repairChartConfig checks fit and proposes alternatives when a requested chart does not match its data.

renderChart accepts a component name and props, such as a line chart with data and x/y accessors, then returns static SVG together with render evidence. That evidence includes mark counts by scene type and helps an agent inspect what was actually produced. renderInteractiveChart follows the same rendering path and places the result in a ChatGPT Apps widget with fit, zoom, data, hover, and evidence controls.

Validation tools identify empty data, incompatible dimensions, missing accessors, incorrect data shapes, and other configuration problems. The artifact tools work from explicit contracts and named policies: they can audit, recommend representations, propose repairs, or explain which obligations block publication or action.

Setup and configuration

Run the MCP entry point with:

Terminal
npx -y -p semiotic semiotic-mcp

Register that command in an MCP-compatible client using the client’s standard process-based server configuration. The server accepts structured JSON tool inputs; for example, pass { "component": "LineChart" } to inspect a component schema or provide a component and props object to renderChart. No environment variables are required by the documented launch command.

Tools and capabilities

  • Recommend charts from sample rows, capabilities, stream schemas, analytical intents, or audience profiles.
  • Compose multi-panel dashboards for bounded data or streaming inputs.
  • Return schemas, import paths, reasons, caveats, and ready-to-use props for suggestions.
  • Render supported components to SVG and return render evidence.
  • Render static-data charts as interactive ChatGPT Apps widgets.
  • Diagnose configuration anti-patterns and propose compatible alternatives.
  • Summarize data in chart-aware form for natural-language questions, with optional annotations.
  • Apply named theme presets and return related theme usage information.
  • Audit, repair, and review explicit artifact contracts under policy rules.
  • Generate a prefilled GitHub issue URL with a title, body, and labels.

Limitations and notes

Only schema components marked [renderable] are available through renderChart. Realtime charts depend on a browser or live environment rather than the static rendering path. Recommendation inputs also differ by tool: sample-row recommenders accept only a small set of representative objects, while streaming recommendations require a stream schema with details such as shape, key, and throughput.

The server supports chart implementation and review, but application owners remain responsible for surrounding accessibility work and user testing. Artifact review evaluates the explicit contract supplied to it; policy outcomes depend on those declared requirements and facts.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Semiotic

nteract/semiotic is an MCP server that connects AI agents to Semiotic’s React data-visualization system. Its main tools recommend charts, return component schemas, diagnose and repair configurations, render supported charts to SVG, create interactive widgets, and review visualization artifacts against explicit policies.

Install it by running `npx -y -p semiotic semiotic-mcp` from your MCP client’s server configuration. The command launches the package without requiring a separate global installation or documented environment variables.

Call `renderChart` with a component name and props, such as `LineChart` with `data`, `xAccessor`, and `yAccessor`. The response contains static SVG and render evidence; only schema components marked `[renderable]` can use this path.

Yes, `suggestChart` accepts one to five sample objects and optional broad intent or capability filters. `suggestCharts` provides ranked options with scores, reasons, caveats, import paths, and ready-to-use props.

Yes, it can be used with Cursor as an MCP server launched through the standard command. Configure Cursor to run `npx -y -p semiotic semiotic-mcp` and expose its tools to the agent.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewSemiotic AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/nteract-semiotic?style=directory)](https://allmcps.com/mcp/nteract-semiotic)
HTML Embed
<a href="https://allmcps.com/mcp/nteract-semiotic"><img src="https://allmcps.com/api/badge/nteract-semiotic?style=directory" alt="Semiotic on AllMCPs" /></a>