@nowline/mcp 0.6.0 → 0.8.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.
Files changed (64) hide show
  1. package/dist/branding.d.ts +20 -0
  2. package/dist/branding.d.ts.map +1 -0
  3. package/dist/branding.js +27 -0
  4. package/dist/branding.js.map +1 -0
  5. package/dist/capabilities.d.ts +9 -0
  6. package/dist/capabilities.d.ts.map +1 -0
  7. package/dist/capabilities.js +17 -0
  8. package/dist/capabilities.js.map +1 -0
  9. package/dist/diagnostics.d.ts +59 -0
  10. package/dist/diagnostics.d.ts.map +1 -0
  11. package/dist/diagnostics.js +117 -0
  12. package/dist/diagnostics.js.map +1 -0
  13. package/dist/generated/resources.d.ts +2 -0
  14. package/dist/generated/resources.d.ts.map +1 -1
  15. package/dist/generated/resources.js +6 -1
  16. package/dist/generated/resources.js.map +1 -1
  17. package/dist/generated/ui-bundle.d.ts +5 -0
  18. package/dist/generated/ui-bundle.d.ts.map +1 -0
  19. package/dist/generated/ui-bundle.js +11 -0
  20. package/dist/generated/ui-bundle.js.map +1 -0
  21. package/dist/index.js +63 -12
  22. package/dist/index.js.map +1 -1
  23. package/dist/prompts.d.ts +3 -0
  24. package/dist/prompts.d.ts.map +1 -0
  25. package/dist/prompts.js +143 -0
  26. package/dist/prompts.js.map +1 -0
  27. package/dist/reference-cheatsheet.d.ts +2 -0
  28. package/dist/reference-cheatsheet.d.ts.map +1 -0
  29. package/dist/reference-cheatsheet.js +47 -0
  30. package/dist/reference-cheatsheet.js.map +1 -0
  31. package/dist/schema-vocab.d.ts +6 -0
  32. package/dist/schema-vocab.d.ts.map +1 -0
  33. package/dist/schema-vocab.js +55 -0
  34. package/dist/schema-vocab.js.map +1 -0
  35. package/dist/schemas.d.ts +148 -0
  36. package/dist/schemas.d.ts.map +1 -0
  37. package/dist/schemas.js +88 -0
  38. package/dist/schemas.js.map +1 -0
  39. package/dist/server.d.ts +2 -0
  40. package/dist/server.d.ts.map +1 -1
  41. package/dist/server.js +531 -121
  42. package/dist/server.js.map +1 -1
  43. package/dist/ui/entry.d.ts +2 -0
  44. package/dist/ui/entry.d.ts.map +1 -0
  45. package/dist/ui/entry.js +187 -0
  46. package/dist/ui/entry.js.map +1 -0
  47. package/dist/ui/payload.d.ts +30 -0
  48. package/dist/ui/payload.d.ts.map +1 -0
  49. package/dist/ui/payload.js +49 -0
  50. package/dist/ui/payload.js.map +1 -0
  51. package/package.json +15 -6
  52. package/src/branding.ts +26 -0
  53. package/src/capabilities.ts +25 -0
  54. package/src/diagnostics.ts +185 -0
  55. package/src/generated/resources.ts +7 -1
  56. package/src/generated/ui-bundle.ts +12 -0
  57. package/src/index.ts +75 -13
  58. package/src/prompts.ts +172 -0
  59. package/src/reference-cheatsheet.ts +47 -0
  60. package/src/schema-vocab.ts +55 -0
  61. package/src/schemas.ts +106 -0
  62. package/src/server.ts +725 -139
  63. package/src/ui/entry.ts +214 -0
  64. package/src/ui/payload.ts +63 -0
@@ -0,0 +1,88 @@
1
+ // Shared Zod output schemas for @nowline/mcp tools.
2
+ // Each tool's outputSchema is defined here so server.ts stays readable.
3
+ import { z } from 'zod';
4
+ // ---- Shared building blocks ------------------------------------------------
5
+ export const DiagnosticSchema = z.object({
6
+ file: z.string(),
7
+ line: z.number(),
8
+ column: z.number(),
9
+ severity: z.enum(['error', 'warning', 'info']),
10
+ code: z.string(),
11
+ message: z.string(),
12
+ suggestion: z.string().optional(),
13
+ });
14
+ export const InsightSchema = z.object({
15
+ severity: z.enum(['info', 'warning']),
16
+ code: z.string(),
17
+ message: z.string(),
18
+ entityId: z.string().optional(),
19
+ });
20
+ // ---- Tool output schemas ---------------------------------------------------
21
+ export const ValidateOutputSchema = z.object({
22
+ ok: z.boolean(),
23
+ diagnostics: z.array(DiagnosticSchema),
24
+ insights: z.array(InsightSchema).optional(),
25
+ });
26
+ export const ReadOutputSchema = z.object({
27
+ path: z.string(),
28
+ source: z.string(),
29
+ });
30
+ export const CreateOutputSchema = z.object({
31
+ ok: z.boolean(),
32
+ path: z.string(),
33
+ diagnostics: z.array(DiagnosticSchema).optional(),
34
+ });
35
+ export const UpdateOutputSchema = z.object({
36
+ ok: z.boolean(),
37
+ path: z.string(),
38
+ diagnostics: z.array(DiagnosticSchema).optional(),
39
+ });
40
+ export const DeleteOutputSchema = z.object({
41
+ path: z.string(),
42
+ });
43
+ export const ListOutputSchema = z.object({
44
+ paths: z.array(z.string()),
45
+ });
46
+ export const RenderOutputSchema = z.object({
47
+ format: z.string(),
48
+ /** Set when the output was written to disk. */
49
+ path: z.string().optional(),
50
+ bytes: z.number().optional(),
51
+ shareUrl: z.string().optional(),
52
+ insights: z.array(InsightSchema).optional(),
53
+ });
54
+ export const ExportOutputSchema = z.object({
55
+ format: z.string(),
56
+ path: z.string().optional(),
57
+ bytes: z.number().optional(),
58
+ shareUrl: z.string().optional(),
59
+ });
60
+ export const ConvertOutputSchema = z.object({
61
+ to: z.enum(['json', 'nowline']),
62
+ result: z.string(),
63
+ });
64
+ export const CapabilitiesOutputSchema = z.object({
65
+ themes: z.array(z.string()),
66
+ icons: z.array(z.string()),
67
+ locales: z.array(z.string()),
68
+ formats: z.array(z.string()),
69
+ templates: z.array(z.string()),
70
+ });
71
+ export const ListItemsOutputSchema = z.object({
72
+ items: z.array(z.string()),
73
+ });
74
+ export const ReferenceOutputSchema = z.object({
75
+ format: z.enum(['condensed', 'full']),
76
+ text: z.string(),
77
+ });
78
+ export const ExamplesOutputSchema = z.object({
79
+ names: z.array(z.string()).optional(),
80
+ name: z.string().optional(),
81
+ source: z.string().optional(),
82
+ });
83
+ export const SchemaOutputSchema = z.object({
84
+ directiveKeys: z.array(z.string()),
85
+ entityTypes: z.array(z.string()),
86
+ itemPropertyKeys: z.array(z.string()),
87
+ });
88
+ //# sourceMappingURL=schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"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"}
package/dist/server.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ /** Versioned URI doubles as a cache key — bump suffix on bundle changes. */
3
+ export declare const PREVIEW_UI_URI = "ui://nowline/preview-v1";
2
4
  export interface McpServerOptions {
3
5
  /** Working directory — all file paths are resolved relative to this root. Defaults to process.cwd(). */
4
6
  allowedRoot?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA6IpE,MAAM,WAAW,gBAAgB;IAC7B,wGAAwG;IACxG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,eAAe,CAAC,IAAI,GAAE,gBAAqB,GAAG,SAAS,CAqZtE"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA6DpE,4EAA4E;AAC5E,eAAO,MAAM,cAAc,4BAA4B,CAAC;AAoHxD,MAAM,WAAW,gBAAgB;IAC7B,wGAAwG;IACxG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,eAAe,CAAC,IAAI,GAAE,gBAAqB,GAAG,SAAS,CAo4BtE"}