@automatelab/ai-seo-mcp 0.6.1 → 0.7.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 (56) hide show
  1. package/dist/index.js +20 -1
  2. package/dist/index.js.map +1 -1
  3. package/dist/lib/agentic.d.ts +1 -1
  4. package/dist/lib/agentic.d.ts.map +1 -1
  5. package/dist/lib/agentic.js +8 -5
  6. package/dist/lib/agentic.js.map +1 -1
  7. package/dist/lib/deprecated-schema-types.json +10 -0
  8. package/dist/lib/fetch.d.ts.map +1 -1
  9. package/dist/lib/fetch.js +18 -0
  10. package/dist/lib/fetch.js.map +1 -1
  11. package/dist/lib/schema-types.json +38 -1
  12. package/dist/lib/schema.d.ts +2 -0
  13. package/dist/lib/schema.d.ts.map +1 -1
  14. package/dist/lib/schema.js +16 -4
  15. package/dist/lib/schema.js.map +1 -1
  16. package/dist/lib/score-citability.d.ts +9 -0
  17. package/dist/lib/score-citability.d.ts.map +1 -0
  18. package/dist/lib/score-citability.js +94 -0
  19. package/dist/lib/score-citability.js.map +1 -0
  20. package/dist/lib/score-content.d.ts +8 -0
  21. package/dist/lib/score-content.d.ts.map +1 -0
  22. package/dist/lib/score-content.js +52 -0
  23. package/dist/lib/score-content.js.map +1 -0
  24. package/dist/lib/score-eeat.d.ts +16 -0
  25. package/dist/lib/score-eeat.d.ts.map +1 -0
  26. package/dist/lib/score-eeat.js +149 -0
  27. package/dist/lib/score-eeat.js.map +1 -0
  28. package/dist/lib/score-evidence.d.ts +10 -0
  29. package/dist/lib/score-evidence.d.ts.map +1 -0
  30. package/dist/lib/score-evidence.js +84 -0
  31. package/dist/lib/score-evidence.js.map +1 -0
  32. package/dist/lib/score.d.ts +48 -7
  33. package/dist/lib/score.d.ts.map +1 -1
  34. package/dist/lib/score.js +46 -10
  35. package/dist/lib/score.js.map +1 -1
  36. package/dist/lib/ssrf.d.ts +6 -0
  37. package/dist/lib/ssrf.d.ts.map +1 -0
  38. package/dist/lib/ssrf.js +71 -0
  39. package/dist/lib/ssrf.js.map +1 -0
  40. package/dist/output-schemas.d.ts +211 -30
  41. package/dist/output-schemas.d.ts.map +1 -1
  42. package/dist/output-schemas.js +30 -1
  43. package/dist/output-schemas.js.map +1 -1
  44. package/dist/tools/audit-page.d.ts +6 -10
  45. package/dist/tools/audit-page.d.ts.map +1 -1
  46. package/dist/tools/audit-page.js +59 -4
  47. package/dist/tools/audit-page.js.map +1 -1
  48. package/dist/tools/generate-pricing-md.d.ts +24 -0
  49. package/dist/tools/generate-pricing-md.d.ts.map +1 -0
  50. package/dist/tools/generate-pricing-md.js +167 -0
  51. package/dist/tools/generate-pricing-md.js.map +1 -0
  52. package/dist/tools/validate-llms-txt.d.ts +4 -4
  53. package/dist/types.d.ts +9 -1
  54. package/dist/types.d.ts.map +1 -1
  55. package/package.json +1 -1
  56. package/src/lib/schema-types.json +38 -1
@@ -1,25 +1,31 @@
1
1
  import { z } from "zod";
2
2
  export declare const findingSchema: z.ZodObject<{
3
3
  severity: z.ZodEnum<["critical", "warning", "info"]>;
4
- category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt"]>;
4
+ category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt", "citation", "evidence", "trust", "entity", "content"]>;
5
5
  where: z.ZodString;
6
6
  message: z.ZodString;
7
7
  fix: z.ZodString;
8
8
  estimated_impact: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
9
+ failure_signal: z.ZodOptional<z.ZodString>;
10
+ leading_indicator: z.ZodOptional<z.ZodString>;
9
11
  }, "strip", z.ZodTypeAny, {
10
12
  message: string;
11
13
  where: string;
12
14
  severity: "critical" | "warning" | "info";
13
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
15
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
14
16
  fix: string;
15
17
  estimated_impact?: "high" | "medium" | "low" | undefined;
18
+ failure_signal?: string | undefined;
19
+ leading_indicator?: string | undefined;
16
20
  }, {
17
21
  message: string;
18
22
  where: string;
19
23
  severity: "critical" | "warning" | "info";
20
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
24
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
21
25
  fix: string;
22
26
  estimated_impact?: "high" | "medium" | "low" | undefined;
27
+ failure_signal?: string | undefined;
28
+ leading_indicator?: string | undefined;
23
29
  }>;
24
30
  export declare const gradeSchema: z.ZodEnum<["A", "B", "C", "D", "F"]>;
25
31
  export declare const auditPageOutputShape: {
@@ -29,25 +35,31 @@ export declare const auditPageOutputShape: {
29
35
  readonly grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
30
36
  readonly findings: z.ZodArray<z.ZodObject<{
31
37
  severity: z.ZodEnum<["critical", "warning", "info"]>;
32
- category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt"]>;
38
+ category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt", "citation", "evidence", "trust", "entity", "content"]>;
33
39
  where: z.ZodString;
34
40
  message: z.ZodString;
35
41
  fix: z.ZodString;
36
42
  estimated_impact: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
43
+ failure_signal: z.ZodOptional<z.ZodString>;
44
+ leading_indicator: z.ZodOptional<z.ZodString>;
37
45
  }, "strip", z.ZodTypeAny, {
38
46
  message: string;
39
47
  where: string;
40
48
  severity: "critical" | "warning" | "info";
41
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
49
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
42
50
  fix: string;
43
51
  estimated_impact?: "high" | "medium" | "low" | undefined;
52
+ failure_signal?: string | undefined;
53
+ leading_indicator?: string | undefined;
44
54
  }, {
45
55
  message: string;
46
56
  where: string;
47
57
  severity: "critical" | "warning" | "info";
48
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
58
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
49
59
  fix: string;
50
60
  estimated_impact?: "high" | "medium" | "low" | undefined;
61
+ failure_signal?: string | undefined;
62
+ leading_indicator?: string | undefined;
51
63
  }>, "many">;
52
64
  readonly citation_verdict: z.ZodObject<{
53
65
  will_ai_cite: z.ZodEnum<["unlikely", "marginal", "likely"]>;
@@ -96,6 +108,9 @@ export declare const auditPageOutputShape: {
96
108
  authority: z.ZodNumber;
97
109
  entity_density: z.ZodNumber;
98
110
  sitemap: z.ZodNumber;
111
+ citability: z.ZodNumber;
112
+ evidence: z.ZodNumber;
113
+ trust: z.ZodNumber;
99
114
  }, "strip", z.ZodTypeAny, {
100
115
  schema: number;
101
116
  robots: number;
@@ -104,7 +119,10 @@ export declare const auditPageOutputShape: {
104
119
  structure: number;
105
120
  authority: number;
106
121
  sitemap: number;
122
+ evidence: number;
123
+ trust: number;
107
124
  entity_density: number;
125
+ citability: number;
108
126
  }, {
109
127
  schema: number;
110
128
  robots: number;
@@ -113,8 +131,88 @@ export declare const auditPageOutputShape: {
113
131
  structure: number;
114
132
  authority: number;
115
133
  sitemap: number;
134
+ evidence: number;
135
+ trust: number;
116
136
  entity_density: number;
137
+ citability: number;
117
138
  }>;
139
+ readonly platform_readiness: z.ZodObject<{
140
+ chatgpt: z.ZodObject<{
141
+ score: z.ZodNumber;
142
+ label: z.ZodEnum<["ready", "partial", "weak"]>;
143
+ }, "strip", z.ZodTypeAny, {
144
+ score: number;
145
+ label: "ready" | "partial" | "weak";
146
+ }, {
147
+ score: number;
148
+ label: "ready" | "partial" | "weak";
149
+ }>;
150
+ perplexity: z.ZodObject<{
151
+ score: z.ZodNumber;
152
+ label: z.ZodEnum<["ready", "partial", "weak"]>;
153
+ }, "strip", z.ZodTypeAny, {
154
+ score: number;
155
+ label: "ready" | "partial" | "weak";
156
+ }, {
157
+ score: number;
158
+ label: "ready" | "partial" | "weak";
159
+ }>;
160
+ google_ai_overview: z.ZodObject<{
161
+ score: z.ZodNumber;
162
+ label: z.ZodEnum<["ready", "partial", "weak"]>;
163
+ }, "strip", z.ZodTypeAny, {
164
+ score: number;
165
+ label: "ready" | "partial" | "weak";
166
+ }, {
167
+ score: number;
168
+ label: "ready" | "partial" | "weak";
169
+ }>;
170
+ gemini: z.ZodObject<{
171
+ score: z.ZodNumber;
172
+ label: z.ZodEnum<["ready", "partial", "weak"]>;
173
+ }, "strip", z.ZodTypeAny, {
174
+ score: number;
175
+ label: "ready" | "partial" | "weak";
176
+ }, {
177
+ score: number;
178
+ label: "ready" | "partial" | "weak";
179
+ }>;
180
+ }, "strip", z.ZodTypeAny, {
181
+ chatgpt: {
182
+ score: number;
183
+ label: "ready" | "partial" | "weak";
184
+ };
185
+ perplexity: {
186
+ score: number;
187
+ label: "ready" | "partial" | "weak";
188
+ };
189
+ google_ai_overview: {
190
+ score: number;
191
+ label: "ready" | "partial" | "weak";
192
+ };
193
+ gemini: {
194
+ score: number;
195
+ label: "ready" | "partial" | "weak";
196
+ };
197
+ }, {
198
+ chatgpt: {
199
+ score: number;
200
+ label: "ready" | "partial" | "weak";
201
+ };
202
+ perplexity: {
203
+ score: number;
204
+ label: "ready" | "partial" | "weak";
205
+ };
206
+ google_ai_overview: {
207
+ score: number;
208
+ label: "ready" | "partial" | "weak";
209
+ };
210
+ gemini: {
211
+ score: number;
212
+ label: "ready" | "partial" | "weak";
213
+ };
214
+ }>;
215
+ readonly score_caps: z.ZodArray<z.ZodString, "many">;
118
216
  readonly content_quality: z.ZodEnum<["static_html", "ssr_likely", "spa_empty"]>;
119
217
  readonly raw_html: z.ZodOptional<z.ZodString>;
120
218
  readonly report_html: z.ZodOptional<z.ZodString>;
@@ -164,25 +262,31 @@ export declare const checkRobotsOutputShape: {
164
262
  }>>;
165
263
  readonly findings: z.ZodArray<z.ZodObject<{
166
264
  severity: z.ZodEnum<["critical", "warning", "info"]>;
167
- category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt"]>;
265
+ category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt", "citation", "evidence", "trust", "entity", "content"]>;
168
266
  where: z.ZodString;
169
267
  message: z.ZodString;
170
268
  fix: z.ZodString;
171
269
  estimated_impact: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
270
+ failure_signal: z.ZodOptional<z.ZodString>;
271
+ leading_indicator: z.ZodOptional<z.ZodString>;
172
272
  }, "strip", z.ZodTypeAny, {
173
273
  message: string;
174
274
  where: string;
175
275
  severity: "critical" | "warning" | "info";
176
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
276
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
177
277
  fix: string;
178
278
  estimated_impact?: "high" | "medium" | "low" | undefined;
279
+ failure_signal?: string | undefined;
280
+ leading_indicator?: string | undefined;
179
281
  }, {
180
282
  message: string;
181
283
  where: string;
182
284
  severity: "critical" | "warning" | "info";
183
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
285
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
184
286
  fix: string;
185
287
  estimated_impact?: "high" | "medium" | "low" | undefined;
288
+ failure_signal?: string | undefined;
289
+ leading_indicator?: string | undefined;
186
290
  }>, "many">;
187
291
  readonly recommended_posture: z.ZodEnum<["block_training_allow_search", "allow_all", "block_all", "custom"]>;
188
292
  };
@@ -195,25 +299,31 @@ export declare const checkSitemapOutputShape: {
195
299
  readonly urls_with_lastmod: z.ZodNumber;
196
300
  readonly findings: z.ZodArray<z.ZodObject<{
197
301
  severity: z.ZodEnum<["critical", "warning", "info"]>;
198
- category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt"]>;
302
+ category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt", "citation", "evidence", "trust", "entity", "content"]>;
199
303
  where: z.ZodString;
200
304
  message: z.ZodString;
201
305
  fix: z.ZodString;
202
306
  estimated_impact: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
307
+ failure_signal: z.ZodOptional<z.ZodString>;
308
+ leading_indicator: z.ZodOptional<z.ZodString>;
203
309
  }, "strip", z.ZodTypeAny, {
204
310
  message: string;
205
311
  where: string;
206
312
  severity: "critical" | "warning" | "info";
207
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
313
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
208
314
  fix: string;
209
315
  estimated_impact?: "high" | "medium" | "low" | undefined;
316
+ failure_signal?: string | undefined;
317
+ leading_indicator?: string | undefined;
210
318
  }, {
211
319
  message: string;
212
320
  where: string;
213
321
  severity: "critical" | "warning" | "info";
214
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
322
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
215
323
  fix: string;
216
324
  estimated_impact?: "high" | "medium" | "low" | undefined;
325
+ failure_signal?: string | undefined;
326
+ leading_indicator?: string | undefined;
217
327
  }>, "many">;
218
328
  };
219
329
  export declare const checkTechnicalOutputShape: {
@@ -227,25 +337,31 @@ export declare const checkTechnicalOutputShape: {
227
337
  readonly h1: z.ZodNullable<z.ZodString>;
228
338
  readonly findings: z.ZodArray<z.ZodObject<{
229
339
  severity: z.ZodEnum<["critical", "warning", "info"]>;
230
- category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt"]>;
340
+ category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt", "citation", "evidence", "trust", "entity", "content"]>;
231
341
  where: z.ZodString;
232
342
  message: z.ZodString;
233
343
  fix: z.ZodString;
234
344
  estimated_impact: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
345
+ failure_signal: z.ZodOptional<z.ZodString>;
346
+ leading_indicator: z.ZodOptional<z.ZodString>;
235
347
  }, "strip", z.ZodTypeAny, {
236
348
  message: string;
237
349
  where: string;
238
350
  severity: "critical" | "warning" | "info";
239
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
351
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
240
352
  fix: string;
241
353
  estimated_impact?: "high" | "medium" | "low" | undefined;
354
+ failure_signal?: string | undefined;
355
+ leading_indicator?: string | undefined;
242
356
  }, {
243
357
  message: string;
244
358
  where: string;
245
359
  severity: "critical" | "warning" | "info";
246
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
360
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
247
361
  fix: string;
248
362
  estimated_impact?: "high" | "medium" | "low" | undefined;
363
+ failure_signal?: string | undefined;
364
+ leading_indicator?: string | undefined;
249
365
  }>, "many">;
250
366
  };
251
367
  export declare const auditSchemaOutputShape: {
@@ -256,25 +372,31 @@ export declare const auditSchemaOutputShape: {
256
372
  readonly ai_citation_readiness_score: z.ZodNumber;
257
373
  readonly findings: z.ZodArray<z.ZodObject<{
258
374
  severity: z.ZodEnum<["critical", "warning", "info"]>;
259
- category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt"]>;
375
+ category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt", "citation", "evidence", "trust", "entity", "content"]>;
260
376
  where: z.ZodString;
261
377
  message: z.ZodString;
262
378
  fix: z.ZodString;
263
379
  estimated_impact: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
380
+ failure_signal: z.ZodOptional<z.ZodString>;
381
+ leading_indicator: z.ZodOptional<z.ZodString>;
264
382
  }, "strip", z.ZodTypeAny, {
265
383
  message: string;
266
384
  where: string;
267
385
  severity: "critical" | "warning" | "info";
268
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
386
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
269
387
  fix: string;
270
388
  estimated_impact?: "high" | "medium" | "low" | undefined;
389
+ failure_signal?: string | undefined;
390
+ leading_indicator?: string | undefined;
271
391
  }, {
272
392
  message: string;
273
393
  where: string;
274
394
  severity: "critical" | "warning" | "info";
275
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
395
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
276
396
  fix: string;
277
397
  estimated_impact?: "high" | "medium" | "low" | undefined;
398
+ failure_signal?: string | undefined;
399
+ leading_indicator?: string | undefined;
278
400
  }>, "many">;
279
401
  };
280
402
  export declare const auditCanonicalOutputShape: {
@@ -286,25 +408,31 @@ export declare const auditCanonicalOutputShape: {
286
408
  readonly cross_domain: z.ZodBoolean;
287
409
  readonly findings: z.ZodArray<z.ZodObject<{
288
410
  severity: z.ZodEnum<["critical", "warning", "info"]>;
289
- category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt"]>;
411
+ category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt", "citation", "evidence", "trust", "entity", "content"]>;
290
412
  where: z.ZodString;
291
413
  message: z.ZodString;
292
414
  fix: z.ZodString;
293
415
  estimated_impact: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
416
+ failure_signal: z.ZodOptional<z.ZodString>;
417
+ leading_indicator: z.ZodOptional<z.ZodString>;
294
418
  }, "strip", z.ZodTypeAny, {
295
419
  message: string;
296
420
  where: string;
297
421
  severity: "critical" | "warning" | "info";
298
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
422
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
299
423
  fix: string;
300
424
  estimated_impact?: "high" | "medium" | "low" | undefined;
425
+ failure_signal?: string | undefined;
426
+ leading_indicator?: string | undefined;
301
427
  }, {
302
428
  message: string;
303
429
  where: string;
304
430
  severity: "critical" | "warning" | "info";
305
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
431
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
306
432
  fix: string;
307
433
  estimated_impact?: "high" | "medium" | "low" | undefined;
434
+ failure_signal?: string | undefined;
435
+ leading_indicator?: string | undefined;
308
436
  }>, "many">;
309
437
  };
310
438
  export declare const scoreAiOverviewOutputShape: {
@@ -491,25 +619,31 @@ export declare const scoreAgenticBrowsingOutputShape: {
491
619
  }>;
492
620
  readonly findings: z.ZodArray<z.ZodObject<{
493
621
  severity: z.ZodEnum<["critical", "warning", "info"]>;
494
- category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt"]>;
622
+ category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt", "citation", "evidence", "trust", "entity", "content"]>;
495
623
  where: z.ZodString;
496
624
  message: z.ZodString;
497
625
  fix: z.ZodString;
498
626
  estimated_impact: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
627
+ failure_signal: z.ZodOptional<z.ZodString>;
628
+ leading_indicator: z.ZodOptional<z.ZodString>;
499
629
  }, "strip", z.ZodTypeAny, {
500
630
  message: string;
501
631
  where: string;
502
632
  severity: "critical" | "warning" | "info";
503
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
633
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
504
634
  fix: string;
505
635
  estimated_impact?: "high" | "medium" | "low" | undefined;
636
+ failure_signal?: string | undefined;
637
+ leading_indicator?: string | undefined;
506
638
  }, {
507
639
  message: string;
508
640
  where: string;
509
641
  severity: "critical" | "warning" | "info";
510
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
642
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
511
643
  fix: string;
512
644
  estimated_impact?: "high" | "medium" | "low" | undefined;
645
+ failure_signal?: string | undefined;
646
+ leading_indicator?: string | undefined;
513
647
  }>, "many">;
514
648
  };
515
649
  export declare const generateLlmsTxtOutputShape: {
@@ -518,31 +652,72 @@ export declare const generateLlmsTxtOutputShape: {
518
652
  readonly llms_full_txt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
519
653
  readonly pages_indexed: z.ZodNumber;
520
654
  };
655
+ export declare const generatePricingMdOutputShape: {
656
+ readonly domain: z.ZodString;
657
+ readonly pricing_md: z.ZodString;
658
+ readonly source_url: z.ZodNullable<z.ZodString>;
659
+ readonly tiers_detected: z.ZodNumber;
660
+ readonly validation_issues: z.ZodArray<z.ZodObject<{
661
+ severity: z.ZodEnum<["critical", "warning", "info"]>;
662
+ category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt", "citation", "evidence", "trust", "entity", "content"]>;
663
+ where: z.ZodString;
664
+ message: z.ZodString;
665
+ fix: z.ZodString;
666
+ estimated_impact: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
667
+ failure_signal: z.ZodOptional<z.ZodString>;
668
+ leading_indicator: z.ZodOptional<z.ZodString>;
669
+ }, "strip", z.ZodTypeAny, {
670
+ message: string;
671
+ where: string;
672
+ severity: "critical" | "warning" | "info";
673
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
674
+ fix: string;
675
+ estimated_impact?: "high" | "medium" | "low" | undefined;
676
+ failure_signal?: string | undefined;
677
+ leading_indicator?: string | undefined;
678
+ }, {
679
+ message: string;
680
+ where: string;
681
+ severity: "critical" | "warning" | "info";
682
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
683
+ fix: string;
684
+ estimated_impact?: "high" | "medium" | "low" | undefined;
685
+ failure_signal?: string | undefined;
686
+ leading_indicator?: string | undefined;
687
+ }>, "many">;
688
+ readonly suggested_path: z.ZodLiteral<"/pricing.md">;
689
+ };
521
690
  export declare const validateLlmsTxtOutputShape: {
522
691
  readonly source: z.ZodEnum<["url", "content"]>;
523
692
  readonly url: z.ZodNullable<z.ZodString>;
524
693
  readonly valid: z.ZodBoolean;
525
694
  readonly findings: z.ZodArray<z.ZodObject<{
526
695
  severity: z.ZodEnum<["critical", "warning", "info"]>;
527
- category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt"]>;
696
+ category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt", "citation", "evidence", "trust", "entity", "content"]>;
528
697
  where: z.ZodString;
529
698
  message: z.ZodString;
530
699
  fix: z.ZodString;
531
700
  estimated_impact: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
701
+ failure_signal: z.ZodOptional<z.ZodString>;
702
+ leading_indicator: z.ZodOptional<z.ZodString>;
532
703
  }, "strip", z.ZodTypeAny, {
533
704
  message: string;
534
705
  where: string;
535
706
  severity: "critical" | "warning" | "info";
536
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
707
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
537
708
  fix: string;
538
709
  estimated_impact?: "high" | "medium" | "low" | undefined;
710
+ failure_signal?: string | undefined;
711
+ leading_indicator?: string | undefined;
539
712
  }, {
540
713
  message: string;
541
714
  where: string;
542
715
  severity: "critical" | "warning" | "info";
543
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
716
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
544
717
  fix: string;
545
718
  estimated_impact?: "high" | "medium" | "low" | undefined;
719
+ failure_signal?: string | undefined;
720
+ leading_indicator?: string | undefined;
546
721
  }>, "many">;
547
722
  };
548
723
  export declare const rewriteOutputShape: {
@@ -627,25 +802,31 @@ export declare const auditSiteOutputShape: {
627
802
  readonly overall_grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
628
803
  readonly top_5_fixes: z.ZodArray<z.ZodObject<{
629
804
  severity: z.ZodEnum<["critical", "warning", "info"]>;
630
- category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt"]>;
805
+ category: z.ZodEnum<["schema", "robots", "technical", "freshness", "structure", "authority", "presence", "sitemap", "llms_txt", "citation", "evidence", "trust", "entity", "content"]>;
631
806
  where: z.ZodString;
632
807
  message: z.ZodString;
633
808
  fix: z.ZodString;
634
809
  estimated_impact: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
810
+ failure_signal: z.ZodOptional<z.ZodString>;
811
+ leading_indicator: z.ZodOptional<z.ZodString>;
635
812
  }, "strip", z.ZodTypeAny, {
636
813
  message: string;
637
814
  where: string;
638
815
  severity: "critical" | "warning" | "info";
639
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
816
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
640
817
  fix: string;
641
818
  estimated_impact?: "high" | "medium" | "low" | undefined;
819
+ failure_signal?: string | undefined;
820
+ leading_indicator?: string | undefined;
642
821
  }, {
643
822
  message: string;
644
823
  where: string;
645
824
  severity: "critical" | "warning" | "info";
646
- category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt";
825
+ category: "schema" | "robots" | "technical" | "freshness" | "structure" | "authority" | "presence" | "sitemap" | "llms_txt" | "citation" | "evidence" | "trust" | "entity" | "content";
647
826
  fix: string;
648
827
  estimated_impact?: "high" | "medium" | "low" | undefined;
828
+ failure_signal?: string | undefined;
829
+ leading_indicator?: string | undefined;
649
830
  }>, "many">;
650
831
  readonly parts: z.ZodObject<{
651
832
  audit_page: z.ZodRecord<z.ZodString, z.ZodUnknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"output-schemas.d.ts","sourceRoot":"","sources":["../src/output-schemas.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;EAmBxB,CAAC;AAEH,eAAO,MAAM,WAAW,sCAA6F,CAAC;AAEtH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuCvB,CAAC;AAEX,eAAO,MAAM,mBAAmB;;;;;;;;;EAG9B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUzB,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ1B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAU5B,CAAC;AAEX,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOzB,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ5B,CAAC;AAEX,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAe7B,CAAC;AAEX,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4B3B,CAAC;AAOX,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAclC,CAAC;AAEX,eAAO,MAAM,0BAA0B;;;;;CAK7B,CAAC;AAEX,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;CAK7B,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;CAOrB,CAAC;AAEX,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;CAa7B,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBvB,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAevB,CAAC;AAEX,eAAO,MAAM,qBAAqB;;;;CAIxB,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;CAe1B,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0C1B,CAAC"}
1
+ {"version":3,"file":"output-schemas.d.ts","sourceRoot":"","sources":["../src/output-schemas.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0BxB,CAAC;AAEH,eAAO,MAAM,WAAW,sCAA6F,CAAC;AAEtH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDvB,CAAC;AAEX,eAAO,MAAM,mBAAmB;;;;;;;;;EAG9B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUzB,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ1B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAU5B,CAAC;AAEX,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOzB,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ5B,CAAC;AAEX,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAe7B,CAAC;AAEX,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4B3B,CAAC;AAOX,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAclC,CAAC;AAEX,eAAO,MAAM,0BAA0B;;;;;CAK7B,CAAC;AAEX,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAO/B,CAAC;AAEX,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK7B,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;CAOrB,CAAC;AAEX,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;CAa7B,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBvB,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAevB,CAAC;AAEX,eAAO,MAAM,qBAAqB;;;;CAIxB,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;CAe1B,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0C1B,CAAC"}
@@ -15,12 +15,19 @@ export const findingSchema = z.object({
15
15
  "presence",
16
16
  "sitemap",
17
17
  "llms_txt",
18
+ "citation",
19
+ "evidence",
20
+ "trust",
21
+ "entity",
22
+ "content",
18
23
  ])
19
24
  .describe("Finding category - which AI-SEO dimension it relates to."),
20
25
  where: z.string().describe("Location of the issue (CSS selector, JSON-LD path, robots.txt line, or 'page-level')."),
21
26
  message: z.string().describe("Human-readable description of the issue."),
22
27
  fix: z.string().describe("Concrete, copy-pasteable fix."),
23
28
  estimated_impact: z.enum(["high", "medium", "low"]).optional().describe("Estimated impact on AI citation probability when resolved."),
29
+ failure_signal: z.string().optional().describe("Falsifiability: the observable signal that would prove the fix did NOT work."),
30
+ leading_indicator: z.string().optional().describe("Falsifiability: the leading indicator to monitor to confirm the fix is landing."),
24
31
  });
25
32
  export const gradeSchema = z.enum(["A", "B", "C", "D", "F"]).describe("Letter grade derived from the numeric score.");
26
33
  export const auditPageOutputShape = {
@@ -53,8 +60,22 @@ export const auditPageOutputShape = {
53
60
  authority: z.number(),
54
61
  entity_density: z.number(),
55
62
  sitemap: z.number(),
63
+ citability: z.number().describe("Passage-level extractability: share of sections in the 134-167 word citable band."),
64
+ evidence: z.number().describe("Citations / statistics / quotations density (Princeton GEO weighting)."),
65
+ trust: z.number().describe("E-E-A-T trust signals: author, dates, contact/policy pages, HTTPS."),
56
66
  })
57
67
  .describe("Per-dimension 0-100 subscores. The composite score is a weighted blend of these."),
68
+ platform_readiness: z
69
+ .object({
70
+ chatgpt: z.object({ score: z.number(), label: z.enum(["ready", "partial", "weak"]) }),
71
+ perplexity: z.object({ score: z.number(), label: z.enum(["ready", "partial", "weak"]) }),
72
+ google_ai_overview: z.object({ score: z.number(), label: z.enum(["ready", "partial", "weak"]) }),
73
+ gemini: z.object({ score: z.number(), label: z.enum(["ready", "partial", "weak"]) }),
74
+ })
75
+ .describe("Per-engine readiness derived from the dimensions; engines reward different signals."),
76
+ score_caps: z
77
+ .array(z.string())
78
+ .describe("Hard blockers that capped the composite score (e.g. noindex, AI bots blocked). Empty when none fired."),
58
79
  content_quality: z
59
80
  .enum(["static_html", "ssr_likely", "spa_empty"])
60
81
  .describe("Classification of the fetched HTML's readiness. spa_empty means audit results are degraded."),
@@ -163,7 +184,7 @@ const agenticFactorSchema = z.object({
163
184
  export const scoreAgenticBrowsingOutputShape = {
164
185
  url: z.string().nullable().describe("The URL scored (null when scoring raw html)."),
165
186
  fetched_at: z.string().describe("UTC ISO-8601 timestamp."),
166
- score: z.number().min(0).max(100).describe("Weighted 0-100 Agentic Browsing score (each factor 25%)."),
187
+ score: z.number().min(0).max(100).describe("Weighted 0-100 Agentic Browsing score (accessibility 40%, layout 35%, webmcp 15%, llms.txt 10%)."),
167
188
  grade: gradeSchema,
168
189
  factors: z
169
190
  .object({
@@ -181,6 +202,14 @@ export const generateLlmsTxtOutputShape = {
181
202
  llms_full_txt: z.string().nullable().optional().describe("The generated llms-full.txt content. Null unless include_full=true."),
182
203
  pages_indexed: z.number().describe("Number of pages successfully sampled from the sitemap."),
183
204
  };
205
+ export const generatePricingMdOutputShape = {
206
+ domain: z.string(),
207
+ pricing_md: z.string().describe("The generated pricing.md content. Caller hosts it at /pricing.md."),
208
+ source_url: z.string().nullable().describe("The pricing page the content was derived from (null when none was found)."),
209
+ tiers_detected: z.number().describe("Number of pricing tiers extracted."),
210
+ validation_issues: z.array(findingSchema).describe("Issues encountered while deriving the file."),
211
+ suggested_path: z.literal("/pricing.md"),
212
+ };
184
213
  export const validateLlmsTxtOutputShape = {
185
214
  source: z.enum(["url", "content"]),
186
215
  url: z.string().nullable(),