@cyanheads/pixoo-mcp-server 0.3.1

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.
Files changed (4) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +246 -0
  3. package/dist/index.js +178778 -0
  4. package/package.json +193 -0
package/package.json ADDED
@@ -0,0 +1,193 @@
1
+ {
2
+ "name": "@cyanheads/pixoo-mcp-server",
3
+ "version": "0.3.1",
4
+ "mcpName": "io.github.cyanheads/pixoo-mcp-server",
5
+ "description": "Compose and push pixel art, animations, and text to Divoom Pixoo LED matrices via MCP.",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "files": [
9
+ "dist"
10
+ ],
11
+ "bin": {
12
+ "@cyanheads/pixoo-mcp-server": "dist/index.js",
13
+ "pixoo-mcp-server": "dist/index.js"
14
+ },
15
+ "exports": {
16
+ ".": {
17
+ "types": "./dist/index.d.ts",
18
+ "import": "./dist/index.js"
19
+ },
20
+ "./*": "./dist/*"
21
+ },
22
+ "type": "module",
23
+ "sideEffects": false,
24
+ "repository": {
25
+ "type": "git",
26
+ "url": "git+https://github.com/cyanheads/pixoo-mcp-server.git"
27
+ },
28
+ "bugs": {
29
+ "url": "https://github.com/cyanheads/pixoo-mcp-server/issues"
30
+ },
31
+ "homepage": "https://github.com/cyanheads/pixoo-mcp-server#readme",
32
+ "scripts": {
33
+ "build": "bun build ./src/index.ts --outdir ./dist --target node --external pino --external pino-pretty",
34
+ "build:worker": "bun build ./src/worker.ts --outdir ./dist --target bun --no-external",
35
+ "deploy:dev": "MCP_TRANSPORT_TYPE=http bunx wrangler dev",
36
+ "deploy:prod": "MCP_TRANSPORT_TYPE=http bunx wrangler deploy",
37
+ "start": "bun ./dist/index.js",
38
+ "start:stdio": "MCP_TRANSPORT_TYPE=stdio bun ./dist/index.js",
39
+ "start:http": "MCP_TRANSPORT_TYPE=http bun ./dist/index.js",
40
+ "dev": "bun --watch src/index.ts",
41
+ "dev:stdio": "MCP_LOG_LEVEL=debug MCP_TRANSPORT_TYPE=stdio bun --watch src/index.ts",
42
+ "dev:http": "MCP_LOG_LEVEL=debug MCP_TRANSPORT_TYPE=http bun --watch src/index.ts",
43
+ "devdocs": "bun run scripts/devdocs.ts",
44
+ "devcheck": "bun run scripts/devcheck.ts",
45
+ "rebuild": "bun run scripts/clean.ts && bun run build",
46
+ "docs:generate": "bunx typedoc",
47
+ "depcheck": "bunx depcheck",
48
+ "lint": "bunx eslint .",
49
+ "lint:fix": "bunx eslint . --fix",
50
+ "typecheck": "bunx tsc --noEmit",
51
+ "typecheck:scripts": "bunx tsc --project tsconfig.scripts.json --noEmit",
52
+ "tree": "bun run scripts/tree.ts",
53
+ "fetch-spec": "bun run scripts/fetch-openapi-spec.ts",
54
+ "format": "bunx prettier --write \"**/*.{ts,js,json,md,html,css}\"",
55
+ "prepare": "bunx husky",
56
+ "inspector": "bunx mcp-inspector --config mcp.json --server pixoo-mcp-server",
57
+ "test": "bunx vitest run",
58
+ "test:conformance": "bunx vitest run --config vitest.conformance.ts",
59
+ "test:fuzz": "bunx vitest run fuzz",
60
+ "test:coverage": "bunx vitest run --coverage",
61
+ "coverage:update": "bun run scripts/update-coverage.ts",
62
+ "coverage:commit": "bun run scripts/update-coverage.ts --commit",
63
+ "audit": "bun audit",
64
+ "audit:fix": "bun audit --fix",
65
+ "publish-mcp": "bunx mcp-publisher publish"
66
+ },
67
+ "resolutions": {
68
+ "@hono/node-server": "1.19.9",
69
+ "@isaacs/brace-expansion": "5.0.1",
70
+ "chrono-node": "2.9.0",
71
+ "diff": "8.0.3",
72
+ "dotenv": "17.3.1",
73
+ "hono": "4.11.10",
74
+ "markdown-it": "14.1.1",
75
+ "qs": "6.14.2",
76
+ "zod": "4.3.6",
77
+ "typescript": "5.9.3"
78
+ },
79
+ "devDependencies": {
80
+ "@cloudflare/workers-types": "^4.20260302.0",
81
+ "@eslint/js": "^10.0.1",
82
+ "@hono/mcp": "^0.2.3",
83
+ "@traversable/registry": "^0.0.49",
84
+ "@traversable/zod-test": "^0.0.28",
85
+ "@traversable/zod-types": "^0.0.30",
86
+ "@types/bun": "^1.3.9",
87
+ "@types/diff": "^8.0.0",
88
+ "@types/js-yaml": "^4.0.9",
89
+ "@types/node": "^25.3.0",
90
+ "@types/node-cron": "^3.0.11",
91
+ "@types/papaparse": "^5.5.2",
92
+ "@types/sanitize-html": "^2.16.0",
93
+ "@types/validator": "13.15.10",
94
+ "@vitest/coverage-istanbul": "4.0.18",
95
+ "bun-types": "^1.3.9",
96
+ "clipboardy": "^5.3.0",
97
+ "depcheck": "^1.4.7",
98
+ "diff": "^8.0.3",
99
+ "eslint": "^10.0.1",
100
+ "execa": "^9.6.1",
101
+ "fast-check": "^4.5.3",
102
+ "globals": "^17.3.0",
103
+ "husky": "^9.1.7",
104
+ "ignore": "^7.0.5",
105
+ "msw": "^2.12.10",
106
+ "prettier": "^3.8.1",
107
+ "repomix": "^1.11.1",
108
+ "typedoc": "^0.28.17",
109
+ "typescript": "^5.9.3",
110
+ "typescript-eslint": "8.56.0",
111
+ "vite": "7.3.1",
112
+ "vite-tsconfig-paths": "^6.1.1",
113
+ "vitest": "^4.0.18"
114
+ },
115
+ "keywords": [
116
+ "animation",
117
+ "claude",
118
+ "divoom",
119
+ "divoom-pixoo",
120
+ "iot",
121
+ "led-matrix",
122
+ "mcp",
123
+ "mcp-server",
124
+ "model-context-protocol",
125
+ "pixel-art",
126
+ "pixoo",
127
+ "pixoo-64",
128
+ "rgb-display",
129
+ "smart-display",
130
+ "sprite",
131
+ "typescript"
132
+ ],
133
+ "author": "cyanheads <casey@caseyjhand.com> (https://github.com/cyanheads)",
134
+ "license": "Apache-2.0",
135
+ "funding": [
136
+ {
137
+ "type": "github",
138
+ "url": "https://github.com/sponsors/cyanheads"
139
+ },
140
+ {
141
+ "type": "buy_me_a_coffee",
142
+ "url": "https://www.buymeacoffee.com/cyanheads"
143
+ }
144
+ ],
145
+ "packageManager": "bun@1.3.2",
146
+ "engines": {
147
+ "bun": ">=1.2.0",
148
+ "node": ">=22.0.0"
149
+ },
150
+ "depcheck": {
151
+ "ignores": [
152
+ "bun",
153
+ "repomix",
154
+ "@cyanheads/pixoo-mcp-server"
155
+ ]
156
+ },
157
+ "publishConfig": {
158
+ "access": "public"
159
+ },
160
+ "dependencies": {
161
+ "@cyanheads/pixoo-toolkit": "0.4.0",
162
+ "@hono/node-server": "^1.19.9",
163
+ "@modelcontextprotocol/sdk": "^1.26.0",
164
+ "@opentelemetry/api": "^1.9.0",
165
+ "@opentelemetry/auto-instrumentations-node": "^0.70.0",
166
+ "@opentelemetry/exporter-metrics-otlp-http": "^0.212.0",
167
+ "@opentelemetry/exporter-trace-otlp-http": "^0.212.0",
168
+ "@opentelemetry/instrumentation-pino": "^0.58.0",
169
+ "@opentelemetry/resources": "^2.5.1",
170
+ "@opentelemetry/sdk-metrics": "^2.5.1",
171
+ "@opentelemetry/sdk-node": "^0.212.0",
172
+ "@opentelemetry/sdk-trace-node": "^2.5.1",
173
+ "@opentelemetry/semantic-conventions": "^1.39.0",
174
+ "@supabase/supabase-js": "^2.97.0",
175
+ "chrono-node": "^2.9.0",
176
+ "dotenv": "^17.3.1",
177
+ "fast-xml-parser": "^5.3.7",
178
+ "hono": "^4.11.9",
179
+ "jose": "^6.1.3",
180
+ "js-yaml": "^4.1.1",
181
+ "node-cron": "^4.2.1",
182
+ "openai": "^6.22.0",
183
+ "papaparse": "^5.5.3",
184
+ "partial-json": "^0.1.7",
185
+ "pdf-lib": "^1.17.1",
186
+ "pino": "^10.3.1",
187
+ "pino-pretty": "^13.1.3",
188
+ "sanitize-html": "^2.17.1",
189
+ "unpdf": "^1.4.0",
190
+ "validator": "13.15.26",
191
+ "zod": "^4.3.6"
192
+ }
193
+ }