@svgrid/mcp 2.6.6 → 2.6.7

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/README.md CHANGED
@@ -105,15 +105,21 @@ A typical session: `studio_new_project` → `studio_add_entity` (×N) → `studi
105
105
 
106
106
  | | stdio (this package) | remote HTTP |
107
107
  | --- | --- | --- |
108
- | Install | `npx @svgrid/mcp` | paste a URL |
108
+ | Install | `npx @svgrid/mcp` | `https://mcp.svgrid.com/mcp` |
109
109
  | Needs Node | yes | no |
110
110
  | `check_svgrid_code` compiles | yes | static checks only |
111
111
  | Studio `studio_*` tools | yes (27) | no |
112
112
  | Works offline | yes | no |
113
113
 
114
- The remote server lives in [`workers/svgrid-mcp`](../../workers/svgrid-mcp) and
115
- carries the six docs + verification tools. Use stdio when you want the compiler
116
- pass, the Studio tools, or no third-party endpoint in the loop.
114
+ ```bash
115
+ # No install: point any MCP client at the hosted server
116
+ claude mcp add --transport http svgrid https://mcp.svgrid.com/mcp
117
+ ```
118
+
119
+ The remote server is live at **https://mcp.svgrid.com/mcp** and carries the six
120
+ docs + verification tools ([source](../../workers/svgrid-mcp)). Use stdio when
121
+ you want the compiler pass, the Studio tools, or no third-party endpoint in the
122
+ loop.
117
123
 
118
124
  ## Run
119
125
 
package/dist/data.js CHANGED
@@ -4019,7 +4019,7 @@ export const docs = [
4019
4019
  "path": "docs/help/mcp-server.md",
4020
4020
  "title": "MCP server",
4021
4021
  "section": "Help",
4022
- "markdown": "# MCP server\r\n\r\nThe SvGrid MCP server lets AI clients (Claude Code, Claude Desktop,\r\nCursor, Zed, Codex, custom agents) query the documentation, read real\r\ndemo source, and scaffold SvelteKit CRUD apps - all grounded in the\r\nfiles this repository ships. No API key required; everything runs\r\nlocally over stdio.\r\n\r\n![An AI coding agent calls the @svgrid/mcp server over the Model Context Protocol, which runs grid tools and returns structured JSON results back to the agent.](/docs-media/grid-mcp.svg)\r\n\r\n> **What is MCP?** Model Context Protocol is the open standard\r\n> ([modelcontextprotocol.io](https://modelcontextprotocol.io)) for\r\n> exposing tools to LLM clients. SvGrid ships an MCP server so the\r\n> model your team already uses can \"see\" the grid without you having\r\n> to copy-paste docs into prompts.\r\n\r\nThe package is [`@svgrid/mcp`](https://www.npmjs.com/package/@svgrid/mcp)\r\non npm, and it is listed in the official MCP registry as\r\n`com.svgrid/svgrid`.\r\n\r\n## Install\r\n\r\nNo install step is required - `npx` fetches it on demand:\r\n\r\n```bash\r\n# One-shot, from any project\r\nnpx -y @svgrid/mcp\r\n```\r\n\r\nTo pin it as a dev dependency instead:\r\n\r\n```bash\r\npnpm add -D @svgrid/mcp\r\n```\r\n\r\nThe server is a Node binary (`svgrid-mcp`) that speaks MCP over stdio.\r\nThere is no daemon to maintain.\r\n\r\n## Wire it into your AI client\r\n\r\n### Claude Code\r\n\r\nOne command:\r\n\r\n```bash\r\nclaude mcp add svgrid -- npx -y @svgrid/mcp\r\n```\r\n\r\nThen run `/mcp` in a session and you will see `svgrid` listed.\r\n\r\nTo share the server with your team, add `--scope project`. That writes\r\na `.mcp.json` at the repository root which you can commit, so everyone\r\nwho clones the repo gets the same tooling with no per-machine setup:\r\n\r\n```bash\r\nclaude mcp add svgrid --scope project -- npx -y @svgrid/mcp\r\n```\r\n\r\n### Claude Desktop\r\n\r\nEdit `~/Library/Application Support/Claude/claude_desktop_config.json`\r\n(macOS) or `%APPDATA%\\Claude\\claude_desktop_config.json` (Windows):\r\n\r\n```json\r\n{\r\n \"mcpServers\": {\r\n \"svgrid\": {\r\n \"command\": \"npx\",\r\n \"args\": [\"-y\", \"@svgrid/mcp\"]\r\n }\r\n }\r\n}\r\n```\r\n\r\nRestart Claude Desktop, then ask *\"using svgrid, build me a grid that\r\ngroups by department\"* to confirm the tools are exposed.\r\n\r\n### Cursor\r\n\r\n`Settings -> MCP -> Add new MCP server`:\r\n\r\n```json\r\n{ \"command\": \"npx\", \"args\": [\"-y\", \"@svgrid/mcp\"] }\r\n```\r\n\r\n### Zed\r\n\r\n`~/.config/zed/settings.json`:\r\n\r\n```json\r\n{\r\n \"context_servers\": {\r\n \"svgrid\": {\r\n \"command\": \"npx\",\r\n \"args\": [\"-y\", \"@svgrid/mcp\"],\r\n \"env\": {}\r\n }\r\n }\r\n}\r\n```\r\n\r\n### VS Code\r\n\r\nCreate `.vscode/mcp.json` in the workspace. Note that VS Code uses\r\n`servers` rather than the `mcpServers` wrapper:\r\n\r\n```json\r\n{\r\n \"servers\": {\r\n \"svgrid\": {\r\n \"type\": \"stdio\",\r\n \"command\": \"npx\",\r\n \"args\": [\"-y\", \"@svgrid/mcp\"]\r\n }\r\n }\r\n}\r\n```\r\n\r\n### Custom agents (OpenAI Agents SDK, Anthropic SDK, LangChain)\r\n\r\nPoint your client's MCP stdio transport at:\r\n\r\n```\r\nnpx -y @svgrid/mcp\r\n```\r\n\r\nAny client that speaks MCP stdio works.\r\n\r\n## Tools exposed\r\n\r\nThe server registers 35 tools: 8 for documentation, examples, and\r\nscaffolding, plus 27 `studio_*` tools that drive the SvGrid Studio\r\nproject model. All run locally; none require an API key or a network\r\ncall.\r\n\r\n### Documentation and examples\r\n\r\nThese six are free and need no license key.\r\n\r\n#### `list_examples`\r\n\r\nList every demo with `id`, `title`, and a one-line blurb. Use it to\r\ndiscover what exists before fetching source.\r\n\r\n```ts\r\nlist_examples(): Array<{ id, title, blurb, path }>\r\n```\r\n\r\n#### `get_example_source`\r\n\r\nReturn the full `.svelte` source of one demo, verbatim, including\r\nimports - the same file a user would copy into a project.\r\n\r\n```ts\r\nget_example_source({ id: '11-stock-market' }): string\r\n```\r\n\r\n#### `list_docs`\r\n\r\nList every documentation page with slug and title. Slugs use forward\r\nslashes, for example `help/columns/column-definitions`.\r\n\r\n```ts\r\nlist_docs(): Array<{ slug, title }>\r\n```\r\n\r\n#### `get_doc`\r\n\r\nReturn the markdown of a single page by slug.\r\n\r\n```ts\r\nget_doc({ slug: 'getting-started' }): string\r\n```\r\n\r\n#### `search_docs`\r\n\r\nCase-insensitive substring search across all docs. Returns matching\r\nslugs with a one-line excerpt around the first hit.\r\n\r\n`limit` is optional and defaults to 10.\r\n\r\n```ts\r\nsearch_docs({ query: 'row virtualization', limit: 10 })\r\n```\r\n\r\n#### `get_api_reference`\r\n\r\nThe curated public-API surface, grouped by category (components,\r\nheadless, scheduler, data ops, export, row models, features,\r\nvirtualization, accessibility, utilities).\r\n\r\n```ts\r\nget_api_reference(): string\r\n```\r\n\r\n### SvGrid Studio (commercial)\r\n\r\nThese tools generate application code. They still run without a\r\nlicense key, but generated files are prefixed with a comment pointing\r\nat [pricing](https://svgrid.com/pricing/). Set `SVGRID_LICENSE_KEY` in\r\nthe MCP server's environment for licensed use (see\r\n[Licensing](#licensing) below).\r\n\r\n#### `introspect_source`\r\n\r\nInfer a draft `EntitySchema` from a data source: either a Drizzle\r\nschema file (`kind: \"drizzle\"`, `source`: the file text) or sample\r\nrows (`kind: \"json\"`, `rows`, `name`). Review and refine the draft\r\nbefore scaffolding.\r\n\r\n```ts\r\nintrospect_source({ kind: 'drizzle', source: '...' })\r\nintrospect_source({ kind: 'json', rows: [...], name: 'orders' })\r\n```\r\n\r\n#### `scaffold_entity`\r\n\r\nGenerate runnable SvelteKit files from an `EntitySchema`: the `$lib`\r\nschema module, a `+server.ts` API route using `createKitHandlers`, and\r\na `+page.svelte` with `SvGrid` and `SvGridEditPanel`.\r\n\r\n`route` defaults to the schema name and `apiRoute` to `/api/{route}`.\r\n\r\n```ts {nocheck}\r\nscaffold_entity(args: {\r\n schema: EntitySchema\r\n route?: string\r\n apiRoute?: string\r\n}): Array<{ path: string; contents: string; description: string }>\r\n```\r\n\r\nGenerated bodies are wrapped in `svgrid:managed` markers, so\r\nregeneration preserves your edits outside them. After writing the\r\nfiles, run the project's own `svelte-check` or `tsc` to verify they\r\ncompile.\r\n\r\n#### The `studio_*` tools\r\n\r\n27 tools let an agent build and edit the same validated project model\r\nthe visual designer uses, then generate the app:\r\n\r\n| Area | Tools |\r\n| ---- | ----- |\r\n| Project | `studio_new_project`, `studio_load_project`, `studio_describe_project`, `studio_validate`, `studio_capabilities`, `studio_get_config`, `studio_generate_app` |\r\n| Entities | `studio_add_entity`, `studio_set_entity_source` |\r\n| Screens | `studio_add_screen`, `studio_update_screen`, `studio_remove_screen`, `studio_set_screen_layout` |\r\n| Blocks and components | `studio_add_block`, `studio_update_block`, `studio_move_block`, `studio_remove_block`, `studio_add_component` |\r\n| Forms | `studio_set_form_layout`, `studio_set_field_conditions` |\r\n| Platform | `studio_set_auth`, `studio_set_access`, `studio_set_tenancy`, `studio_set_data_layer`, `studio_set_deploy_target`, `studio_set_theme`, `studio_set_job` |\r\n\r\nCall `studio_capabilities` first: it reports exactly what the\r\ninstalled version supports, so the agent does not have to guess.\r\n\r\n## Licensing\r\n\r\nThe documentation and example tools are free. The Studio code\r\ngenerators are part of the commercial offering: they run unlicensed,\r\nbut prepend a notice comment to generated files. To license them, set\r\nthe key in your MCP client's server config:\r\n\r\n```json\r\n{\r\n \"mcpServers\": {\r\n \"svgrid\": {\r\n \"command\": \"npx\",\r\n \"args\": [\"-y\", \"@svgrid/mcp\"],\r\n \"env\": { \"SVGRID_LICENSE_KEY\": \"SVENTERPRISE-...\" }\r\n }\r\n }\r\n}\r\n```\r\n\r\n## Verifying it works\r\n\r\nAfter wiring the server, ask your model: *\"What MCP tools do you have\r\nfrom svgrid?\"* You should see the documentation tools and the\r\n`studio_*` set. If not, check your client's MCP log; the most common\r\nissue is `npx` not being on PATH (use the absolute path to the binary\r\ninstead).\r\n\r\n## Security model\r\n\r\n- The server runs **locally** over stdio. No telemetry, no outbound\r\n network calls, no API key.\r\n- It serves a documentation and example corpus bundled into the\r\n package at build time, so answers are pinned to the version you\r\n installed.\r\n- The Studio tools return generated files as data. Writing them to\r\n disk is your client's decision, not the server's.\r\n- See [security](./security.md) for the general supply-chain posture.\r\n\r\n## Building your own MCP integrations\r\n\r\nThe same docs manifest, JSON Schemas, and `llms.txt` files are also\r\nserved directly from the docs site:\r\n\r\n```ts\r\nconst docs = await fetch('https://svgrid.com/docs.json').then((r) => r.json())\r\nconst schemas = await fetch('https://svgrid.com/schemas/index.json').then((r) => r.json())\r\nconst llms = await fetch('https://svgrid.com/llms-full.txt').then((r) => r.text())\r\n```\r\n\r\nIf you do not want to run the MCP server, building these into your\r\nagent's system prompt gives most of the same grounding.\r\n\r\n## See also\r\n\r\n- [LLM grounding](./llm-grounding.md) - the same files used by the MCP server, but documented for direct LLM consumption\r\n- [Agents](./agents.md) - how to build an AI agent that drives the live grid\r\n- [AI assistant](./ai.md) - the in-grid AI features (filter / smart-fill / classify / summarise), free in @svgrid/grid\r\n\r\n## Frequently asked questions\r\n\r\n### What is the SvGrid MCP server?\r\n\r\nA Model Context Protocol server that lets AI clients (Claude Code, Claude\r\nDesktop, Cursor, Zed, custom agents) query SvGrid's documentation, read real\r\ndemo source, and scaffold SvelteKit CRUD apps - grounded in the files the\r\npackage ships, so the model answers from current facts instead of guessing.\r\n\r\n### Do I need an API key to run it?\r\n\r\nNo. The MCP server runs locally over stdio. There is no key and no external\r\ncall. A `SVGRID_LICENSE_KEY` is optional and only affects the commercial\r\nStudio code generators.\r\n\r\n### How does it help AI assistants write better SvGrid code?\r\n\r\nIt exposes example sources, the docs, and the API reference as MCP tools, so\r\nthe assistant retrieves accurate, version-pinned answers rather than\r\nhallucinating an API from training data. That matters most for Svelte 5, where\r\nmodels routinely mix in outdated Svelte 4 syntax.\r\n"
4022
+ "markdown": "# MCP server\r\n\r\nThe SvGrid MCP server lets AI clients (Claude Code, Claude Desktop,\r\nCursor, Zed, Codex, custom agents) query the documentation, read real\r\ndemo source, and scaffold SvelteKit CRUD apps - all grounded in the\r\nfiles this repository ships. No API key required; everything runs\r\nlocally over stdio.\r\n\r\n![An AI coding agent calls the @svgrid/mcp server over the Model Context Protocol, which runs grid tools and returns structured JSON results back to the agent.](/docs-media/grid-mcp.svg)\r\n\r\n> **What is MCP?** Model Context Protocol is the open standard\r\n> ([modelcontextprotocol.io](https://modelcontextprotocol.io)) for\r\n> exposing tools to LLM clients. SvGrid ships an MCP server so the\r\n> model your team already uses can \"see\" the grid without you having\r\n> to copy-paste docs into prompts.\r\n\r\nThe package is [`@svgrid/mcp`](https://www.npmjs.com/package/@svgrid/mcp)\r\non npm, and it is listed in the official MCP registry as\r\n`com.svgrid/svgrid`.\r\n\r\n## Two ways to connect\r\n\r\n**Hosted (nothing to install).** Point any MCP client at the URL:\r\n\r\n```\r\nhttps://mcp.svgrid.com/mcp\r\n```\r\n\r\n```bash\r\nclaude mcp add --transport http svgrid https://mcp.svgrid.com/mcp\r\n```\r\n\r\nIt carries six tools - `search`, `fetch`, `list_examples`,\r\n`get_example_source`, `get_api_reference` and `check_svgrid_code` - and\r\nneeds no Node, no config file, and no key.\r\n\r\n**Local (`npx @svgrid/mcp`).** Everything the hosted server has, plus\r\nthe 27 `studio_*` tools, and `check_svgrid_code` additionally *compiles*\r\nthe file with the Svelte compiler rather than checking it statically.\r\nUse it when you want the compile pass, the Studio tools, or no\r\nthird-party endpoint in the loop.\r\n\r\n| | Hosted | Local |\r\n| --- | --- | --- |\r\n| Setup | a URL | `npx @svgrid/mcp` |\r\n| Needs Node | no | yes |\r\n| `check_svgrid_code` compiles | no, static checks only | yes |\r\n| `studio_*` tools | no | yes (27) |\r\n| Works offline | no | yes |\r\n\r\n## Install\r\n\r\nNo install step is required - `npx` fetches it on demand:\r\n\r\n```bash\r\n# One-shot, from any project\r\nnpx -y @svgrid/mcp\r\n```\r\n\r\nTo pin it as a dev dependency instead:\r\n\r\n```bash\r\npnpm add -D @svgrid/mcp\r\n```\r\n\r\nThe server is a Node binary (`svgrid-mcp`) that speaks MCP over stdio.\r\nThere is no daemon to maintain.\r\n\r\n## Wire it into your AI client\r\n\r\n### Claude Code\r\n\r\nOne command:\r\n\r\n```bash\r\nclaude mcp add svgrid -- npx -y @svgrid/mcp\r\n```\r\n\r\nThen run `/mcp` in a session and you will see `svgrid` listed.\r\n\r\nTo share the server with your team, add `--scope project`. That writes\r\na `.mcp.json` at the repository root which you can commit, so everyone\r\nwho clones the repo gets the same tooling with no per-machine setup:\r\n\r\n```bash\r\nclaude mcp add svgrid --scope project -- npx -y @svgrid/mcp\r\n```\r\n\r\n### Claude Desktop\r\n\r\nEdit `~/Library/Application Support/Claude/claude_desktop_config.json`\r\n(macOS) or `%APPDATA%\\Claude\\claude_desktop_config.json` (Windows):\r\n\r\n```json\r\n{\r\n \"mcpServers\": {\r\n \"svgrid\": {\r\n \"command\": \"npx\",\r\n \"args\": [\"-y\", \"@svgrid/mcp\"]\r\n }\r\n }\r\n}\r\n```\r\n\r\nRestart Claude Desktop, then ask *\"using svgrid, build me a grid that\r\ngroups by department\"* to confirm the tools are exposed.\r\n\r\n### Cursor\r\n\r\n`Settings -> MCP -> Add new MCP server`:\r\n\r\n```json\r\n{ \"command\": \"npx\", \"args\": [\"-y\", \"@svgrid/mcp\"] }\r\n```\r\n\r\n### Zed\r\n\r\n`~/.config/zed/settings.json`:\r\n\r\n```json\r\n{\r\n \"context_servers\": {\r\n \"svgrid\": {\r\n \"command\": \"npx\",\r\n \"args\": [\"-y\", \"@svgrid/mcp\"],\r\n \"env\": {}\r\n }\r\n }\r\n}\r\n```\r\n\r\n### VS Code\r\n\r\nCreate `.vscode/mcp.json` in the workspace. Note that VS Code uses\r\n`servers` rather than the `mcpServers` wrapper:\r\n\r\n```json\r\n{\r\n \"servers\": {\r\n \"svgrid\": {\r\n \"type\": \"stdio\",\r\n \"command\": \"npx\",\r\n \"args\": [\"-y\", \"@svgrid/mcp\"]\r\n }\r\n }\r\n}\r\n```\r\n\r\n### Custom agents (OpenAI Agents SDK, Anthropic SDK, LangChain)\r\n\r\nPoint your client's MCP stdio transport at:\r\n\r\n```\r\nnpx -y @svgrid/mcp\r\n```\r\n\r\nAny client that speaks MCP stdio works.\r\n\r\n## Tools exposed\r\n\r\nThe server registers 36 tools: 9 for verification, documentation,\r\nexamples, and scaffolding, plus 27 `studio_*` tools that drive the\r\nSvGrid Studio project model. All run locally; none require an API key\r\nor a network call.\r\n\r\n### Verification\r\n\r\n#### `check_svgrid_code`\r\n\r\nChecks a file **against the version you have installed** and returns\r\nline-numbered diagnostics with the exact replacement for each. Run it\r\non SvGrid code before you accept it; fix what it reports and run it\r\nagain.\r\n\r\n```ts\r\ncheck_svgrid_code(source: string, filename?: string): string\r\n```\r\n\r\n```jsonc\r\n{\r\n \"ok\": false,\r\n \"checkedAgainst\": \"@svgrid/grid@2.6.20\",\r\n \"compiler\": \"svelte\",\r\n \"counts\": { \"errors\": 2, \"warnings\": 0, \"info\": 0 },\r\n \"diagnostics\": [\r\n { \"rule\": \"svgrid/renamed-prop\", \"severity\": \"error\", \"line\": 24,\r\n \"message\": \"`rowData` is not a SvGrid prop.\", \"fix\": \"Use `data`.\" },\r\n { \"rule\": \"svgrid/renamed-column-key\", \"severity\": \"error\", \"line\": 10,\r\n \"message\": \"`accessorKey` is not a SvGrid column key.\", \"fix\": \"Use `field`.\" }\r\n ]\r\n}\r\n```\r\n\r\nIt checks four things:\r\n\r\n- **Names, against the installed version.** Importable symbols,\r\n `<SvGrid>` props, `ColumnDef` keys, grid API methods, theme\r\n stylesheets. The list is generated from the package sources at build\r\n time, so it cannot drift from what the package exports; an unknown\r\n name comes back with the nearest real one.\r\n- **Cross-package mistakes.** A symbol that lives in\r\n `@svgrid/enterprise`, or an api method that only exists after\r\n `installEnterprise(api)`.\r\n- **Svelte 5 rules.** `export let` and `$:` in a runes file (compiler\r\n errors), `on:` / `<slot>` / `createEventDispatcher` (deprecations),\r\n and a plain `let` array that is mutated and so never re-renders.\r\n- **The file, compiled.** When a Svelte compiler is reachable - your\r\n project's copy first, then the one bundled here - real parse errors\r\n come back too. The `compiler` field says which ran, so `\"ok\": true`\r\n is never mistaken for \"this compiles\".\r\n\r\nIt is tuned to stay silent on correct code: it reports nothing across\r\nall 373 demos in the SvGrid repo, which a CI test asserts on every\r\ncommit. A checker that cries wolf is worse than none, because a model\r\nwill rewrite working code to satisfy it.\r\n\r\n### Documentation and examples\r\n\r\nThese six are free and need no license key.\r\n\r\n#### `list_examples`\r\n\r\nList every demo with `id`, `title`, and a one-line blurb. Use it to\r\ndiscover what exists before fetching source.\r\n\r\n```ts\r\nlist_examples(): Array<{ id, title, blurb, path }>\r\n```\r\n\r\n#### `get_example_source`\r\n\r\nReturn the full `.svelte` source of one demo, verbatim, including\r\nimports - the same file a user would copy into a project.\r\n\r\n```ts\r\nget_example_source({ id: '11-stock-market' }): string\r\n```\r\n\r\n#### `list_docs`\r\n\r\nList every documentation page with slug and title. Slugs use forward\r\nslashes, for example `help/columns/column-definitions`.\r\n\r\n```ts\r\nlist_docs(): Array<{ slug, title }>\r\n```\r\n\r\n#### `get_doc`\r\n\r\nReturn the markdown of a single page by slug.\r\n\r\n```ts\r\nget_doc({ slug: 'getting-started' }): string\r\n```\r\n\r\n#### `search_docs`\r\n\r\nCase-insensitive substring search across all docs. Returns matching\r\nslugs with a one-line excerpt around the first hit.\r\n\r\n`limit` is optional and defaults to 10.\r\n\r\n```ts\r\nsearch_docs({ query: 'row virtualization', limit: 10 })\r\n```\r\n\r\n#### `get_api_reference`\r\n\r\nThe curated public-API surface, grouped by category (components,\r\nheadless, scheduler, data ops, export, row models, features,\r\nvirtualization, accessibility, utilities).\r\n\r\n```ts\r\nget_api_reference(): string\r\n```\r\n\r\n### SvGrid Studio (commercial)\r\n\r\nThese tools generate application code. They still run without a\r\nlicense key, but generated files are prefixed with a comment pointing\r\nat [pricing](https://svgrid.com/pricing/). Set `SVGRID_LICENSE_KEY` in\r\nthe MCP server's environment for licensed use (see\r\n[Licensing](#licensing) below).\r\n\r\n#### `introspect_source`\r\n\r\nInfer a draft `EntitySchema` from a data source: either a Drizzle\r\nschema file (`kind: \"drizzle\"`, `source`: the file text) or sample\r\nrows (`kind: \"json\"`, `rows`, `name`). Review and refine the draft\r\nbefore scaffolding.\r\n\r\n```ts\r\nintrospect_source({ kind: 'drizzle', source: '...' })\r\nintrospect_source({ kind: 'json', rows: [...], name: 'orders' })\r\n```\r\n\r\n#### `scaffold_entity`\r\n\r\nGenerate runnable SvelteKit files from an `EntitySchema`: the `$lib`\r\nschema module, a `+server.ts` API route using `createKitHandlers`, and\r\na `+page.svelte` with `SvGrid` and `SvGridEditPanel`.\r\n\r\n`route` defaults to the schema name and `apiRoute` to `/api/{route}`.\r\n\r\n```ts {nocheck}\r\nscaffold_entity(args: {\r\n schema: EntitySchema\r\n route?: string\r\n apiRoute?: string\r\n}): Array<{ path: string; contents: string; description: string }>\r\n```\r\n\r\nGenerated bodies are wrapped in `svgrid:managed` markers, so\r\nregeneration preserves your edits outside them. After writing the\r\nfiles, run the project's own `svelte-check` or `tsc` to verify they\r\ncompile.\r\n\r\n#### The `studio_*` tools\r\n\r\n27 tools let an agent build and edit the same validated project model\r\nthe visual designer uses, then generate the app:\r\n\r\n| Area | Tools |\r\n| ---- | ----- |\r\n| Project | `studio_new_project`, `studio_load_project`, `studio_describe_project`, `studio_validate`, `studio_capabilities`, `studio_get_config`, `studio_generate_app` |\r\n| Entities | `studio_add_entity`, `studio_set_entity_source` |\r\n| Screens | `studio_add_screen`, `studio_update_screen`, `studio_remove_screen`, `studio_set_screen_layout` |\r\n| Blocks and components | `studio_add_block`, `studio_update_block`, `studio_move_block`, `studio_remove_block`, `studio_add_component` |\r\n| Forms | `studio_set_form_layout`, `studio_set_field_conditions` |\r\n| Platform | `studio_set_auth`, `studio_set_access`, `studio_set_tenancy`, `studio_set_data_layer`, `studio_set_deploy_target`, `studio_set_theme`, `studio_set_job` |\r\n\r\nCall `studio_capabilities` first: it reports exactly what the\r\ninstalled version supports, so the agent does not have to guess.\r\n\r\n## Licensing\r\n\r\nThe documentation and example tools are free. The Studio code\r\ngenerators are part of the commercial offering: they run unlicensed,\r\nbut prepend a notice comment to generated files. To license them, set\r\nthe key in your MCP client's server config:\r\n\r\n```json\r\n{\r\n \"mcpServers\": {\r\n \"svgrid\": {\r\n \"command\": \"npx\",\r\n \"args\": [\"-y\", \"@svgrid/mcp\"],\r\n \"env\": { \"SVGRID_LICENSE_KEY\": \"SVENTERPRISE-...\" }\r\n }\r\n }\r\n}\r\n```\r\n\r\n## Verifying it works\r\n\r\nAfter wiring the server, ask your model: *\"What MCP tools do you have\r\nfrom svgrid?\"* You should see the documentation tools and the\r\n`studio_*` set. If not, check your client's MCP log; the most common\r\nissue is `npx` not being on PATH (use the absolute path to the binary\r\ninstead).\r\n\r\n## Security model\r\n\r\n- The server runs **locally** over stdio. No telemetry, no outbound\r\n network calls, no API key.\r\n- It serves a documentation and example corpus bundled into the\r\n package at build time, so answers are pinned to the version you\r\n installed.\r\n- The Studio tools return generated files as data. Writing them to\r\n disk is your client's decision, not the server's.\r\n- See [security](./security.md) for the general supply-chain posture.\r\n\r\n## Building your own MCP integrations\r\n\r\nThe same docs manifest, JSON Schemas, and `llms.txt` files are also\r\nserved directly from the docs site:\r\n\r\n```ts\r\nconst docs = await fetch('https://svgrid.com/docs.json').then((r) => r.json())\r\nconst schemas = await fetch('https://svgrid.com/schemas/index.json').then((r) => r.json())\r\nconst llms = await fetch('https://svgrid.com/llms-full.txt').then((r) => r.text())\r\n```\r\n\r\nIf you do not want to run the MCP server, building these into your\r\nagent's system prompt gives most of the same grounding.\r\n\r\n## See also\r\n\r\n- [LLM grounding](./llm-grounding.md) - the same files used by the MCP server, but documented for direct LLM consumption\r\n- [Agents](./agents.md) - how to build an AI agent that drives the live grid\r\n- [AI assistant](./ai.md) - the in-grid AI features (filter / smart-fill / classify / summarise), free in @svgrid/grid\r\n\r\n## Frequently asked questions\r\n\r\n### What is the SvGrid MCP server?\r\n\r\nA Model Context Protocol server that lets AI clients (Claude Code, Claude\r\nDesktop, Cursor, Zed, custom agents) query SvGrid's documentation, read real\r\ndemo source, and scaffold SvelteKit CRUD apps - grounded in the files the\r\npackage ships, so the model answers from current facts instead of guessing.\r\n\r\n### Do I need an API key to run it?\r\n\r\nNo. The MCP server runs locally over stdio. There is no key and no external\r\ncall. A `SVGRID_LICENSE_KEY` is optional and only affects the commercial\r\nStudio code generators.\r\n\r\n### How does it help AI assistants write better SvGrid code?\r\n\r\nIt exposes example sources, the docs, and the API reference as MCP tools, so\r\nthe assistant retrieves accurate, version-pinned answers rather than\r\nhallucinating an API from training data. That matters most for Svelte 5, where\r\nmodels routinely mix in outdated Svelte 4 syntax.\r\n"
4023
4023
  },
4024
4024
  {
4025
4025
  "slug": "help/migrating-from-ag-grid",
package/package.json CHANGED
@@ -5,8 +5,8 @@
5
5
  "type": "commercial",
6
6
  "url": "https://svgrid.com/pricing"
7
7
  },
8
- "version": "2.6.6",
9
- "description": "Model Context Protocol (MCP) server for SvGrid. Exposes example sources, docs, and API reference to AI assistants.",
8
+ "version": "2.6.7",
9
+ "description": "Model Context Protocol server for SvGrid, the Svelte 5 data grid: checks the code your AI writes against the real API surface, plus version-pinned docs, API reference and 373 demo sources.",
10
10
  "license": "MIT",
11
11
  "author": "jQWidgets <sales@jqwidgets.com>",
12
12
  "homepage": "https://svgrid.com/docs/help/mcp-server/",
@@ -58,7 +58,12 @@
58
58
  "svgrid",
59
59
  "sv-grid",
60
60
  "codegen",
61
- "agent"
61
+ "agent",
62
+ "validation",
63
+ "verify",
64
+ "lint",
65
+ "svelte-check",
66
+ "code-verification"
62
67
  ],
63
68
  "exports": {
64
69
  ".": {
package/server.json CHANGED
@@ -2,8 +2,8 @@
2
2
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
3
3
  "name": "com.svgrid/svgrid",
4
4
  "title": "SvGrid",
5
- "description": "Version-pinned Svelte 5 data grid APIs, 373 demo sources, and SvelteKit app scaffolding.",
6
- "version": "2.6.6",
5
+ "description": "Checks AI-written SvGrid code against the real API, plus version-pinned Svelte 5 grid docs.",
6
+ "version": "2.6.7",
7
7
  "websiteUrl": "https://svgrid.com/docs/help/mcp-server/",
8
8
  "repository": {
9
9
  "url": "https://github.com/sv-grid/sv-grid",
@@ -15,11 +15,17 @@
15
15
  "registryType": "npm",
16
16
  "registryBaseUrl": "https://registry.npmjs.org",
17
17
  "identifier": "@svgrid/mcp",
18
- "version": "2.6.6",
18
+ "version": "2.6.7",
19
19
  "runtimeHint": "npx",
20
20
  "transport": {
21
21
  "type": "stdio"
22
22
  }
23
23
  }
24
+ ],
25
+ "remotes": [
26
+ {
27
+ "type": "streamable-http",
28
+ "url": "https://mcp.svgrid.com/mcp"
29
+ }
24
30
  ]
25
31
  }