@bicharts/chart-mcp 0.6.58 → 0.6.60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.mjs +55 -54
- package/package.json +3 -3
- package/skills/bic-charts/SKILL.md +17 -4
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bicharts/chart-mcp",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.60",
|
|
4
4
|
"description": "MCP (Model Context Protocol) stdio server for BIC AI charts: profile a dataset locally, then generate chart code that has passed the BIC backend's render gates. Works with any MCP-capable client (Claude Code, Claude Desktop, Cursor, Copilot Studio). An account pays to author charts; the code it writes is yours and runs with no licence.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"mcp",
|
|
@@ -43,8 +43,8 @@
|
|
|
43
43
|
},
|
|
44
44
|
"// dependencies": "NONE, deliberately. dist/ bundles every module the server uses, so a runtime dependency installs nothing it needs - it only makes npx fetch that package (and its tree) before the first start. Everything the bundle carries is a devDependency; scripts/verify-package.mjs fails the release if a dependency appears or a shipped file imports anything but Node's built-ins.",
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@bicharts/chart-host": "^0.6.
|
|
47
|
-
"@bicharts/shape-core": "^0.6.
|
|
46
|
+
"@bicharts/chart-host": "^0.6.60",
|
|
47
|
+
"@bicharts/shape-core": "^0.6.60",
|
|
48
48
|
"@modelcontextprotocol/sdk": "^1.0.0",
|
|
49
49
|
"@types/node": "^20.0.0",
|
|
50
50
|
"@types/papaparse": "^5.3.14",
|
|
@@ -665,13 +665,24 @@ page Clear clears the filter, but the VegaVisual keeps its own highlight until i
|
|
|
665
665
|
empty list means the selection was CLEARED: set your state from exactly what it gives you and never toggle it again.
|
|
666
666
|
Anything saved against a mark - a note, a flag - is keyed the same way, never by `__rowIdx__`.
|
|
667
667
|
|
|
668
|
+
More the page gets from the same filters, each one line:
|
|
669
|
+
- A link that opens the page as it was: `useBicUrlState()` in the page component (after its `useBicFilter` /
|
|
670
|
+
`useBicControls` calls) keeps every filter and every chart's controls in `?view=`. `useBicView()` gives `save()` /
|
|
671
|
+
`restore(view)` for a saved view of your own (a user's favourite), and `token()` for a link.
|
|
672
|
+
- Linked hover: `useBicFilter("CountryIso3", { hover: true })` - hovering a mark lights the same key's marks on every
|
|
673
|
+
chart bound to that filter (a glow, never a selection).
|
|
674
|
+
- A filter that narrows a query to nothing: `<BicChartPanel ... onClearFilters={country.clear}>` says so with a Clear,
|
|
675
|
+
instead of an empty chart. A chart's own empty message: `emptyText` on its component.
|
|
676
|
+
- While building: `<BicDevtools />` shows every filter, its keys, why it last changed, and each chart's controls.
|
|
677
|
+
|
|
668
678
|
**Notes (or flags) on marks, end to end.** People leave a note on a country, a route, a product, and see
|
|
669
679
|
it on that mark: the notes live in Rayfin's data service, and the badge is the chart's `annotations`.
|
|
670
|
-
This recipe was checked against Rayfin's own docs for Rayfin 1.36.1 (a preview),
|
|
671
|
-
`setup_fabric_app` installs as this is written
|
|
680
|
+
This recipe was checked against Rayfin's own docs for Rayfin 1.36.1 (a preview), and its init flags and type-check
|
|
681
|
+
edits again on a real build on 1.36.2, the version `setup_fabric_app` installs as this is written; on those it IS the
|
|
682
|
+
version-matched source:
|
|
672
683
|
follow it as written, and read Rayfin's docs (`node_modules/@microsoft/rayfin-guide/assets/docs/data/`)
|
|
673
684
|
only for what it doesn't cover. `setup_fabric_app`'s reply names the version it installed; where that
|
|
674
|
-
differs from
|
|
685
|
+
differs from those, Rayfin's docs win.
|
|
675
686
|
|
|
676
687
|
*a. Turn the data service on.* The data app template ships it off. Run `setup_fabric_app` first (it puts every `@microsoft/rayfin-*` package on one version:
|
|
677
688
|
npm's latest, the release `rayfin init` installs), then:
|
|
@@ -685,7 +696,9 @@ reason; without `--project-name` (pass the `id:` already in `rayfin/rayfin.yml`,
|
|
|
685
696
|
it stops with "--project-name is required in non-interactive mode". It rewrites `rayfin/rayfin.yml`
|
|
686
697
|
and `.gitignore`, so `git diff` both and put back what's yours (on 1.36.1 it dropped the template's
|
|
687
698
|
`src/fabric.generated.ts` line from `.gitignore`). It writes `rayfin/tsconfig.json` - keep its
|
|
688
|
-
`outDir`, `.temp/compiled`, which is where the deploy reads the entities from - and no entities.
|
|
699
|
+
`outDir`, `.temp/compiled`, which is where the deploy reads the entities from - and no entities. On 1.36.2 it
|
|
700
|
+
writes no `rayfin/data/schema.ts` either: don't write one by hand - `setup_fabric_app` with `features` (step c) writes it
|
|
701
|
+
when `rayfin/rayfin.yml` shows the data service on.
|
|
689
702
|
|
|
690
703
|
*b. Make it type-check.* Three edits, each needed on the data app template:
|
|
691
704
|
- `rayfin/tsconfig.json`, in `compilerOptions`: `"tsBuildInfoFile": ".temp/tsconfig.tsbuildinfo"` and
|