seo@0.17.1
VERIFIED· install onlyPublisher claims: "The SEO command for AI agents: a free Google Search Console MCP server and CLI. Reads your real Search Console, Google Analytics and Bing data for traffic drops, quick wins, content decay, cannibalization and indexing, plus DataForSEO and Ahrefs keyword r" Observed in sandbox: no network, touches nothing outside the project, writes no memory.
Coverage
Nothing executable in the bundle ran; the trace covers the install step only.- Tested
- every file read, file written and host contacted by what ran
- Not tested
- use of the skill by an agent
Is [email protected] safe to install?
KillerSkills ran it in the KillerSkills honeypot sandbox (1 scenario; nothing executable in the bundle ran; the trace covers the install step only) on 2026-11-07 and scored it 88/100 (Verified). In what ran, nothing we could detect went wrong: no undeclared network egress, no credential reads, no persistent instruction writes. What it does with a real credential was not observed; the static findings and the publisher carry the rest of the score. Summary: no network, touches nothing outside the project, writes no memory.
Behavior trace
Honeypot run · 0 s · 1 scenarios · 0 deviationsStatic findings
`)}function xo(e){let t=e.trim();if(/^https?:\/\//i.test(t))return t;if(t.startsWith(`sc-domain:`))return`https://${t.slice(10)}/`;if(/^[a-z0-9-]+(\.[a-z0-9-]+)+(:\d+)?(\/\S*)?$/i.test(t))return`httpsFix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.`),await n.flush()}async function io(e,t){if(!e){await ro(process.stdout,t);return}await Dr(cr(e),{recursive:!0});let n=gr(e);try{await ro(n,t),n.end(),await Zr(n)}catch(e){throw n.destroy(),e}processFix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.import{$ as e,$n as t,$t as n,A as r,An as i,At as a,B as o,Bn as s,Bt as c,C as l,Cn as u,Cr as d,Ct as f,D as ee,Dn as p,Dt as m,E as h,En as te,Et as ne,F as re,Fn as ie,Ft as ae,G as oe,Gn as se,GFix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.`)}function Qi(e,t){return e.length===0?t.colors.dim(`No parameters.`):Yi(e.map(e=>({title:e.name,description:e.description,meta:[e.type,e.required?`required`:`optional`]})),t,{empty:`No parameters.`}Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.<summary><strong>The CLI</strong> (for crawls and Bing, which run on your machine)</summary> ```bash npm i -g seo seo start ``` `seo start` signs you in, connecFix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.`));else{if(await js())return n();Ds("The login expired. Run `seo login` again."),process.exitCode=1}}});async function js(){let e=dt()??await Le();for(Ds(`Opening ${e.url}\nApprove code ${e.code} theFix: Pin versions and sources; vendor anything fetched at install time.`),ia(`What is in it`,"An example site about parks, built from src/data. It already passes `seo site check`: titles, canonicals, JSON-LD, sharing images, Markdown copies, llms.txt and sitemaps are donFix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.CLI: `seo`, or `npx -y seo`. Add `--json` for JSON.Fix: Pin versions and sources; vendor anything fetched at install time.`,config:{}};let t=vr(e.path,`utf8`),n=[],r=ei(t,n,{allowTrailingComma:!0});if(n.length>0){let t=n[0],r=t?`${ti(t.error)} at offset ${t.offset}`:`unknown parse error`;throw Error(`Cannot update ${e.paFix: Namespace tool names and keep tool descriptions literal; no instructions to the agent inside them.Cost to the agent
Tokens estimated at four characters each. Skills load their instruction text when triggered; the figure is what that costs.
Known vulnerabilities
No advisories in OSV for seo@0.17.1 as of 3d ago. This is the package itself, not its dependencies.