@cascivo/mcp 0.1.0

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/package.json ADDED
@@ -0,0 +1,58 @@
1
+ {
2
+ "name": "@cascivo/mcp",
3
+ "version": "0.1.0",
4
+ "private": false,
5
+ "description": "MCP server exposing the cascade component registry to AI agents",
6
+ "keywords": [
7
+ "ai",
8
+ "cascivo",
9
+ "css",
10
+ "design-system",
11
+ "mcp",
12
+ "model-context-protocol",
13
+ "react",
14
+ "signals"
15
+ ],
16
+ "homepage": "https://github.com/urbanisierung/cascivo/tree/main/packages/mcp#readme",
17
+ "bugs": "https://github.com/urbanisierung/cascivo/issues",
18
+ "license": "MIT",
19
+ "author": "urbanisierung",
20
+ "repository": {
21
+ "type": "git",
22
+ "url": "git+https://github.com/urbanisierung/cascivo.git",
23
+ "directory": "packages/mcp"
24
+ },
25
+ "bin": {
26
+ "cascade-mcp": "./dist/index.mjs"
27
+ },
28
+ "files": [
29
+ "dist"
30
+ ],
31
+ "type": "module",
32
+ "types": "./dist/index.d.mts",
33
+ "exports": {
34
+ ".": {
35
+ "import": "./dist/index.mjs",
36
+ "types": "./dist/index.d.mts",
37
+ "default": "./dist/index.mjs"
38
+ }
39
+ },
40
+ "publishConfig": {
41
+ "access": "public",
42
+ "provenance": true
43
+ },
44
+ "dependencies": {
45
+ "@modelcontextprotocol/sdk": "^1.29.0",
46
+ "zod": "^4.4.3"
47
+ },
48
+ "devDependencies": {
49
+ "@types/node": "^25",
50
+ "typescript": "^5",
51
+ "vite-plus": "^0.1.24"
52
+ },
53
+ "scripts": {
54
+ "build": "vp pack && node -e \"const fs=require('fs');const f='dist/index.mjs';const c=fs.readFileSync(f,'utf8');if(!c.startsWith('#!/'))fs.writeFileSync(f,'#!/usr/bin/env node\\n'+c);fs.copyFileSync('../../registry.json','dist/registry.json')\" && chmod +x dist/index.mjs",
55
+ "check": "tsc --noEmit",
56
+ "test": "vp test"
57
+ }
58
+ }
package/readme.body.md ADDED
@@ -0,0 +1,41 @@
1
+ ## Usage
2
+
3
+ Add it to your MCP client configuration:
4
+
5
+ ```json
6
+ {
7
+ "mcpServers": {
8
+ "cascivo": {
9
+ "command": "npx",
10
+ "args": ["-y", "@cascivo/mcp"]
11
+ }
12
+ }
13
+ }
14
+ ```
15
+
16
+ The server speaks the MCP stdio transport. By default it reads the `registry.json` bundled with the package; override with the `CASCIVO_REGISTRY_PATH` environment variable to point at a local registry.
17
+
18
+ ## Tools
19
+
20
+ | Tool | Input | Returns |
21
+ | ------------------- | ------------------------------------- | -------------------------------------------------------- |
22
+ | `list_components` | `{ category? }` | All component manifests, optionally filtered by category |
23
+ | `get_component` | `{ name }` | The full manifest for one component |
24
+ | `search_components` | `{ query }` | Components matching name, tags, or description |
25
+ | `add_to_project` | `{ name, outputDir? }` | Runs `cascivo add <name>` as a child process |
26
+ | `create_theme` | `{ primary, neutral, accent, name? }` | A custom theme as CSS (semantic token layer) |
27
+ | `scaffold_page` | `{ description, components? }` | A JSX page layout string |
28
+
29
+ `category` is one of `inputs`, `display`, `overlay`, `navigation`, `feedback`.
30
+
31
+ ## Programmatic use
32
+
33
+ ```ts
34
+ import { createServer } from '@cascivo/mcp'
35
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
36
+
37
+ const server = createServer({ registryPath: './registry.json' })
38
+ await server.connect(new StdioServerTransport())
39
+ ```
40
+
41
+ The pure helpers (`listComponents`, `getComponent`, `searchComponents`, `generateThemeCss`, `scaffoldPage`) are exported too, so the registry can be queried without spinning up the protocol.