A side-by-side look at the Semiotic and Visuals MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Semiotic for data visualization work as a local process; choose Visuals MCP for data visualization. You can also run both side by side in one mcpServers block.
renderChart, renderInteractiveChart, getSchema.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Data Visualization | Data Visualization |
| Quality signal | 67/100 · Great | 31/100 · Emerging |
| Install command | Confirmed | Not confirmed yet |
| Transport | Local subprocess (stdio) | — |
| Auth | No auth required | Not declared |
| Pricing | Free | Not declared |
| Required env vars | None listed | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 2,716 | 6 |
| Directory activity | 5 views 0 installs 0 upvotes | 0 views 0 installs 0 upvotes |
| Tools | 18 | Not listed |
| Full listing | View Semiotic | View Visuals MCP |
renderChartRender a Semiotic chart to static SVG. Supports the components returned by `getSchema` that are marked `[renderable]`. Pass `{ component: "LineChart", props: { data: [...], xAccessor: "x", yAccessor: "y" } }`. Returns SVG string plus a "Render evidence" JSON block (mark counts by scene type, resolv…renderInteractiveChartRender a static-data chart as a ChatGPT Apps widget. Uses the same Semiotic server render path as `renderChart`, then hydrates an iframe UI with fit, zoom, data, hover, and render-evidence controls.getSchemaReturn the prop schema for a specific component. Pass `{ component: "LineChart" }` to get its props, or omit `component` to list the complete schema-backed catalog. Components marked `[renderable]` are available through `renderChart`; realtime charts require a browser/live environment.suggestChartSample-row recommender. Pass `{ data: [{...}, ...] }` with 1–5 sample objects plus optional broad intent/capability filters.suggestChartsCapability-based recommender for bounded row data. Returns ranked chart suggestions with scores, reasons, caveats, import paths, and ready-to-use props.suggestStreamChartsRecommend streaming charts from a schema (shape, key, throughput). Returns `{ suggestions, excluded, stretchSuggestions }`.suggestStreamDashboardCompose a multi-panel dashboard from stream schemas and an audience layout policy.suggestDashboardBuild a multi-panel dashboard suggestion that covers distinct analytical intents.suggestStretchChartsRecommend audience-literacy stretch picks from an `AudienceProfile`.repairChartConfigCheck whether a requested chart fits a dataset and return ranked alternatives when it does not.interrogateChartReturn a statistical summary and chart-aware context for answering natural-language questions with optional annotations.diagnoseConfigCheck a chart configuration for common problems — empty data, bad dimensions, missing accessors, wrong data shape, and more. Returns a human-readable diagnostic report with actionable fixes.No tool names declared yet. Check the project README from the listing page.
Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"nteract-semiotic": {
"command": "npx",
"args": [
"-y",
"semiotic-mcp"
]
}
}
}
No confirmed install command for Visuals MCP yet — follow the setup steps linked from its listing page rather than a guessed package name.