@pinepaper.studio/mcp-server 1.5.1 → 1.5.4

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 (96) hide show
  1. package/README.md +6 -4
  2. package/dist/agent/types.d.ts +16 -16
  3. package/dist/browser/puppeteer-controller.d.ts +5 -1
  4. package/dist/browser/puppeteer-controller.d.ts.map +1 -1
  5. package/dist/browser/puppeteer-controller.js +11 -3
  6. package/dist/browser/puppeteer-controller.js.map +1 -1
  7. package/dist/browser/url-target.d.ts +26 -0
  8. package/dist/browser/url-target.d.ts.map +1 -0
  9. package/dist/browser/url-target.js +50 -0
  10. package/dist/browser/url-target.js.map +1 -0
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +128 -109
  13. package/dist/index.js.map +1 -1
  14. package/dist/ontology/design-graph.d.ts +85 -0
  15. package/dist/ontology/design-graph.d.ts.map +1 -0
  16. package/dist/ontology/design-graph.js +944 -0
  17. package/dist/ontology/design-graph.js.map +1 -0
  18. package/dist/ontology/hints.d.ts +71 -0
  19. package/dist/ontology/hints.d.ts.map +1 -0
  20. package/dist/ontology/hints.js +189 -0
  21. package/dist/ontology/hints.js.map +1 -0
  22. package/dist/ontology/index.d.ts +11 -0
  23. package/dist/ontology/index.d.ts.map +1 -0
  24. package/dist/ontology/index.js +14 -0
  25. package/dist/ontology/index.js.map +1 -0
  26. package/dist/ontology/semantic-vocabulary.d.ts +12 -0
  27. package/dist/ontology/semantic-vocabulary.d.ts.map +1 -0
  28. package/dist/ontology/semantic-vocabulary.js +26 -0
  29. package/dist/ontology/semantic-vocabulary.js.map +1 -0
  30. package/dist/ontology/types.d.ts +255 -0
  31. package/dist/ontology/types.d.ts.map +1 -0
  32. package/dist/ontology/types.js +10 -0
  33. package/dist/ontology/types.js.map +1 -0
  34. package/dist/ontology/validator.d.ts +36 -0
  35. package/dist/ontology/validator.d.ts.map +1 -0
  36. package/dist/ontology/validator.js +374 -0
  37. package/dist/ontology/validator.js.map +1 -0
  38. package/dist/ontology/vocabulary.d.ts +34 -0
  39. package/dist/ontology/vocabulary.d.ts.map +1 -0
  40. package/dist/ontology/vocabulary.js +429 -0
  41. package/dist/ontology/vocabulary.js.map +1 -0
  42. package/dist/prompts/index.d.ts.map +1 -1
  43. package/dist/prompts/index.js +146 -0
  44. package/dist/prompts/index.js.map +1 -1
  45. package/dist/tools/compact-descriptions.d.ts +5 -2
  46. package/dist/tools/compact-descriptions.d.ts.map +1 -1
  47. package/dist/tools/compact-descriptions.js +56 -235
  48. package/dist/tools/compact-descriptions.js.map +1 -1
  49. package/dist/tools/definitions.d.ts +1 -1
  50. package/dist/tools/definitions.d.ts.map +1 -1
  51. package/dist/tools/definitions.js +1842 -1784
  52. package/dist/tools/definitions.js.map +1 -1
  53. package/dist/tools/handlers/camera.d.ts +19 -0
  54. package/dist/tools/handlers/camera.d.ts.map +1 -0
  55. package/dist/tools/handlers/camera.js +94 -0
  56. package/dist/tools/handlers/camera.js.map +1 -0
  57. package/dist/tools/handlers/export.d.ts +12 -0
  58. package/dist/tools/handlers/export.d.ts.map +1 -0
  59. package/dist/tools/handlers/export.js +30 -0
  60. package/dist/tools/handlers/export.js.map +1 -0
  61. package/dist/tools/handlers/font.d.ts +12 -0
  62. package/dist/tools/handlers/font.d.ts.map +1 -0
  63. package/dist/tools/handlers/font.js +135 -0
  64. package/dist/tools/handlers/font.js.map +1 -0
  65. package/dist/tools/handlers/maps.d.ts +19 -0
  66. package/dist/tools/handlers/maps.d.ts.map +1 -0
  67. package/dist/tools/handlers/maps.js +184 -0
  68. package/dist/tools/handlers/maps.js.map +1 -0
  69. package/dist/tools/handlers/ontology.d.ts +20 -0
  70. package/dist/tools/handlers/ontology.d.ts.map +1 -0
  71. package/dist/tools/handlers/ontology.js +185 -0
  72. package/dist/tools/handlers/ontology.js.map +1 -0
  73. package/dist/tools/handlers/tool-guide.d.ts +14 -0
  74. package/dist/tools/handlers/tool-guide.d.ts.map +1 -0
  75. package/dist/tools/handlers/tool-guide.js +52 -0
  76. package/dist/tools/handlers/tool-guide.js.map +1 -0
  77. package/dist/tools/handlers.d.ts +18 -0
  78. package/dist/tools/handlers.d.ts.map +1 -1
  79. package/dist/tools/handlers.js +321 -574
  80. package/dist/tools/handlers.js.map +1 -1
  81. package/dist/tools/minimal-descriptions.d.ts +4 -0
  82. package/dist/tools/minimal-descriptions.d.ts.map +1 -1
  83. package/dist/tools/minimal-descriptions.js +65 -54
  84. package/dist/tools/minimal-descriptions.js.map +1 -1
  85. package/dist/tools/toolkits.d.ts.map +1 -1
  86. package/dist/tools/toolkits.js +67 -46
  87. package/dist/tools/toolkits.js.map +1 -1
  88. package/dist/types/code-generator.d.ts +49 -2
  89. package/dist/types/code-generator.d.ts.map +1 -1
  90. package/dist/types/code-generator.js +1456 -39
  91. package/dist/types/code-generator.js.map +1 -1
  92. package/dist/types/schemas.d.ts +1381 -404
  93. package/dist/types/schemas.d.ts.map +1 -1
  94. package/dist/types/schemas.js +426 -20
  95. package/dist/types/schemas.js.map +1 -1
  96. package/package.json +2 -2
@@ -0,0 +1,255 @@
1
+ /**
2
+ * TypeScript interfaces for the PinePaper ontology system.
3
+ *
4
+ * Defines structural types for vocabulary entries, graph nodes/edges,
5
+ * fingerprints, semantic metadata, validation results, and quality scores.
6
+ *
7
+ * @module ontology/types
8
+ */
9
+ export interface VocabularyType {
10
+ description: string;
11
+ parentType?: string;
12
+ anchor?: string | null;
13
+ abstract?: boolean;
14
+ mcpTool?: string;
15
+ geometricSupertype?: string;
16
+ defaultCurveType?: string;
17
+ bpmnEquivalent?: string;
18
+ i18nKey?: string;
19
+ }
20
+ export interface VocabularyEdge {
21
+ description?: string;
22
+ parentType?: string;
23
+ category?: string;
24
+ abstract?: boolean;
25
+ behaviorType?: 'constraint' | 'trigger' | 'procedural' | null;
26
+ directionality?: string;
27
+ cardinality?: 'group';
28
+ mcpToolRef?: string;
29
+ mathFunctions?: string[];
30
+ bpmnEquivalent?: string;
31
+ i18nKey?: string;
32
+ }
33
+ export interface VocabularyGenerator {
34
+ description?: string;
35
+ parentType?: string;
36
+ category?: string;
37
+ abstract?: boolean;
38
+ mathFunctions?: string[];
39
+ i18nKey?: string;
40
+ }
41
+ export interface VocabularyPattern {
42
+ description: string;
43
+ requiredEdges?: string[];
44
+ nodeTypes?: string[];
45
+ mathFunctions?: string[];
46
+ i18nKey?: string;
47
+ }
48
+ export interface VocabularyProperty {
49
+ valueType: string;
50
+ unit?: string | null;
51
+ appliesTo: string[];
52
+ animatable?: boolean;
53
+ range?: [number, number];
54
+ values?: string[];
55
+ description?: string;
56
+ i18nKey?: string;
57
+ }
58
+ export interface VocabularyMathFunction {
59
+ category: string;
60
+ formula?: string;
61
+ i18nKey?: string;
62
+ }
63
+ export interface VocabularyValueType {
64
+ anchor?: string | null;
65
+ description: string;
66
+ fields?: string[];
67
+ i18nKey?: string;
68
+ }
69
+ export interface PinePaperVocabulary {
70
+ types: Record<string, VocabularyType>;
71
+ edges: Record<string, VocabularyEdge>;
72
+ generators: Record<string, VocabularyGenerator>;
73
+ patterns: Record<string, VocabularyPattern>;
74
+ properties: Record<string, VocabularyProperty>;
75
+ valueTypes: Record<string, VocabularyValueType>;
76
+ mathFunctions: Record<string, VocabularyMathFunction>;
77
+ }
78
+ export interface PinePaperSemanticVocabulary {
79
+ moods: string[];
80
+ visualStyles: string[];
81
+ colorSchemes: string[];
82
+ audiences: string[];
83
+ intents: string[];
84
+ animationComplexities: string[];
85
+ compositionStyles: string[];
86
+ contentTypes: string[];
87
+ designIntents: string[];
88
+ }
89
+ export interface GraphNode {
90
+ id: string | null;
91
+ type: string;
92
+ label: string;
93
+ properties: NodeProperties;
94
+ }
95
+ export interface NodeProperties {
96
+ position: [number, number] | null;
97
+ hasKeyframes: boolean;
98
+ animationType: string | null;
99
+ keyframeCount: number;
100
+ easings: string[];
101
+ trimPath: boolean;
102
+ blendMode: string | null;
103
+ masked: boolean;
104
+ maskType: string | null;
105
+ hasColorAnimation?: boolean;
106
+ closed?: boolean;
107
+ curveType?: string;
108
+ segmentCount?: number;
109
+ }
110
+ export interface GraphEdge {
111
+ source: string | null;
112
+ target: string | null;
113
+ type: string;
114
+ params: Record<string, unknown>;
115
+ }
116
+ export interface GeneratorInfo {
117
+ name: string;
118
+ type: string;
119
+ mathFunctions: string[];
120
+ }
121
+ export interface SemanticInfo {
122
+ animationComplexity?: string;
123
+ contentType?: string;
124
+ platforms?: string[];
125
+ hasLetterCollage?: boolean;
126
+ hasRigging?: boolean;
127
+ hasMasking?: boolean;
128
+ mood?: string[];
129
+ audience?: string[];
130
+ intent?: string;
131
+ visualStyle?: string[];
132
+ colorScheme?: string;
133
+ compositionStyle?: string;
134
+ }
135
+ export interface Fingerprint {
136
+ nodeTypeCounts: Record<string, number>;
137
+ edgeTypeCounts: Record<string, number>;
138
+ mathFunctions: string[];
139
+ patterns: string[];
140
+ totalNodes: number;
141
+ totalEdges: number;
142
+ hasGenerator: boolean;
143
+ generatorType: string | null;
144
+ semantics: SemanticInfo | null;
145
+ templateId?: string;
146
+ }
147
+ export interface TemplateGraph {
148
+ templateId: string;
149
+ templateName: string;
150
+ category: string;
151
+ dimensions: {
152
+ width: number;
153
+ height: number;
154
+ };
155
+ duration: number;
156
+ nodes: GraphNode[];
157
+ edges: GraphEdge[];
158
+ mathFunctions: string[];
159
+ patterns: string[];
160
+ generator: GeneratorInfo | null;
161
+ fingerprint: Fingerprint | null;
162
+ semantics?: SemanticInfo;
163
+ }
164
+ export interface TemplateDefinition {
165
+ id?: string;
166
+ name?: string;
167
+ category?: string;
168
+ dimensions?: {
169
+ width: number;
170
+ height: number;
171
+ };
172
+ duration?: number;
173
+ description?: string;
174
+ tags?: string[];
175
+ semantics?: Record<string, unknown>;
176
+ data?: {
177
+ items?: TemplateItem[];
178
+ relations?: TemplateRelation[];
179
+ backgroundGenerator?: string;
180
+ };
181
+ onLoad?: unknown;
182
+ }
183
+ export interface TemplateItem {
184
+ id?: string;
185
+ name?: string;
186
+ type?: string;
187
+ content?: string;
188
+ label?: string;
189
+ position?: [number, number];
190
+ x?: number;
191
+ y?: number;
192
+ animationType?: string;
193
+ keyframes?: TemplateKeyframe[];
194
+ mask?: {
195
+ type?: string;
196
+ animated?: boolean;
197
+ animation?: unknown;
198
+ };
199
+ blendMode?: string;
200
+ trimStart?: number;
201
+ trimEnd?: number;
202
+ trimOffset?: number;
203
+ shapeType?: string;
204
+ lineStyle?: string;
205
+ sourceId?: string;
206
+ targetId?: string;
207
+ routing?: string;
208
+ headStyle?: string;
209
+ collageId?: string;
210
+ fontSize?: number;
211
+ closed?: boolean;
212
+ smooth?: boolean;
213
+ segments?: unknown[];
214
+ [key: string]: unknown;
215
+ }
216
+ export interface TemplateKeyframe {
217
+ time?: number;
218
+ easing?: string | number[];
219
+ properties?: Record<string, unknown>;
220
+ propertyEasings?: Record<string, string | number[]>;
221
+ }
222
+ export interface TemplateRelation {
223
+ type?: string;
224
+ source?: string;
225
+ from?: string;
226
+ target?: string;
227
+ to?: string;
228
+ params?: Record<string, unknown>;
229
+ }
230
+ export interface ValidationResult {
231
+ valid: boolean;
232
+ errors: string[];
233
+ warnings: string[];
234
+ }
235
+ export interface QualityDimensions {
236
+ completeness: number;
237
+ animationDesign: number;
238
+ semanticRichness: number;
239
+ compositionUse: number;
240
+ structuralDepth: number;
241
+ }
242
+ export interface QualityScore {
243
+ score: number;
244
+ tier: 'excellent' | 'good' | 'fair' | 'basic';
245
+ dimensions: QualityDimensions;
246
+ }
247
+ export interface SimilarityResult {
248
+ templateId: string;
249
+ score: number;
250
+ }
251
+ export interface SimilarityContext {
252
+ similarTo: SimilarityResult[];
253
+ structuralFamily: string | null;
254
+ }
255
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ontology/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * TypeScript interfaces for the PinePaper ontology system.
3
+ *
4
+ * Defines structural types for vocabulary entries, graph nodes/edges,
5
+ * fingerprints, semantic metadata, validation results, and quality scores.
6
+ *
7
+ * @module ontology/types
8
+ */
9
+ export {};
10
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/ontology/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * KnowledgeGraphValidator — Schema validation and quality scoring for PinePaper templates
3
+ *
4
+ * Two responsibilities:
5
+ * 1. **Schema validation** — Ensures templates conform to PP_VOCABULARY + PP_SEMANTIC_VOCABULARY.
6
+ * 2. **Quality scoring** — Rates a template on its own merit using defined quality dimensions.
7
+ *
8
+ * Ported from FxTool/js/KnowledgeGraphValidator.js to typed TypeScript.
9
+ *
10
+ * @module ontology/validator
11
+ * @version 0.4.0
12
+ */
13
+ import { DesignGraph } from './design-graph.js';
14
+ import type { PinePaperVocabulary, PinePaperSemanticVocabulary, TemplateDefinition, TemplateGraph, ValidationResult, QualityScore, QualityDimensions, Fingerprint, SimilarityContext } from './types.js';
15
+ export declare const QUALITY_WEIGHTS: Record<keyof QualityDimensions, number>;
16
+ export declare class KnowledgeGraphValidator {
17
+ private vocab;
18
+ private semVocab;
19
+ constructor(vocabulary?: PinePaperVocabulary, semanticVocabulary?: PinePaperSemanticVocabulary);
20
+ /** Validate a template definition against the DesignGraph schema. */
21
+ validateTemplate(templateDef: TemplateDefinition | null | undefined): ValidationResult;
22
+ /** Score a template's quality across multiple dimensions. */
23
+ scoreQuality(templateDef: TemplateDefinition, graph: TemplateGraph): QualityScore;
24
+ /** Compute similarity context for a template. */
25
+ computeSimilarityContext(newFingerprint: Fingerprint, existingFingerprints: Fingerprint[], designGraph: DesignGraph, options?: {
26
+ topN?: number;
27
+ }): SimilarityContext;
28
+ private _scoreCompleteness;
29
+ private _scoreAnimationDesign;
30
+ private _scoreSemanticRichness;
31
+ private _scoreCompositionUse;
32
+ private _scoreStructuralDepth;
33
+ private _validateSemantics;
34
+ private _validateKeyframes;
35
+ }
36
+ //# sourceMappingURL=validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/ontology/validator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EACV,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,WAAW,EAEX,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAOpB,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,iBAAiB,EAAE,MAAM,CAMnE,CAAC;AAOF,qBAAa,uBAAuB;IAClC,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,QAAQ,CAA8B;gBAElC,UAAU,CAAC,EAAE,mBAAmB,EAAE,kBAAkB,CAAC,EAAE,2BAA2B;IAS9F,qEAAqE;IACrE,gBAAgB,CAAC,WAAW,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,GAAG,gBAAgB;IAsHtF,6DAA6D;IAC7D,YAAY,CAAC,WAAW,EAAE,kBAAkB,EAAE,KAAK,EAAE,aAAa,GAAG,YAAY;IAsBjF,iDAAiD;IACjD,wBAAwB,CACtB,cAAc,EAAE,WAAW,EAC3B,oBAAoB,EAAE,WAAW,EAAE,EACnC,WAAW,EAAE,WAAW,EACxB,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO,GAC9B,iBAAiB;IAgCpB,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,qBAAqB;IAuC7B,OAAO,CAAC,sBAAsB;IAkB9B,OAAO,CAAC,oBAAoB;IAkC5B,OAAO,CAAC,qBAAqB;IAkB7B,OAAO,CAAC,kBAAkB;IAiD1B,OAAO,CAAC,kBAAkB;CAoB3B"}