
pseolint
io.github.ouranos-labs由 GitHub 帳號 ouranos-labs 發布v0.6.4更新於 Oct 24, 2026
Penalty-risk audit for programmatic SEO sites: verdict, risk score, and a fix manifest.
概覽
稽核程式化 SEO 網站的垃圾內容與技術風險,回傳判定、風險分數、依範本的細分結果與修正建議。
- 可以做什麼
- 把 pseolint 的稽核工具提供給 AI 助理:pseolint_audit_site 對網址或本機目錄執行完整稽核,回傳判定、風險分數、依範本的變異指標與逐 URL 的發現;pseolint_explain_score 說明 SpamBrain 風險分數的成因;pseolint_check_page_technical 檢查單一頁面的 canonical、Open Graph、JSON-LD、robots、meta 與薄內容問題;pseolint_orchestrate_audit 驅動 LLM 走完 25 個稽核工具,產出附具體修補的修正清單。規則文件也以唯讀 MCP 資源形式提供,依 ruleId 索引。
- 適用情境
- 適合在維護大型範本化或程式化 SEO 網站時使用,讓助理稽核範本、解釋風險分數,或草擬改寫標題、JSON-LD 區塊等具體修正。也適合快速做單頁技術 SEO 檢查。
- 執行需求
- 透過 npx @pseolint/mcp(Node.js)以 stdio 在本機執行,或使用託管的遠端端點。AI 編排的 pseolint_orchestrate_audit 工具與選用的 contentEffort 訊號需要在伺服器環境設定 ANTHROPIC_API_KEY,其餘工具不需要該金鑰。選用 PSEOLINT_MCP_SAMPLE_CAP 控制每次稽核抽樣的頁面數(預設 50)。需要能連線到被稽核網站的網路。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 pseolint,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
@pseolint/mcp
MCP server for pseolint: audit pSEO sites by template from AI coding assistants.
An MCP (Model Context Protocol) server that exposes pseolint v0.7.5 auditing tools to AI coding assistants like Claude Code, Claude Desktop, Cursor, and Windsurf.
All tools are namespaced with a pseolint_ prefix (pseolint_audit_site, pseolint_explain_score, pseolint_check_page_technical, pseolint_orchestrate_audit) so they don't collide with other MCP servers, and each returns both human-readable text and machine-readable structuredContent.
What's new in v0.6: per-template output in tool responses
audit_site now returns a templates array alongside the existing findings list. AI clients get the per-template view automatically; no parameter changes needed.
When iterating templates, the topDriver rule + fireRate is the most actionable signal: "8/10 samples fail spam/thin-content" tells the LLM which template is broken and what to fix. The findings flat list remains available for per-URL drill-down.
Design rationale: docs/superpowers/specs/2026-05-04-pseolint-v0.6-audit-as-template-reframe.md
What's new in v0.5.2: credibility layer
- 4 new content-quality rules in the underlying engine (consumed by
audit_siteandorchestrate_audit):content/title-uniqueness,content/heading-structure,content/image-alt-text,tech/og-completeness. Findings appear in tool output as standard rule findings. audit_site.authorityScoreparameter (0-100): bring-your-own-DA.>= 80shifts the verdict one tier lenient on established brands;<= 30shifts one tier stricter on newer/lower-authority operators. Rawrisknumber unchanged.audit_site.sampleSeedparameter: deterministic sampler. Same seed = same audit = same verdict, run after run. AI assistants asking the user to confirm a finding can re-audit reproducibly.spam/doorway-patterncluster collapse: a 276-pair finding on a catalog directory now arrives as one cluster line per group, not 276 line items eating the LLM's context window.- Findings stay actionable: info-severity findings are capped per category bucket so they can't accumulate to tank a verdict on their own; the LLM gets the actual signal, not noise.
- Calibrated against reputable in-production pSEO sites; trade-offs and limitations documented at pseolint.dev/methodology.
What's new in v0.5
orchestrate_audit tool. Drives an LLM through 25 deterministic audit tools and produces a fix manifest with concrete copy-paste patches (rewritten H1s, JSON-LD blocks, robots.txt diffs). Use when a user wants concrete fixes, not just a list of issues.
Conservative MCP defaults: $2 / 60 tool calls / 180 seconds wall (vs CLI's $5 / 100 / 300). Two output modes: summary (terse text for chat UI) and json (full manifest + validation + diff). Each invocation reports actual USD spend. Patches that fail deterministic validators are dropped from the manifest and surfaced separately.
Example prompt: "Use the pseolint_orchestrate_audit tool to run an AI-native audit of https://example.com with concrete fix proposals."
Safety defaults (v0.3.3+)
All three tools default to safeMode: "saas"; AI assistants running in end-user
environments can't be tricked into scanning AWS/GCP metadata endpoints, localhost,
or RFC1918 networks via a malicious URL argument. Specifically:
guardSsrf: true: DNS-validated private-range check on the source URL, sitemap entries, redirect hops, and discovered linksrespectRobotsTxt: true: sitemap URLs Disallow'd by the target'srobots.txtare skipped instead of crawled- Tighter
maxFetchBytes(10 MB) andmaxCrawlDiscovered(2000) caps
Tools
pseolint_orchestrate_audit (v0.5)
Drive an LLM through 25 audit tools and produce a fix manifest with concrete patches. Use when a user wants paste-able fixes (not just a list of issues). Costs ~$1-3 per audit on managed Anthropic.
Parameters:
domain(required): URL of the site to audit (e.g. https://example.com)maxCostUsd: Hard USD cap (default 2)maxToolCalls: Hard tool-call cap (default 60)maxWallSeconds: Hard wall-clock cap (default 180)format:summary(terse text) orjson(full manifest + validation + diff)
Returns: text summary with verdict + categories + top-3 patches per bucket (or full JSON when format: "json"). Validation failures listed separately so the LLM-host conversation stays grounded in what actually shipped.
Example prompt: "Use pseolint_orchestrate_audit on https://example.com with format=summary"
pseolint_audit_site
Run a full pseolint audit on a URL or directory path. Returns the site-level verdict + risk score, a templates array (per-template verdicts + variance metrics), and all per-URL findings with actionable fix suggestions.
Parameters:
source(required): URL or directory path to auditthreshold: Score threshold for pass/fail (default: 40)sampleSize: Audit a random subset of N pages (0 = all)format: Output format:consoleorjson(default: console)authorityScore: 0-100 domain authority hint. ≥80 shifts verdict one tier lenient; ≤30 shifts one tier stricter. Rawrisknumber unchanged.contentEffort(boolean, default false): enable the AI content-effort signal: an LLM judges a 0-100 originality/effort score from sampled page text that moderates the verdict ±1 tier. RequiresANTHROPIC_API_KEYin the MCP server's environment; no-ops safely without one. Adds a few cents of LLM cost per audit.sampleSeed: Integer seed for deterministic stratified sampling. Same seed = same audit = same verdict.
Returns (v0.6 shape): verdict, risk, categories, templates: Template[], findings: RuleResult[]. AI clients should iterate templates first; topDriver.ruleId + fireRate is the most actionable per-template signal. Use findings for per-URL drill-down.
Example prompt: "Audit my site at http://localhost:3000; show me the per-template breakdown"
pseolint_explain_score
Run an audit and get a human-readable explanation of what's driving the SpamBrain Risk Score, including category breakdowns, top issues, and prioritized fix suggestions.
Parameters:
source(required): URL or directory path to auditthreshold: Risk threshold for the pass/fail verdict (default: 40)authorityScore: 0-100 domain authority hint. ≥80 shifts verdict one tier lenient; ≤30 shifts one tier stricter. Rawrisknumber unchanged.contentEffort(boolean, default false): enable the AI content-effort signal: an LLM judges a 0-100 originality/effort score from sampled page text that moderates the verdict ±1 tier. RequiresANTHROPIC_API_KEYin the MCP server's environment; no-ops safely without one. Adds a few cents of LLM cost per audit.sampleSeed: Integer seed for deterministic stratified sampling.
Example prompt: "Explain why my site's SpamBrain score is high"
pseolint_check_page_technical
Check a single page URL for per-page technical SEO issues (canonical, Open Graph, JSON-LD, robots, meta, thin content, author signals). Does not run cross-page rules; use pseolint_audit_site for those.
Parameters:
url(required): Full URL of the page to check
Example prompt: "Check https://yoursite.com/templates/california-llc for technical SEO issues"
Resources
The server also exposes pseolint's rule knowledge as read-only MCP resources, so an assistant can explain a finding without guessing or fetching the web. The resources are keyed by ruleId, the same identifier that appears on every audit finding (e.g. spam/thin-content), so they line up 1:1 with tool output.
pseolint://rules: a JSON index of every documented rule (ruleId,title, and the per-rule resource URI). Read this first to discover what's available.pseolint://rules/<ruleId>: one Markdown resource per rule, e.g.pseolint://rules/spam/thin-content. Each contains the rule's link, a What it detects section, and a How to fix checklist.
Typical flow: run pseolint_audit_site, take a ruleId off a finding, then read pseolint://rules/<ruleId> to ground the explanation and fix advice in pseolint's own rule documentation.
Remote server (hosted, zero-install)
Prefer not to install anything? Point your MCP client at the hosted endpoint:
It serves the three read-only audit tools (pseolint_audit_site, pseolint_explain_score,
pseolint_check_page_technical) with no signup; anonymous use is rate-limited. Create an
API key in your pseolint.dev dashboard and send it as Authorization: Bearer <key> to raise
your limits. The AI-orchestrated pseolint_orchestrate_audit tool is available only via the
stdio package (below) or the CLI for now.
Example client config:
Installation
Claude Code
Claude Desktop
Add to claude_desktop_config.json:
Cursor
Add to .cursor/mcp.json:
Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
VS Code (GitHub Copilot)
Add to .vscode/mcp.json:
What It Checks
65 rules, grouped by theme (rolled up into 4 scored categories: integrity, discoverability, citation, data):
- SpamBrain Risk: near-duplicate detection, entity-swap doorway pages, thin content, boilerplate ratio
- Content Quality: unique value per page, heading/meta uniqueness, E-E-A-T signals
- Internal Linking: orphan pages, dead ends, cluster connectivity, link depth
- Technical SEO: canonical consistency, sitemap completeness, robots.txt conflicts
- Structured Data: JSON-LD validation, required fields, schema consistency
- Cannibalization: URL pattern conflicts (
title-overlapandkeyword-collisionwere dropped in v0.4 for high false-positive rates)
Links
License
MIT
來源:packages/mcp/README.md,提交 6a4e52c
工具
0版本歷史
1- v0.6.4最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分
