@pseolint/mcp 0.3.1 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +88 -41
- package/dist/server.js.map +1 -1
- package/package.json +2 -2
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA8JpE,wBAAgB,YAAY,IAAI,SAAS,CA0JxC;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAIpD"}
|
package/dist/server.js
CHANGED
|
@@ -3,6 +3,23 @@ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"
|
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
import { createRequire } from "node:module";
|
|
5
5
|
import { auditSource, formatConsole, formatJson } from "@pseolint/core";
|
|
6
|
+
/**
|
|
7
|
+
* MCP SDK 1.29's `inputSchema` is typed as `ZodRawShapeCompat = Record<string,
|
|
8
|
+
* z3.ZodTypeAny | z4.$ZodType>` via a zod-compat shim. zod 4.4.x's high-level
|
|
9
|
+
* `ZodString` / `ZodNumber` extend `core.$ZodType` from `zod/v4/core`, so they
|
|
10
|
+
* satisfy the runtime contract — but TypeScript 6 strict mode infers the
|
|
11
|
+
* union's z3 branch first and reports a structural mismatch against z3
|
|
12
|
+
* internals (`_type`, `_parse`, etc.) that v4 schemas don't have.
|
|
13
|
+
*
|
|
14
|
+
* We name the SDK's expected shape via `inputShape<T>()`: it accepts a
|
|
15
|
+
* Record<string, ZodTypeAny> at the call site (so each tool's schema stays
|
|
16
|
+
* authored in plain zod 4 syntax) and returns a value typed as the SDK's
|
|
17
|
+
* `ZodRawShapeCompat`. One cast, one place, no runtime cost. Handler args
|
|
18
|
+
* keep their explicit types below to compensate for the lost inference.
|
|
19
|
+
*/
|
|
20
|
+
function inputShape(shape) {
|
|
21
|
+
return shape;
|
|
22
|
+
}
|
|
6
23
|
const require = createRequire(import.meta.url);
|
|
7
24
|
const { version } = require("../package.json");
|
|
8
25
|
const MCP_SAMPLE_CAP = (() => {
|
|
@@ -25,43 +42,60 @@ function friendlyError(err, source) {
|
|
|
25
42
|
}
|
|
26
43
|
return `Audit failed for ${source}: ${msg}`;
|
|
27
44
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
return "
|
|
35
|
-
|
|
36
|
-
return "
|
|
37
|
-
|
|
45
|
+
/**
|
|
46
|
+
* v0.4: verdict ladder replaces the old numeric score-label.
|
|
47
|
+
* Risk values are still 0–100 (low=good); verdict is the human-readable layer.
|
|
48
|
+
*/
|
|
49
|
+
function verdictLabel(verdict) {
|
|
50
|
+
switch (verdict) {
|
|
51
|
+
case "ready": return "Ready";
|
|
52
|
+
case "caution": return "Caution";
|
|
53
|
+
case "concerning": return "Concerning";
|
|
54
|
+
case "critical": return "Critical";
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
function flattenIssues(summary) {
|
|
58
|
+
return [
|
|
59
|
+
...summary.issues.blockers,
|
|
60
|
+
...summary.issues.shouldFix,
|
|
61
|
+
...summary.issues.informational,
|
|
62
|
+
];
|
|
38
63
|
}
|
|
39
64
|
function buildExplanation(summary, threshold) {
|
|
40
65
|
const lines = [];
|
|
41
|
-
const label =
|
|
42
|
-
const passFail = summary.
|
|
43
|
-
lines.push(`
|
|
66
|
+
const label = verdictLabel(summary.verdict);
|
|
67
|
+
const passFail = summary.risk >= threshold ? "FAIL" : "PASS";
|
|
68
|
+
lines.push(`pseolint Verdict: ${label} (risk ${summary.risk}/100, lower=better) — ${passFail} at threshold ${threshold}`);
|
|
44
69
|
lines.push(`Pages analysed: ${summary.pageCount}`);
|
|
45
70
|
if (summary.templateDetected) {
|
|
46
71
|
lines.push("");
|
|
47
72
|
lines.push("Template-generated content detected. Fix suggestions are tailored for template authors.");
|
|
48
73
|
}
|
|
74
|
+
if (summary.siteClassification) {
|
|
75
|
+
const sc = summary.siteClassification;
|
|
76
|
+
lines.push("");
|
|
77
|
+
lines.push(`Site type: ${sc.type} (confidence ${(sc.confidence * 100).toFixed(0)}%).`);
|
|
78
|
+
if (sc.suppressedRules.length > 0) {
|
|
79
|
+
lines.push(`Suppressed ${sc.suppressedRules.length} rule${sc.suppressedRules.length === 1 ? "" : "s"} not applicable to this site type.`);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
49
82
|
lines.push("");
|
|
50
83
|
lines.push("Category breakdown:");
|
|
51
|
-
for (const [cat,
|
|
84
|
+
for (const [cat, info] of Object.entries(summary.categories)) {
|
|
52
85
|
const catLabel = cat.charAt(0).toUpperCase() + cat.slice(1);
|
|
53
|
-
lines.push(` ${catLabel}: ${
|
|
86
|
+
lines.push(` ${catLabel}: ${info.grade} (${info.issues} issue${info.issues === 1 ? "" : "s"})`);
|
|
54
87
|
}
|
|
88
|
+
const allFindings = flattenIssues(summary);
|
|
55
89
|
const ruleCounts = new Map();
|
|
56
|
-
for (const f of
|
|
90
|
+
for (const f of allFindings) {
|
|
57
91
|
ruleCounts.set(f.ruleId, (ruleCounts.get(f.ruleId) ?? 0) + 1);
|
|
58
92
|
}
|
|
59
93
|
if (ruleCounts.size > 0) {
|
|
60
94
|
lines.push("");
|
|
61
|
-
lines.push("What's driving the
|
|
95
|
+
lines.push("What's driving the verdict (fix in this order):");
|
|
62
96
|
const effortOrder = ["quick", "moderate", "structural"];
|
|
63
97
|
const withEffort = Array.from(ruleCounts.entries()).map(([ruleId, count]) => {
|
|
64
|
-
const finding =
|
|
98
|
+
const finding = allFindings.find((f) => f.ruleId === ruleId);
|
|
65
99
|
return { ruleId, count, finding };
|
|
66
100
|
}).sort((a, b) => {
|
|
67
101
|
const ea = effortOrder.indexOf(a.finding?.effort ?? "moderate");
|
|
@@ -78,23 +112,31 @@ function buildExplanation(summary, threshold) {
|
|
|
78
112
|
}
|
|
79
113
|
}
|
|
80
114
|
}
|
|
81
|
-
if (summary.
|
|
115
|
+
if (summary.risk >= threshold) {
|
|
82
116
|
lines.push("");
|
|
83
|
-
lines.push(`
|
|
117
|
+
lines.push(`Risk ${summary.risk} exceeds threshold ${threshold}. Focus on quick fixes first to bring risk down, then tackle structural issues.`);
|
|
84
118
|
}
|
|
85
119
|
else {
|
|
86
120
|
lines.push("");
|
|
87
|
-
lines.push(`
|
|
121
|
+
lines.push(`Risk ${summary.risk} is below threshold ${threshold}. Site passes CI checks.`);
|
|
88
122
|
}
|
|
89
123
|
return lines.join("\n");
|
|
90
124
|
}
|
|
125
|
+
/**
|
|
126
|
+
* Rules that operate on the page corpus (cross-page) rather than per-URL.
|
|
127
|
+
* Used to filter check_page_technical output to per-page findings only.
|
|
128
|
+
*
|
|
129
|
+
* Updated for v0.4: dropped rules removed (cannibal/title-overlap,
|
|
130
|
+
* cannibal/keyword-collision, content/heading-uniqueness, links/hub-pages).
|
|
131
|
+
*/
|
|
91
132
|
const CROSS_PAGE_RULES = new Set([
|
|
92
133
|
"spam/near-duplicate", "spam/entity-swap", "spam/boilerplate-ratio",
|
|
93
134
|
"spam/template-diversity", "spam/publication-velocity", "spam/doorway-pattern",
|
|
94
|
-
"spam/template-coverage", "content/unique-value",
|
|
95
|
-
"content/meta-uniqueness",
|
|
96
|
-
"cannibal/url-pattern",
|
|
97
|
-
"links/
|
|
135
|
+
"spam/template-coverage", "content/unique-value",
|
|
136
|
+
"content/meta-uniqueness",
|
|
137
|
+
"cannibal/url-pattern",
|
|
138
|
+
"links/orphan-pages", "links/dead-ends",
|
|
139
|
+
"links/cluster-connectivity",
|
|
98
140
|
]);
|
|
99
141
|
export function createServer() {
|
|
100
142
|
const server = new McpServer({
|
|
@@ -103,13 +145,13 @@ export function createServer() {
|
|
|
103
145
|
});
|
|
104
146
|
server.registerTool("audit_site", {
|
|
105
147
|
title: "Audit Site for SpamBrain Risk",
|
|
106
|
-
description: "Use when a user asks to check their website for SEO issues, SpamBrain risk, duplicate content, thin pages, or before deploying a programmatic SEO site. Crawls the site, runs
|
|
107
|
-
inputSchema: {
|
|
148
|
+
description: "Use when a user asks to check their website for SEO issues, SpamBrain risk, duplicate content, thin pages, or before deploying a programmatic SEO site. Crawls the site, runs 32 rules across 4 categories (integrity, discoverability, citation, data), and returns a verdict (ready/caution/concerning/critical) plus a numeric risk score (0-100, lower is better) with actionable findings. Pre-flight site classification suppresses pSEO-targeted rules on small marketing sites and blogs unless --strict is passed.",
|
|
149
|
+
inputSchema: inputShape({
|
|
108
150
|
source: z.string().describe("URL (e.g. http://localhost:3000) or local directory path (e.g. ./out) to audit"),
|
|
109
|
-
threshold: z.number().optional().default(40).describe("
|
|
151
|
+
threshold: z.number().optional().default(40).describe("Risk threshold — audit fails if risk >= this value (default: 40, semantically equivalent to 'caution' verdict)"),
|
|
110
152
|
sampleSize: z.number().optional().default(0).describe("Audit a random subset of N pages. 0 = all pages up to internal cap of 50 for MCP. Set explicitly to override."),
|
|
111
153
|
format: z.enum(["console", "json"]).optional().default("console").describe("Output format. Use 'json' for structured data, 'console' for human-readable summary."),
|
|
112
|
-
},
|
|
154
|
+
}),
|
|
113
155
|
annotations: {
|
|
114
156
|
readOnlyHint: true,
|
|
115
157
|
destructiveHint: false,
|
|
@@ -117,7 +159,11 @@ export function createServer() {
|
|
|
117
159
|
},
|
|
118
160
|
}, async ({ source, threshold, sampleSize, format }) => {
|
|
119
161
|
try {
|
|
120
|
-
|
|
162
|
+
// MCP audits run on user-supplied URLs inside AI-assistant environments
|
|
163
|
+
// where the LLM may not vet the target. `safeMode: "saas"` flips on
|
|
164
|
+
// guardSsrf (DNS-validated private-range check), tightens maxFetchBytes,
|
|
165
|
+
// and keeps robots.txt honoured — see packages/core SafeMode docs.
|
|
166
|
+
const options = { safeMode: "saas" };
|
|
121
167
|
if (sampleSize > 0) {
|
|
122
168
|
options.sampleSize = sampleSize;
|
|
123
169
|
}
|
|
@@ -137,7 +183,7 @@ export function createServer() {
|
|
|
137
183
|
}
|
|
138
184
|
return {
|
|
139
185
|
content: [{ type: "text", text }],
|
|
140
|
-
isError: summary.
|
|
186
|
+
isError: summary.risk >= threshold,
|
|
141
187
|
};
|
|
142
188
|
}
|
|
143
189
|
catch (err) {
|
|
@@ -148,12 +194,12 @@ export function createServer() {
|
|
|
148
194
|
}
|
|
149
195
|
});
|
|
150
196
|
server.registerTool("explain_score", {
|
|
151
|
-
title: "Explain
|
|
152
|
-
description: "Use when a user wants to understand WHY their
|
|
153
|
-
inputSchema: {
|
|
197
|
+
title: "Explain pseolint Verdict",
|
|
198
|
+
description: "Use when a user wants to understand WHY their pseolint verdict is concerning/critical, what categories are failing, and what to fix first. Returns a prioritized breakdown with quick wins listed before structural fixes, plus a pass/fail verdict against the risk threshold.",
|
|
199
|
+
inputSchema: inputShape({
|
|
154
200
|
source: z.string().describe("URL (e.g. http://localhost:3000) or local directory path (e.g. ./out) to audit"),
|
|
155
|
-
threshold: z.number().optional().default(40).describe("
|
|
156
|
-
},
|
|
201
|
+
threshold: z.number().optional().default(40).describe("Risk threshold for pass/fail verdict (default: 40)"),
|
|
202
|
+
}),
|
|
157
203
|
annotations: {
|
|
158
204
|
readOnlyHint: true,
|
|
159
205
|
destructiveHint: false,
|
|
@@ -161,12 +207,12 @@ export function createServer() {
|
|
|
161
207
|
},
|
|
162
208
|
}, async ({ source, threshold }) => {
|
|
163
209
|
try {
|
|
164
|
-
const options = { sampleSize: MCP_SAMPLE_CAP };
|
|
210
|
+
const options = { sampleSize: MCP_SAMPLE_CAP, safeMode: "saas" };
|
|
165
211
|
const summary = await auditSource(source, options);
|
|
166
212
|
const text = buildExplanation(summary, threshold);
|
|
167
213
|
return {
|
|
168
214
|
content: [{ type: "text", text }],
|
|
169
|
-
isError: summary.
|
|
215
|
+
isError: summary.risk >= threshold,
|
|
170
216
|
};
|
|
171
217
|
}
|
|
172
218
|
catch (err) {
|
|
@@ -179,9 +225,9 @@ export function createServer() {
|
|
|
179
225
|
server.registerTool("check_page_technical", {
|
|
180
226
|
title: "Check Single Page Technical SEO",
|
|
181
227
|
description: "Use when a user asks to check a specific page URL for technical SEO issues. Checks per-page rules only: canonical tags, Open Graph tags, JSON-LD schema, robots directives, meta tags, thin content, and author signals. Does NOT check cross-page rules (duplicates, cannibalization, linking) — use audit_site for those.",
|
|
182
|
-
inputSchema: {
|
|
228
|
+
inputSchema: inputShape({
|
|
183
229
|
url: z.string().describe("Full URL of the page to check (e.g. https://yoursite.com/templates/california-llc)"),
|
|
184
|
-
},
|
|
230
|
+
}),
|
|
185
231
|
annotations: {
|
|
186
232
|
readOnlyHint: true,
|
|
187
233
|
destructiveHint: false,
|
|
@@ -191,9 +237,10 @@ export function createServer() {
|
|
|
191
237
|
try {
|
|
192
238
|
const options = {
|
|
193
239
|
crawlDiscovery: false,
|
|
240
|
+
safeMode: "saas",
|
|
194
241
|
};
|
|
195
242
|
const summary = await auditSource(url, options);
|
|
196
|
-
const perPageFindings = summary.
|
|
243
|
+
const perPageFindings = flattenIssues(summary).filter((f) => !CROSS_PAGE_RULES.has(f.ruleId));
|
|
197
244
|
const lines = [];
|
|
198
245
|
lines.push(`Technical SEO check for ${url}`);
|
|
199
246
|
lines.push("");
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pseolint/mcp",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "MCP server for pseolint — audit programmatic SEO sites from AI coding assistants",
|
|
3
|
+
"version": "0.4.1",
|
|
4
|
+
"description": "MCP server for pseolint — audit programmatic SEO sites from AI coding assistants. v0.4 verdict-ladder + site-classification surfacing in explain_score.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Ouranos Labs <contact@ouranos-labs.dev>",
|
|
7
7
|
"homepage": "https://pseolint.dev",
|