Semiotic
JSON →Data visualization for streaming and static charts, maps and network visualization.
Install
npx semiotic-mcp`** Tools · 12
- renderChart Render 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 or validation errors with fix suggestions.
- getSchema Return the prop schema for a specific component. Pass `{ component: "LineChart" }` to get its props, or omit `component` to list all 46 chart schemas. Components marked `[renderable]` are available through `renderChart`; realtime charts require a browser/live environment.
- suggestChart Legacy sample-row recommender. Pass `{ data: [{...}, ...] }` with 1–5 sample objects plus optional broad intent/capability filters.
- suggestCharts Capability-based recommender for bounded row data. Returns ranked chart suggestions with scores, reasons, caveats, import paths, and ready-to-use props.
- suggestStreamCharts Recommend realtime charts from a stream schema, throughput, and retention hints.
- suggestDashboard Build a multi-panel dashboard suggestion that covers distinct analytical intents.
- suggestStretchCharts Recommend audience-literacy stretch picks from an `AudienceProfile`.
- repairChartConfig Check whether a requested chart fits a dataset and return ranked alternatives when it does not.
- interrogateChart Return a statistical summary and chart-aware context for answering natural-language questions with optional annotations.
- diagnoseConfig Check 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.
- reportIssue Generate a pre-filled GitHub issue URL for bug reports or feature requests. Pass `{ title: "...", body: "...", labels: ["bug"] }`. Returns a URL the user can open to submit.
- applyTheme List named theme presets or return ThemeProvider/CSS/token usage for a preset such as `{ name: "tufte" }`.
Links
★ 2,668 GitHub stars