@automatelab/ai-seo-mcp 0.1.0 → 0.1.2
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/LICENSE +21 -21
- package/README.md +217 -217
- package/dist/index.js +204 -40
- package/dist/index.js.map +1 -1
- package/dist/tools/audit-canonical.d.ts.map +1 -1
- package/dist/tools/audit-canonical.js +9 -2
- package/dist/tools/audit-canonical.js.map +1 -1
- package/dist/tools/audit-page.d.ts.map +1 -1
- package/dist/tools/audit-page.js +14 -3
- package/dist/tools/audit-page.js.map +1 -1
- package/dist/tools/check-robots.d.ts.map +1 -1
- package/dist/tools/check-robots.js +4 -1
- package/dist/tools/check-robots.js.map +1 -1
- package/dist/tools/check-sitemap.d.ts.map +1 -1
- package/dist/tools/check-sitemap.js +12 -2
- package/dist/tools/check-sitemap.js.map +1 -1
- package/dist/tools/check-technical.d.ts.map +1 -1
- package/dist/tools/check-technical.js +9 -2
- package/dist/tools/check-technical.js.map +1 -1
- package/dist/tools/generate-llms-txt.d.ts.map +1 -1
- package/dist/tools/generate-llms-txt.js +25 -5
- package/dist/tools/generate-llms-txt.js.map +1 -1
- package/dist/tools/rewrite-for-aeo.js +28 -28
- package/dist/tools/rewrite-for-geo.js +28 -28
- package/dist/tools/score-ai-overview-eligibility.d.ts.map +1 -1
- package/dist/tools/score-ai-overview-eligibility.js +9 -2
- package/dist/tools/score-ai-overview-eligibility.js.map +1 -1
- package/package.json +61 -60
- package/src/lib/crawlers.json +6 -6
- package/src/lib/schema-types.json +56 -56
|
@@ -4,8 +4,15 @@ import { z } from "zod";
|
|
|
4
4
|
import { politeFetch, ToolFetchError } from "../lib/fetch.js";
|
|
5
5
|
import { parseHead, levenshtein } from "../lib/html.js";
|
|
6
6
|
export const checkTechnicalInputSchema = z.object({
|
|
7
|
-
url: z
|
|
8
|
-
|
|
7
|
+
url: z
|
|
8
|
+
.string()
|
|
9
|
+
.url()
|
|
10
|
+
.describe("Public URL to audit. The tool fetches the URL once and inspects HEAD-section signals: HTTPS, canonical, OpenGraph, Twitter Card, hreflang, noindex, title length and overlap with H1. Body content is not parsed. Read-only HTTP GET."),
|
|
11
|
+
respect_robots: z
|
|
12
|
+
.boolean()
|
|
13
|
+
.optional()
|
|
14
|
+
.default(true)
|
|
15
|
+
.describe("If true (default), respect robots.txt before fetching. Set false only for auditing your own site where you've intentionally blocked crawlers."),
|
|
9
16
|
});
|
|
10
17
|
export async function checkTechnical(input, hostDelays, robotsCache) {
|
|
11
18
|
const result = await politeFetch(input.url, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-technical.js","sourceRoot":"","sources":["../../src/tools/check-technical.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,8EAA8E;AAE9E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,cAAc,EAAqB,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGxD,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,GAAG,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"check-technical.js","sourceRoot":"","sources":["../../src/tools/check-technical.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-llms-txt.d.ts","sourceRoot":"","sources":["../../src/tools/generate-llms-txt.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAWjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"generate-llms-txt.d.ts","sourceRoot":"","sources":["../../src/tools/generate-llms-txt.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAWjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;EA0BrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,OAAO,EAAE,CAAC;IAC7B,cAAc,EAAE,WAAW,CAAC;CAC7B;AAaD,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,oBAAoB,EAC3B,UAAU,CAAC,EAAE,YAAY,EACzB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAChC,OAAO,CAAC,aAAa,CAAC,CA4IxB"}
|
|
@@ -7,11 +7,31 @@ import { XMLParser } from "fast-xml-parser";
|
|
|
7
7
|
import { checkSitemap } from "./check-sitemap.js";
|
|
8
8
|
import { groupPagesBySection, generateLlmsTxt as buildLlmsTxt, generateLlmsFullTxt, validateLlmsTxtContent, } from "../lib/llms-txt.js";
|
|
9
9
|
export const generateLlmsTxtInputSchema = z.object({
|
|
10
|
-
domain: z
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
domain: z
|
|
11
|
+
.string()
|
|
12
|
+
.min(3)
|
|
13
|
+
.describe("Hostname or origin to generate llms.txt for. Examples: `example.com`, `https://example.com`. The tool reads the domain's sitemap, fetches up to `max_pages` of them, and synthesizes a spec-compliant llms.txt grouped by section. Issues N+1 HTTP GETs: one for the sitemap, then one per sampled page. Read-only."),
|
|
14
|
+
max_pages: z
|
|
15
|
+
.number()
|
|
16
|
+
.int()
|
|
17
|
+
.min(1)
|
|
18
|
+
.max(100)
|
|
19
|
+
.optional()
|
|
20
|
+
.default(30)
|
|
21
|
+
.describe("How many pages to sample from the sitemap when building section groupings. Default 30. Each page is fetched (one HTTP GET per page) - keep this low for large sites or rate-limited hosts."),
|
|
22
|
+
include_full: z
|
|
23
|
+
.boolean()
|
|
24
|
+
.optional()
|
|
25
|
+
.default(false)
|
|
26
|
+
.describe("If true, also generate llms-full.txt (the expanded variant containing full page text, not just URLs and titles). Default false. The llms-full.txt output can be large; only enable when you actually plan to host both files."),
|
|
27
|
+
site_name: z
|
|
28
|
+
.string()
|
|
29
|
+
.optional()
|
|
30
|
+
.describe("Override the site name used in the generated llms.txt header. If omitted, inferred from the homepage's <title> tag."),
|
|
31
|
+
site_description: z
|
|
32
|
+
.string()
|
|
33
|
+
.optional()
|
|
34
|
+
.describe("Override the site description used in the generated llms.txt header. If omitted, inferred from the homepage's meta description."),
|
|
15
35
|
});
|
|
16
36
|
function normalizeDomain(domain) {
|
|
17
37
|
if (domain.startsWith("http://") || domain.startsWith("https://")) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-llms-txt.js","sourceRoot":"","sources":["../../src/tools/generate-llms-txt.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,0EAA0E;AAE1E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAqB,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,mBAAmB,EACnB,eAAe,IAAI,YAAY,EAC/B,mBAAmB,EACnB,sBAAsB,GAEvB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"generate-llms-txt.js","sourceRoot":"","sources":["../../src/tools/generate-llms-txt.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,20 +17,20 @@ export const rewriteForAeoInputSchema = z
|
|
|
17
17
|
.refine((d) => d.url !== undefined || d.text !== undefined, {
|
|
18
18
|
message: "One of url or text is required",
|
|
19
19
|
});
|
|
20
|
-
const AEO_SYSTEM_PROMPT = `You are an Answer Engine Optimization (AEO) specialist. Rewrite the provided content to maximize AI engine citation probability.
|
|
21
|
-
|
|
22
|
-
Rules:
|
|
23
|
-
1. Open with a direct 40-60 word answer to the target query (BLUF - Bottom Line Up Front).
|
|
24
|
-
2. Structure body content into FAQ format: H3 questions ending in "?" followed by 40-60 word answers.
|
|
25
|
-
3. Include at least one ordered list for procedural content.
|
|
26
|
-
4. Define key technical terms inline (e.g., "X is a type of Y that...").
|
|
27
|
-
5. Cite statistics with year and source where present.
|
|
28
|
-
6. End with a "Key Takeaways" or "Summary" section.
|
|
29
|
-
7. No em-dashes. No filler phrases ("In conclusion", "It is important to note").
|
|
30
|
-
8. Keep within the max_words limit.
|
|
31
|
-
9. For howto format: use numbered HowToStep structure.
|
|
32
|
-
10. For comparison format: include a comparison table.
|
|
33
|
-
|
|
20
|
+
const AEO_SYSTEM_PROMPT = `You are an Answer Engine Optimization (AEO) specialist. Rewrite the provided content to maximize AI engine citation probability.
|
|
21
|
+
|
|
22
|
+
Rules:
|
|
23
|
+
1. Open with a direct 40-60 word answer to the target query (BLUF - Bottom Line Up Front).
|
|
24
|
+
2. Structure body content into FAQ format: H3 questions ending in "?" followed by 40-60 word answers.
|
|
25
|
+
3. Include at least one ordered list for procedural content.
|
|
26
|
+
4. Define key technical terms inline (e.g., "X is a type of Y that...").
|
|
27
|
+
5. Cite statistics with year and source where present.
|
|
28
|
+
6. End with a "Key Takeaways" or "Summary" section.
|
|
29
|
+
7. No em-dashes. No filler phrases ("In conclusion", "It is important to note").
|
|
30
|
+
8. Keep within the max_words limit.
|
|
31
|
+
9. For howto format: use numbered HowToStep structure.
|
|
32
|
+
10. For comparison format: include a comparison table.
|
|
33
|
+
|
|
34
34
|
Also generate a JSON-LD schema block appropriate for the content type and format.`;
|
|
35
35
|
export async function rewriteForAeo(input, hostDelays, robotsCache, server) {
|
|
36
36
|
// Fetch URL if provided
|
|
@@ -47,18 +47,18 @@ export async function rewriteForAeo(input, hostDelays, robotsCache, server) {
|
|
|
47
47
|
// Compute before score
|
|
48
48
|
const beforeResult = await scoreCitationWorthiness({ text: originalText, target_query: input.target_query, respect_robots: false }, hostDelays, robotsCache);
|
|
49
49
|
const before_score = beforeResult.overall_score;
|
|
50
|
-
const userMessage = `Target query: "${input.target_query}"
|
|
51
|
-
Format: ${input.format}
|
|
52
|
-
Max words: ${input.max_words}
|
|
53
|
-
|
|
54
|
-
Original content:
|
|
55
|
-
---
|
|
56
|
-
${originalText.substring(0, 4000)}
|
|
57
|
-
---
|
|
58
|
-
|
|
59
|
-
Rewrite this content for AEO. Return your response as JSON with these fields:
|
|
60
|
-
- rewritten_text: the rewritten content (Markdown)
|
|
61
|
-
- schema_additions: JSON-LD string to add to the page <head>
|
|
50
|
+
const userMessage = `Target query: "${input.target_query}"
|
|
51
|
+
Format: ${input.format}
|
|
52
|
+
Max words: ${input.max_words}
|
|
53
|
+
|
|
54
|
+
Original content:
|
|
55
|
+
---
|
|
56
|
+
${originalText.substring(0, 4000)}
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
Rewrite this content for AEO. Return your response as JSON with these fields:
|
|
60
|
+
- rewritten_text: the rewritten content (Markdown)
|
|
61
|
+
- schema_additions: JSON-LD string to add to the page <head>
|
|
62
62
|
- changes_made: array of strings describing each change applied`;
|
|
63
63
|
// Attempt MCP sampling
|
|
64
64
|
if (server) {
|
|
@@ -102,8 +102,8 @@ Rewrite this content for AEO. Return your response as JSON with these fields:
|
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
104
|
// Prompt template fallback
|
|
105
|
-
const promptTemplate = `${AEO_SYSTEM_PROMPT}
|
|
106
|
-
|
|
105
|
+
const promptTemplate = `${AEO_SYSTEM_PROMPT}
|
|
106
|
+
|
|
107
107
|
${userMessage}`;
|
|
108
108
|
return {
|
|
109
109
|
rewritten_text: promptTemplate,
|
|
@@ -16,19 +16,19 @@ export const rewriteForGeoInputSchema = z
|
|
|
16
16
|
.refine((d) => d.url !== undefined || d.text !== undefined, {
|
|
17
17
|
message: "One of url or text is required",
|
|
18
18
|
});
|
|
19
|
-
const GEO_SYSTEM_PROMPT = `You are a Generative Engine Optimization (GEO) specialist focused on Google AI Overviews and multi-source synthesis engines.
|
|
20
|
-
|
|
21
|
-
Rules:
|
|
22
|
-
1. Define every key entity inline on first mention: "X (also known as Y) is a type of Z that...".
|
|
23
|
-
2. Include authoritative external citations with hyperlinks (Wikipedia, official docs, research papers).
|
|
24
|
-
3. Add a comparison table if requested or if the query implies comparison.
|
|
25
|
-
4. Use numbered feature lists for technical capabilities.
|
|
26
|
-
5. Structure for multi-source synthesis: each section should be independently citable without reading the full article.
|
|
27
|
-
6. Cite statistics with source, year, and context.
|
|
28
|
-
7. Add a "Related entities" section at the end listing key entities with sameAs links.
|
|
29
|
-
8. No em-dashes. No filler phrases.
|
|
30
|
-
9. Keep within the max_words limit.
|
|
31
|
-
|
|
19
|
+
const GEO_SYSTEM_PROMPT = `You are a Generative Engine Optimization (GEO) specialist focused on Google AI Overviews and multi-source synthesis engines.
|
|
20
|
+
|
|
21
|
+
Rules:
|
|
22
|
+
1. Define every key entity inline on first mention: "X (also known as Y) is a type of Z that...".
|
|
23
|
+
2. Include authoritative external citations with hyperlinks (Wikipedia, official docs, research papers).
|
|
24
|
+
3. Add a comparison table if requested or if the query implies comparison.
|
|
25
|
+
4. Use numbered feature lists for technical capabilities.
|
|
26
|
+
5. Structure for multi-source synthesis: each section should be independently citable without reading the full article.
|
|
27
|
+
6. Cite statistics with source, year, and context.
|
|
28
|
+
7. Add a "Related entities" section at the end listing key entities with sameAs links.
|
|
29
|
+
8. No em-dashes. No filler phrases.
|
|
30
|
+
9. Keep within the max_words limit.
|
|
31
|
+
|
|
32
32
|
Generate JSON-LD schema for all key entities mentioned (Organization, Person, Product, SoftwareApplication as appropriate) with sameAs links.`;
|
|
33
33
|
export async function rewriteForGeo(input, hostDelays, robotsCache, server) {
|
|
34
34
|
let originalText = input.text ?? "";
|
|
@@ -43,19 +43,19 @@ export async function rewriteForGeo(input, hostDelays, robotsCache, server) {
|
|
|
43
43
|
}
|
|
44
44
|
const beforeResult = await scoreCitationWorthiness({ text: originalText, target_query: input.target_query, respect_robots: false }, hostDelays, robotsCache);
|
|
45
45
|
const before_score = beforeResult.overall_score;
|
|
46
|
-
const userMessage = `Target query: "${input.target_query}"
|
|
47
|
-
Add comparison table: ${input.add_comparison_table}
|
|
48
|
-
Max words: ${input.max_words}
|
|
49
|
-
|
|
50
|
-
Original content:
|
|
51
|
-
---
|
|
52
|
-
${originalText.substring(0, 4000)}
|
|
53
|
-
---
|
|
54
|
-
|
|
55
|
-
Rewrite this content for GEO. Return JSON with:
|
|
56
|
-
- rewritten_text: Markdown content
|
|
57
|
-
- schema_additions: JSON-LD for key entities
|
|
58
|
-
- changes_made: array of changes applied
|
|
46
|
+
const userMessage = `Target query: "${input.target_query}"
|
|
47
|
+
Add comparison table: ${input.add_comparison_table}
|
|
48
|
+
Max words: ${input.max_words}
|
|
49
|
+
|
|
50
|
+
Original content:
|
|
51
|
+
---
|
|
52
|
+
${originalText.substring(0, 4000)}
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
Rewrite this content for GEO. Return JSON with:
|
|
56
|
+
- rewritten_text: Markdown content
|
|
57
|
+
- schema_additions: JSON-LD for key entities
|
|
58
|
+
- changes_made: array of changes applied
|
|
59
59
|
- entities_added: array of entity names you defined or linked`;
|
|
60
60
|
if (server) {
|
|
61
61
|
try {
|
|
@@ -97,8 +97,8 @@ Rewrite this content for GEO. Return JSON with:
|
|
|
97
97
|
// sampling unavailable
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
|
-
const promptTemplate = `${GEO_SYSTEM_PROMPT}
|
|
101
|
-
|
|
100
|
+
const promptTemplate = `${GEO_SYSTEM_PROMPT}
|
|
101
|
+
|
|
102
102
|
${userMessage}`;
|
|
103
103
|
return {
|
|
104
104
|
rewritten_text: promptTemplate,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"score-ai-overview-eligibility.d.ts","sourceRoot":"","sources":["../../src/tools/score-ai-overview-eligibility.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAIjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,eAAO,MAAM,qCAAqC;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"score-ai-overview-eligibility.d.ts","sourceRoot":"","sources":["../../src/tools/score-ai-overview-eligibility.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAIjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,eAAO,MAAM,qCAAqC;;;;;;;;;EAUhD,CAAC;AAEH,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,CAAC;AAEpG,MAAM,WAAW,2BAA2B;IAC1C,GAAG,EAAE,MAAM,CAAC;IACZ,yBAAyB,EAAE,MAAM,CAAC;IAClC,OAAO,EAAE;QACP,qBAAqB,EAAE,MAAM,CAAC;QAC9B,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,kBAAkB,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,gBAAgB,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,oBAAoB,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1E,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAED,wBAAsB,0BAA0B,CAC9C,KAAK,EAAE,+BAA+B,EACtC,UAAU,CAAC,EAAE,YAAY,EACzB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAChC,OAAO,CAAC,2BAA2B,CAAC,CAqLtC"}
|
|
@@ -6,8 +6,15 @@ import { parseHead, parseBody } from "../lib/html.js";
|
|
|
6
6
|
import { parseJsonLd, getAllSchemaTypes } from "../lib/schema.js";
|
|
7
7
|
import { freshnessScore } from "../lib/score.js";
|
|
8
8
|
export const scoreAiOverviewEligibilityInputSchema = z.object({
|
|
9
|
-
url: z
|
|
10
|
-
|
|
9
|
+
url: z
|
|
10
|
+
.string()
|
|
11
|
+
.url()
|
|
12
|
+
.describe("Public URL to score. The tool fetches the URL once and runs deterministic, rule-based scoring across six factors (semantic completeness, structured data, E-E-A-T signals, entity density, freshness, technical hygiene) using published 2025-2026 correlation studies. No LLM calls. Read-only HTTP GET."),
|
|
13
|
+
respect_robots: z
|
|
14
|
+
.boolean()
|
|
15
|
+
.optional()
|
|
16
|
+
.default(true)
|
|
17
|
+
.describe("If true (default), respect robots.txt before fetching. Set false only for auditing your own site where you've intentionally blocked crawlers."),
|
|
11
18
|
});
|
|
12
19
|
export async function scoreAiOverviewEligibility(input, hostDelays, robotsCache) {
|
|
13
20
|
const result = await politeFetch(input.url, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"score-ai-overview-eligibility.js","sourceRoot":"","sources":["../../src/tools/score-ai-overview-eligibility.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6FAA6F;AAE7F,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAqB,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjD,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5D,GAAG,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"score-ai-overview-eligibility.js","sourceRoot":"","sources":["../../src/tools/score-ai-overview-eligibility.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6FAA6F;AAE7F,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAqB,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjD,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5D,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,CAAC,2SAA2S,CAAC;IACxT,cAAc,EAAE,CAAC;SACd,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,+IAA+I,CAAC;CAC7J,CAAC,CAAC;AAoBH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,KAAsC,EACtC,UAAyB,EACzB,WAAiC;IAEjC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE;QAC1C,aAAa,EAAE,KAAK,CAAC,cAAc;QACnC,UAAU;QACV,WAAW;KACZ,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAc,EAAE,CAAC;IAE/B,iEAAiE;IACjE,MAAM,mBAAmB,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACvD,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzD,OAAO,KAAK,CAAC,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC;IACpD,CAAC,CAAC,CAAC;IACH,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,mBAAmB,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IAE7E,6CAA6C;IAC7C,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;IACjG,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IAE9D,0DAA0D;IAC1D,IAAI,SAAS,GAAG,EAAE,CAAC,CAAC,OAAO;IAC3B,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACxC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClD,CAAC,CAAC,CAAC;IACH,MAAM,wBAAwB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACvD,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC1E,OAAO,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,QAAQ;QACtC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,IAAI,CAC5B,CAAC;IACF,IAAI,MAAM;QAAE,SAAS,IAAI,EAAE,CAAC;IAC5B,IAAI,SAAS;QAAE,SAAS,IAAI,EAAE,CAAC;IAC/B,IAAI,SAAS;QAAE,SAAS,IAAI,EAAE,CAAC;IAC/B,IAAI,wBAAwB;QAAE,SAAS,IAAI,EAAE,CAAC;IAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAE9C,kEAAkE;IAClE,MAAM,oBAAoB,GAAG;QAC3B,eAAe,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,aAAa;QACtE,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa;KAC1D,CAAC;IACF,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QACjD,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC,EAAE,CAAC,CAAC,CAAC;IACN,MAAM,iBAAiB,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAC3D,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CACnD,CAAC,MAAM,CAAC;IACT,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,WAAW,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC;IAE5E,mDAAmD;IACnD,IAAI,YAAY,GAAkB,IAAI,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;QAC7B,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACjE,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;YAC3B,YAAY,GAAG,EAAE,CAAC;YAClB,MAAM;QACR,CAAC;IACH,CAAC;IACD,MAAM,iBAAiB,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IAEvD,6DAA6D;IAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,cAAc,IAAI,YAAY,CAAC;IAC9C,MAAM,kBAAkB,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;IAC7C,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAC1B,IAAI,MAAM;QAAE,iBAAiB,IAAI,EAAE,CAAC;IACpC,IAAI,kBAAkB;QAAE,iBAAiB,IAAI,EAAE,CAAC;IAChD,IAAI,cAAc;QAAE,iBAAiB,IAAI,EAAE,CAAC;IAC5C,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC;QAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC,yBAAyB;IAC5E,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IAErD,wBAAwB;IACxB,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,UAAU,IAAI,EAAE,CAAC;IACtC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,UAAU,IAAI,EAAE,CAAC;IACtC,IAAI,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC;QAAE,UAAU,IAAI,EAAE,CAAC;IACzD,IAAI,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC;QAAE,UAAU,IAAI,EAAE,CAAC;IACzD,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAErD,2BAA2B;IAC3B,yEAAyE;IACzE,oFAAoF;IACpF,MAAM,yBAAyB,GAAG,IAAI,CAAC,KAAK,CAC1C,qBAAqB,GAAG,IAAI;QAC5B,eAAe,GAAG,IAAI;QACtB,iBAAiB,GAAG,IAAI;QACxB,YAAY,GAAG,IAAI;QACnB,cAAc,GAAG,IAAI;QACrB,iBAAiB,GAAG,IAAI;QACxB,kBAAkB,GAAG,IAAI,CAC1B,CAAC;IAEF,mBAAmB;IACnB,MAAM,YAAY,GAA4D,EAAE,CAAC;IAEjF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,YAAY,CAAC,IAAI,CAAC;YAChB,MAAM,EAAE,qEAAqE;YAC7E,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,sCAAsC;SAChG,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAC9B,YAAY,CAAC,IAAI,CAAC;YAChB,MAAM,EAAE,yEAAyE;YACjF,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC;SAC5C,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,YAAY,CAAC,IAAI,CAAC;YAChB,MAAM,EAAE,0EAA0E;YAClF,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC;SAC5C,CAAC,CAAC;IACL,CAAC;IACD,IAAI,qBAAqB,GAAG,EAAE,EAAE,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC;YAChB,MAAM,EAAE,+EAA+E;YACvF,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC;SAC5C,CAAC,CAAC;IACL,CAAC;IAED,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,oBAAoB,GAAG,CAAC,CAAC,oBAAoB,CAAC,CAAC;IAC7E,MAAM,gBAAgB,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAElD,eAAe;IACf,IAAI,CAAC,YAAY,IAAI,CAAC,cAAc,EAAE,CAAC;QACrC,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,WAAW;YACrB,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,iEAAiE;YAC1E,GAAG,EAAE,iFAAiF;YACtF,gBAAgB,EAAE,MAAM;SACzB,CAAC,CAAC;IACL,CAAC;IACD,IAAI,YAAY,GAAG,EAAE,EAAE,CAAC;QACtB,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,WAAW;YACrB,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,uEAAuE;YAChF,GAAG,EAAE,kFAAkF;YACvF,gBAAgB,EAAE,MAAM;SACzB,CAAC,CAAC;IACL,CAAC;IACD,IAAI,iBAAiB,GAAG,EAAE,IAAI,YAAY,EAAE,CAAC;QAC3C,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,WAAW;YACrB,KAAK,EAAE,sBAAsB;YAC7B,OAAO,EAAE,qDAAqD;YAC9D,GAAG,EAAE,+EAA+E;YACpF,gBAAgB,EAAE,QAAQ;SAC3B,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,yBAAyB;QACzB,OAAO,EAAE;YACP,qBAAqB;YACrB,eAAe;YACf,YAAY;YACZ,cAAc;YACd,iBAAiB;YACjB,iBAAiB;YACjB,kBAAkB;SACnB;QACD,gBAAgB;QAChB,QAAQ;KACT,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,60 +1,61 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@automatelab/ai-seo-mcp",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
|
|
10
|
-
"
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
"
|
|
19
|
-
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"
|
|
23
|
-
"test
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
"
|
|
44
|
-
"src/lib/
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"
|
|
59
|
-
|
|
60
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "@automatelab/ai-seo-mcp",
|
|
3
|
+
"version": "0.1.2",
|
|
4
|
+
"mcpName": "io.github.AutomateLab-tech/ai-seo",
|
|
5
|
+
"description": "MCP server for AI-SEO auditing: schema, robots.txt, llms.txt, citation scoring, and AEO/GEO rewrites",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"author": "automatelab.tech",
|
|
8
|
+
"homepage": "https://github.com/AutomateLab-tech/ai-seo",
|
|
9
|
+
"repository": {
|
|
10
|
+
"type": "git",
|
|
11
|
+
"url": "https://github.com/AutomateLab-tech/ai-seo.git"
|
|
12
|
+
},
|
|
13
|
+
"engines": { "node": ">=20" },
|
|
14
|
+
"type": "module",
|
|
15
|
+
"bin": {
|
|
16
|
+
"ai-seo-mcp": "dist/index.js"
|
|
17
|
+
},
|
|
18
|
+
"main": "dist/index.js",
|
|
19
|
+
"scripts": {
|
|
20
|
+
"build": "tsc",
|
|
21
|
+
"dev": "tsx src/index.ts",
|
|
22
|
+
"start": "node dist/index.js",
|
|
23
|
+
"test": "vitest run",
|
|
24
|
+
"test:watch": "vitest",
|
|
25
|
+
"lint": "eslint src tests --ext .ts",
|
|
26
|
+
"typecheck": "tsc --noEmit"
|
|
27
|
+
},
|
|
28
|
+
"dependencies": {
|
|
29
|
+
"@modelcontextprotocol/sdk": "1.29.0",
|
|
30
|
+
"cheerio": "1.0.0",
|
|
31
|
+
"fast-xml-parser": "5.8.0",
|
|
32
|
+
"robots-parser": "3.0.1",
|
|
33
|
+
"undici": "7.25.0",
|
|
34
|
+
"zod": "3.25.76"
|
|
35
|
+
},
|
|
36
|
+
"devDependencies": {
|
|
37
|
+
"@types/node": "22.19.19",
|
|
38
|
+
"tsx": "4.22.0",
|
|
39
|
+
"typescript": "5.7.3",
|
|
40
|
+
"vitest": "3.2.4"
|
|
41
|
+
},
|
|
42
|
+
"files": [
|
|
43
|
+
"dist",
|
|
44
|
+
"src/lib/crawlers.json",
|
|
45
|
+
"src/lib/schema-types.json",
|
|
46
|
+
"README.md",
|
|
47
|
+
"LICENSE"
|
|
48
|
+
],
|
|
49
|
+
"keywords": [
|
|
50
|
+
"mcp",
|
|
51
|
+
"seo",
|
|
52
|
+
"ai-seo",
|
|
53
|
+
"aeo",
|
|
54
|
+
"geo",
|
|
55
|
+
"ai-overview",
|
|
56
|
+
"schema",
|
|
57
|
+
"robots",
|
|
58
|
+
"llms-txt",
|
|
59
|
+
"citation"
|
|
60
|
+
]
|
|
61
|
+
}
|
package/src/lib/crawlers.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
{
|
|
2
|
-
"training": ["GPTBot", "ClaudeBot", "CCBot", "Meta-ExternalAgent", "Amazonbot"],
|
|
3
|
-
"search": ["OAI-SearchBot", "Claude-SearchBot", "PerplexityBot", "Bingbot", "DuckAssistBot"],
|
|
4
|
-
"user_triggered": ["ChatGPT-User", "Claude-User", "Google-Agent"],
|
|
5
|
-
"robots_token_only": ["Google-Extended", "Applebot-Extended"]
|
|
6
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"training": ["GPTBot", "ClaudeBot", "CCBot", "Meta-ExternalAgent", "Amazonbot"],
|
|
3
|
+
"search": ["OAI-SearchBot", "Claude-SearchBot", "PerplexityBot", "Bingbot", "DuckAssistBot"],
|
|
4
|
+
"user_triggered": ["ChatGPT-User", "Claude-User", "Google-Agent"],
|
|
5
|
+
"robots_token_only": ["Google-Extended", "Applebot-Extended"]
|
|
6
|
+
}
|
|
@@ -1,56 +1,56 @@
|
|
|
1
|
-
[
|
|
2
|
-
"Article",
|
|
3
|
-
"BlogPosting",
|
|
4
|
-
"NewsArticle",
|
|
5
|
-
"FAQPage",
|
|
6
|
-
"Question",
|
|
7
|
-
"Answer",
|
|
8
|
-
"HowTo",
|
|
9
|
-
"HowToStep",
|
|
10
|
-
"HowToSection",
|
|
11
|
-
"HowToTool",
|
|
12
|
-
"HowToSupply",
|
|
13
|
-
"Organization",
|
|
14
|
-
"LocalBusiness",
|
|
15
|
-
"Person",
|
|
16
|
-
"Product",
|
|
17
|
-
"Offer",
|
|
18
|
-
"AggregateOffer",
|
|
19
|
-
"Review",
|
|
20
|
-
"AggregateRating",
|
|
21
|
-
"Rating",
|
|
22
|
-
"BreadcrumbList",
|
|
23
|
-
"ListItem",
|
|
24
|
-
"SoftwareApplication",
|
|
25
|
-
"WebApplication",
|
|
26
|
-
"MobileApplication",
|
|
27
|
-
"WebSite",
|
|
28
|
-
"WebPage",
|
|
29
|
-
"ItemPage",
|
|
30
|
-
"AboutPage",
|
|
31
|
-
"ContactPage",
|
|
32
|
-
"SearchResultsPage",
|
|
33
|
-
"ImageObject",
|
|
34
|
-
"VideoObject",
|
|
35
|
-
"AudioObject",
|
|
36
|
-
"MediaObject",
|
|
37
|
-
"Event",
|
|
38
|
-
"CreativeWork",
|
|
39
|
-
"Book",
|
|
40
|
-
"Course",
|
|
41
|
-
"Recipe",
|
|
42
|
-
"Dataset",
|
|
43
|
-
"SpeakableSpecification",
|
|
44
|
-
"SearchAction",
|
|
45
|
-
"EntryPoint",
|
|
46
|
-
"PostalAddress",
|
|
47
|
-
"GeoCoordinates",
|
|
48
|
-
"OpeningHoursSpecification",
|
|
49
|
-
"PriceSpecification",
|
|
50
|
-
"MonetaryAmount",
|
|
51
|
-
"ContactPoint",
|
|
52
|
-
"Brand",
|
|
53
|
-
"Intangible",
|
|
54
|
-
"Thing",
|
|
55
|
-
"Place"
|
|
56
|
-
]
|
|
1
|
+
[
|
|
2
|
+
"Article",
|
|
3
|
+
"BlogPosting",
|
|
4
|
+
"NewsArticle",
|
|
5
|
+
"FAQPage",
|
|
6
|
+
"Question",
|
|
7
|
+
"Answer",
|
|
8
|
+
"HowTo",
|
|
9
|
+
"HowToStep",
|
|
10
|
+
"HowToSection",
|
|
11
|
+
"HowToTool",
|
|
12
|
+
"HowToSupply",
|
|
13
|
+
"Organization",
|
|
14
|
+
"LocalBusiness",
|
|
15
|
+
"Person",
|
|
16
|
+
"Product",
|
|
17
|
+
"Offer",
|
|
18
|
+
"AggregateOffer",
|
|
19
|
+
"Review",
|
|
20
|
+
"AggregateRating",
|
|
21
|
+
"Rating",
|
|
22
|
+
"BreadcrumbList",
|
|
23
|
+
"ListItem",
|
|
24
|
+
"SoftwareApplication",
|
|
25
|
+
"WebApplication",
|
|
26
|
+
"MobileApplication",
|
|
27
|
+
"WebSite",
|
|
28
|
+
"WebPage",
|
|
29
|
+
"ItemPage",
|
|
30
|
+
"AboutPage",
|
|
31
|
+
"ContactPage",
|
|
32
|
+
"SearchResultsPage",
|
|
33
|
+
"ImageObject",
|
|
34
|
+
"VideoObject",
|
|
35
|
+
"AudioObject",
|
|
36
|
+
"MediaObject",
|
|
37
|
+
"Event",
|
|
38
|
+
"CreativeWork",
|
|
39
|
+
"Book",
|
|
40
|
+
"Course",
|
|
41
|
+
"Recipe",
|
|
42
|
+
"Dataset",
|
|
43
|
+
"SpeakableSpecification",
|
|
44
|
+
"SearchAction",
|
|
45
|
+
"EntryPoint",
|
|
46
|
+
"PostalAddress",
|
|
47
|
+
"GeoCoordinates",
|
|
48
|
+
"OpeningHoursSpecification",
|
|
49
|
+
"PriceSpecification",
|
|
50
|
+
"MonetaryAmount",
|
|
51
|
+
"ContactPoint",
|
|
52
|
+
"Brand",
|
|
53
|
+
"Intangible",
|
|
54
|
+
"Thing",
|
|
55
|
+
"Place"
|
|
56
|
+
]
|