OpenSEO web content

01What is it?
Write and review content for the OpenSEO website (web/), blog posts, guides, feature pages, FAQs. Distills the philosophy for on-brand, useful, accurate content. Its edge is a particular angle on search and SEO workflows, giving the agent tighter constraints than a plain OpenSEO web content request.
02Inputs
Context for search and SEO workflows: your goals, audience, constraints, and any source material the skill asks for.
03Output
A ready-to-use result for search and SEO workflows: the analysis, copy, or recommendations the agent produces.
Install-only

Install as a package

Installs this one skill package for your coding agent, including any supporting files that skill ships with — not every skill in the repository. Read the tutorial.

Terminal
$ npx skills add every-app/open-seo --skill openseo-review-web-content

Skill instructions

The instruction file for this skill. The skill also includes other files you need to install to use it.

SKILL.md

OpenSEO Web Content

Everything we publish must be traceable to what the product actually does and costs, and must read like a practitioner wrote it. The reader's interest comes first: teach something they can act on, and answer straight — including when the honest answer is "no" or "it costs money."

Principles

  1. Traceable truth. Every capability claim, price, and screenshot is verifiable against the code, the fact sheet (src/server/features/onboarding/openseo-fact-sheet.md), or the live product. If you can't point to where it's true, it doesn't ship.
  2. Lead with the real answer. "No," "not unlimited," and "it costs money" are complete answers. Hedging that lets a reader infer something more flattering than the truth is a way of misleading them.
  3. Honest pricing, with its reasoning. Quality SEO data is expensive everywhere — that's why the big suites run $100/month and up. OpenSEO is the affordable option: $10/month, free to start. Never simply "free."
  4. Sound like a person. Fix AI tells by restating the underlying claim plainly, not by polishing the flourish. The deslop skill (../deslop/SKILL.md) is the reference for what to hunt and how to fix it.
  5. Reader-first altitude. Guides teach actionable SEO that stands on its own — not product documentation, not generic filler. Credit free resources to their real owners (Google's autocomplete, the reader's own Search Console).
  6. One bar, whole surface. When a standard improves, sweep everything to it — all the FAQs, all the pages — not just the instance that got noticed.
  7. Playbook terminology. Call each approach within any OpenSEO playbook a "strategy," never a "play." Use "workflow" for the steps readers execute; use "playbook" only for the complete collection.

Questions to ask while reviewing

  • If a reader trusted every claim and screenshot, then opened OpenSEO right now, where would reality not match?
  • Does each answer open with the real answer, or quietly steer toward a more flattering inference?
  • Read the sharpest line aloud: would a person say it that way?
  • Is anything called free that actually costs credits?
  • Is this teaching the reader something useful on its own, or drifting into product docs or padding?
  • Does every link, image, and example on the page earn its place for the reader?

Facts to verify, not remember

Check these against code before repeating any of them — they change: pricing and credits (src/shared/billing.ts, the pricing page), free-plan limits (src/shared/audit-limits.ts), MCP capabilities (src/server/mcp/tools/ — one file per tool), and any UI affordance copy tells the reader to use (the column, sort, or filter must exist in the client code).

Process

Spawn subagents to run the review passes (voice/deslop, claims accuracy, directness) and have them return exact old → new proposals rather than editing directly. Do not accept their proposals blindly: verify each one against the actual file, and each factual claim against the code, before applying — subagent rewrites can introduce their own awkwardness or errors, and a proposal that mismatches the file means it reviewed stale text. After applying, sweep the changed surface yourself (patterns cluster — one em dash or hedge usually has neighbors), then run npm --prefix web run types:check and prettier on touched TS/TSX.


Supporting file: .agents/skills/deslop/SKILL.md

Deslop: Remove AI Writing Patterns from Prose

Strip predictable AI patterns from writing. Make prose sound like a specific human wrote it, not like a language model generated it.

When to Apply

  • Any request to "make it sound human" or "deslop" writing
  • Any prose (articles, blog posts, essays, memos, newsletters, reports) or scientific writing (manuscripts, abstracts, cover letters, grant narratives, discussion sections, peer review responses) where the user wants it to sound natural rather than AI-generated
  • Editing or revising existing text where the user wants it to sound natural rather than AI-generated
  • Reviewing text for AI tells

Core Rules

1. Cut filler phrases

Remove throat-clearing openers ("Here's the thing:"), emphasis crutches ("Let that sink in."), business jargon ("navigate the landscape"), and meta-commentary ("In this section, we'll explore..."). See references/phrases.md for the full catalog.

2. Break formulaic structures

Avoid binary contrasts ("Not X. Y."), negative listings ("Not a X. Not a Y. A Z."), dramatic fragmentation ("Speed. That's it. That's the tradeoff."), self-posed rhetorical questions ("The result? Devastating."), and anaphora/tricolon abuse. See references/structures.md for patterns and fixes.

3. Eliminate AI tropes

Watch for the full catalog of AI writing tells: "quietly" and other magic adverbs, "delve" and its cousins, the "serves as" dodge, false ranges ("from X to Y" where the range is meaningless), superficial participle analyses ("highlighting its importance"), invented concept labels ("the supervision paradox"), grandiose stakes inflation, patronizing analogies, and false vulnerability. See references/tropes.md for the complete list with examples.

4. Use active voice with human subjects

Prefer active constructions with named actors. "The complaint becomes a fix" is wrong. "The team fixed it" is right. If no specific person fits, use "we" in scientific prose or "you" in blog posts.

5. Be specific

No vague declaratives ("The reasons are structural"). Name the specific thing. No lazy extremes ("every," "always," "never") doing vague work. No vague attributions ("Experts argue..."). If you cannot name the expert, you do not have a source.

In scientific writing, domain terminology is fine and expected. "Weighted interval score" is precise language, not jargon. The problem is business buzzwords ("leverage," "landscape," "ecosystem") and AI vocabulary tells ("delve," "tapestry," "nuanced") leaking into technical prose.

6. Match register to context

In blog posts and newsletters, put the reader in the room. "You" beats "People." Specifics beat abstractions. No narrator-from-a-distance voice.

In scientific writing, maintain appropriate formality. Use "we" for your own work, cite specific authors instead of "researchers have shown," and avoid both the distant narrator ("It has long been recognized that...") and the overly casual blog voice. State claims and back them with citations.

7. Vary rhythm

Mix sentence lengths. Two items beat three. End paragraphs differently. No em dashes. Do not stack short punchy fragments for manufactured emphasis. Do not write listicles disguised as prose ("The first wall... The second wall...").

8. Trust readers

State facts directly. Skip softening, justification, hand-holding. No "Let's break this down." No "Think of it as..." No pedagogical voice unless the audience genuinely needs it. No fractal summaries (telling the reader what you are about to say, saying it, then summarizing what you said).

9. Watch formatting tells

No bold-first bullets (every list item starting with a bolded keyword). No unicode arrows. No em dashes. No signposted conclusions ("In conclusion..."). No "Despite these challenges..." formulas. These are strong AI signals.

10. Do not dilute

One point per section. Do not restate the same argument in ten different ways across thousands of words. Do not beat a single metaphor to death. Do not stack historical analogies for false authority ("Apple didn't build Uber. Facebook didn't build Spotify...").

Quick Checks

Run these before delivering any prose:

  • Heavy use of adverbs or -ly words? Cut them.
  • Any passive voice? Find the actor, make them the subject.
  • Inanimate thing doing a human verb? Name the person.
  • Any "here's what/this/that" throat-clearing? Cut to the point.
  • Any "not X, it's Y" contrasts? State Y directly.
  • Any self-posed rhetorical question answered immediately? Fold into a statement.
  • Three consecutive sentences match length? Break one.
  • Paragraph ends with a punchy one-liner? Vary it.
  • Em dash anywhere? Remove it. Use a comma or period or a parenthetical.
  • Vague declarative ("The implications are significant")? Name the specific implication.
  • Any sentence starting with What/When/Where/Which/Who/Why/How as a crutch? Restructure.
  • Meta-joiners ("The rest of this essay...")? Delete.
  • "It's worth noting" or similar filler transitions? Delete.
  • Any self-certifying "honest answer/framing/signal" language? State the evidence, limit, or uncertainty instead.
  • Same metaphor used more than twice? Replace or cut repeats.
  • "Despite these challenges..." formula? Rewrite.
  • Bold-first bullet pattern? Remove bold leads.
  • Tricolon (three-item list)? Use two items or one.

Scoring

When reviewing text, rate 1-10 on each dimension:

DimensionQuestion
DirectnessStatements or announcements?
RhythmVaried or metronomic?
TrustRespects reader intelligence?
AuthenticitySounds like a specific human wrote it?
DensityAnything cuttable?

Below 35/50: revise.

Reference Files

Consult these for detailed catalogs when writing or editing:

  • references/phrases.md: Phrases to remove or replace (throat-clearing, emphasis crutches, business jargon, adverbs, meta-commentary, vague declaratives)
  • references/structures.md: Structural patterns to avoid (binary contrasts, negative listings, dramatic fragmentation, rhetorical setups, false agency, passive voice, rhythm problems)
  • references/tropes.md: Full catalog of AI writing tropes (word choice, sentence structure, paragraph structure, tone, formatting, composition)
  • references/examples.md: Before/after transformations showing how to fix common patterns

Examples

See references/examples.md for before/after transformations.

Quick inline example (scientific writing):

Before:

"It's worth noting that these findings have important implications for how we navigate the challenges of forecast ensembling moving forward. Despite these challenges, this work contributes meaningfully to the growing body of literature, highlighting the need for continued evaluation."

After:

"If individual model rankings are unstable across geography and time, ensemble methods that weight models by past performance may not improve on equal-weight approaches."

Changes: Replaced filler transition, vague declarative, "despite these challenges" formula, and superficial participle analysis with the specific implication.

Quick inline example (blog post):

Before:

"Here's the thing: most bioinformatics pipelines break in production. Not because the code is bad. Because the data is bad. Let that sink in."

After:

"Most bioinformatics pipelines break in production. The code runs fine. The data doesn't match the assumptions baked into it."

Changes: Removed opener, binary contrast, and emphasis crutch. Named the specific problem.


Supporting file: src/server/features/onboarding/openseo-fact-sheet.md

OpenSEO Fact Sheet

This is the factual product reference for Sam, the OpenSEO onboarding agent. If a user asks about OpenSEO and the answer is not supported here, Sam should say it is not sure and point them to support instead of inventing details.

What OpenSEO is

OpenSEO is an open-source SEO platform for keyword research, domain research, backlinks, rank tracking, site audits, Google Search Console, and AI-agent SEO workflows.

OpenSEO is built for people who want useful SEO data without a bloated enterprise SEO suite. It can be used as a hosted app or self-hosted from the open-source codebase.

OpenSEO is AI-native. It is designed to work with AI agents through MCP so users can ask an agent to run SEO research, inspect data, save findings, and continue work in the OpenSEO app.

OpenSEO does not claim to fully automate SEO. The product positioning is that SEO still needs strategy and judgment; OpenSEO helps users and AI agents collaborate on that work with real data.

How OpenSEO helps with SEO strategy

SEO and marketing are intertwined. Getting more organic traffic starts with clear positioning: knowing who the product is for, what problem it solves, and which narrow topics the site can credibly own before trying to compete for broad, high-volume searches.

OpenSEO helps users turn that positioning into an SEO plan. It can surface relevant keywords, competitor gaps, Search Console opportunities, backlink context, and technical issues, but the goal is not to chase every keyword. The strongest early strategy is usually to build authority around a focused topic where the site has a real angle.

As the site earns topical authority in Google and AI systems, it becomes easier to compete for broader, higher-volume searches. OpenSEO helps users see that path: start with specific, winnable topics; publish and improve useful pages; build supporting links and internal structure; track what moves; then expand into adjacent and more competitive terms.

When explaining traffic growth, Sam should frame OpenSEO as a tool for making better SEO and marketing decisions, not as a magic traffic button. OpenSEO provides the data, workflows, and agent access; the user's positioning, content quality, distribution, and execution still matter.

Hosted plan and credits

Hosted OpenSEO is free to try. Signing up requires no credit card, and new accounts include $0.50 of trial credits to test credit-using features before subscribing.

The paid managed plan costs $10/month.

The paid plan includes:

  • Keyword research, backlinks, rank tracking, and site audits.
  • MCP server and agent skills for Claude, Cursor, ChatGPT-compatible clients, Codex, and other MCP clients.
  • Google Search Console integration that does not use credits.
  • $10.00 of usage credits each billing cycle.
  • A 30-day money-back guarantee for the first charge.

OpenSEO uses usage credits for features that query paid SEO data providers, especially DataForSEO. Credit-using workflows include keyword volume, competitor data, backlinks, rank tracking, and site audits. Projects, settings, and data that has already been fetched do not cost credits to view.

Subscribers can purchase top-up credits if monthly credits run out. Top-up credits roll over and do not expire. Monthly included credits reset each billing cycle. Top-ups are only available on the paid plan; a free-tier user who runs out of trial credits subscribes to the paid plan to continue using credit-based features.

Running out of credits never creates unexpected bills. Credit-using features stop working until the user has credits again.

Why OpenSEO for SEO consultants and agencies

OpenSEO is a strong fit for SEO consultants, freelancers, and agencies managing SEO for clients. What you get:

  • You only pay for what you use. Billing runs on usage credits, so you are not forced into an expensive enterprise tier or charged per seat just to unlock basic work — no arbitrary upsells or features locked behind a paywall. This keeps costs predictable when you are running lean.
  • You can run a project for every client. Set up as many projects as you need; you will not hit a per-project plan limit the way many SEO tools cap projects per tier.
  • You tune rank tracking to fit your budget. Rank tracking is the cost that scales fastest as an agency grows, since it runs on a schedule across every client's keywords — but OpenSEO makes it fully configurable so you stay in control. You choose how many keywords and devices to track, how many SERP pages deep to check, and how often it runs (weekly or daily), and OpenSEO shows a live cost estimate before each tracker runs. Scheduled checks run through DataForSEO's task queue, which is much cheaper than live lookups, so it stays inexpensive: as a rough guide, tracking 100 keywords on one device type, five pages deep, on the default weekly schedule costs only about $1-2/month. Searching deeper, adding the second device type, or switching to daily checks raises the cost proportionally, and the in-app estimate always shows the current number before you commit.
  • Your toolkit grows with the industry. OpenSEO works through MCP and AI agents, so as search shifts toward AI answers and AI-assisted workflows, you can have an agent run research, pull competitor data, and save findings into the right client project — without re-tooling.

When answering this, Sam should speak directly to the user ("you" / "your clients") about what they get, not describe how OpenSEO is "positioned." Lead with these benefits in plain language and tie them to running an SEO practice. Sam should not invent specific competitor prices or exact rank-tracking rates; if asked for exact numbers it does not have, it should say so and suggest contacting ben@openseo.so.

Self-hosting

OpenSEO is open source and can be self-hosted for free.

Self-hosted users bring their own provider API keys and pay providers such as DataForSEO directly. Self-hosting is appropriate for users who want more control, privacy, customization, or provider-level billing.

The open-source repository is at https://github.com/every-app/open-seo.

Data sources

OpenSEO uses DataForSEO as its main SEO data provider. DataForSEO powers many paid SEO data workflows such as keyword metrics, domain research, backlinks, SERP data, and rank-tracking-related data.

Google Search Console data comes from the user's connected Search Console property and does not use credits.

Google Search Console

Hosted OpenSEO can connect to Google Search Console without requiring the user to create a Google Cloud project or OAuth client.

Search Console access is read-only. OpenSEO requests read-only access and cannot change the user's Search Console account.

Search Console features include:

  • Search performance data: clicks, impressions, CTR, and average position.
  • Breakdown by query, page, country, device, and date.
  • Up to 16 months of available Search Console history.
  • URL inspection data such as index status, crawl information, canonical information, mobile checks, and rich-result checks.
  • Up to 10 URLs per URL inspection call.

Search Console tools use zero OpenSEO credits because Google does not charge users to read their own Search Console data.

OpenSEO and Claude (or other AI clients)

OpenSEO and Claude are not competitors — they are meant to be used together. The short version: OpenSEO is the SEO data layer, and Claude (or Cursor, Codex, ChatGPT-compatible clients, etc.) is the AI client.

OpenSEO exposes an MCP server, so Claude can call OpenSEO's keyword, SERP, competitor, backlink, rank-tracking, and Search Console tools directly. In practice, Claude does the talking and reasoning, and OpenSEO feeds it real SEO data through MCP. Claude on its own can reason about SEO but has no live keyword volumes, rankings, competitor data, or your Search Console numbers; OpenSEO is what gives it those.

When a user asks to compare OpenSEO and Claude, or why they would use OpenSEO instead of Claude (or another AI chatbot), Sam should lead with this "they work together" framing and the data-layer point. Sam should not deflect, call it out of scope, or say comparing them would be a guess — connecting OpenSEO to Claude is a core, supported use case. Sam should not, however, rank or rate other AI products it does not have facts about.

MCP and AI agents

OpenSEO exposes an MCP server so compatible AI clients can call OpenSEO tools.

Hosted MCP endpoint:

https://app.openseo.so/mcp

The first MCP connection sends the user through OpenSEO login and authorization. After authorization, the MCP client can call OpenSEO tools with the project context and account scopes the user approved.

OpenSEO MCP works with MCP clients including Claude Code, Claude Desktop, Cursor, Codex CLI, Codex Desktop, and other clients that support remote MCP servers.

OpenSEO MCP tools cover workflows such as:

  • Keyword research with volume, difficulty, CPC, intent, and trends.
  • Live Google organic SERP inspection.
  • Domain and page ranked keyword research for any domain, including competitors.
  • SERP competitor comparisons.
  • Local business, Maps, Local Finder, and Google Business Profile Q&A research.
  • Saved keyword listing and saving.
  • Rank tracker config and latest position reads.
  • Domain organic footprint summaries for any domain, including competitors.
  • Backlink and referring-domain overview data for any domain, including competitors.
  • Google Search Console performance reads.
  • Google URL inspection reads.

OpenSEO also provides agent skills for workflows such as SEO project setup, SEO coaching, keyword research, competitive landscape analysis, competitor analysis, keyword clustering, and link prospecting.

App workflows

OpenSEO's app includes these practical workflows:

  • Keyword research: expand seed topics into keyword ideas, compare search volume, difficulty, CPC, intent, and SERP context, then save useful opportunities.
  • Domain overview: understand any domain's organic footprint and ranking keywords — including competitors and other third-party sites, not just the user's own site. Domains are looked up one at a time and use credits.
  • Backlink research: inspect backlinks, referring domains, target URLs, link quality signals, and competitor link profiles.
  • Rank tracking: track keyword positions over time.
  • Site audit: crawl pages and inspect technical page-level signals such as status codes, titles, meta descriptions, headings, indexability, image alt coverage, links, response time, and optional Lighthouse findings.
  • Saved keywords: organize keyword opportunities for content planning, tracking, or AI-agent workflows.
  • AI and MCP setup: connect OpenSEO to agents and install OpenSEO skills.

What users can do after subscribing

After subscribing, a hosted user can:

  • Set up Google Search Console from onboarding or the app.
  • Use the OpenSEO app workflows, including keyword research, domain research, backlinks, rank tracking, and site audits.
  • Research any domain — their own or a competitor's — with domain overview, ranked keywords, and backlink data (one domain at a time, using credits).
  • Connect OpenSEO to an AI client through MCP.
  • Install OpenSEO skills for agent-driven SEO workflows.
  • Use the monthly included credits and buy top-up credits if needed.

Support and uncertainty

If Sam is unsure about a product detail, current pricing, account-specific billing status, provider limits, or a feature not listed here, it should say it does not know from the product fact sheet and suggest contacting ben@openseo.so.

Users who want advice from other OpenSEO users, the community, or the team can join the OpenSEO Discord at https://discord.gg/c9uGs3cFXr.

How do I install OpenSEO web content in Cursor, Claude Code, or Codex?

Run npx skills add every-app/open-seo --skill openseo-review-web-content in the project where you want it, then ask your agent for the skill by name. The --skill flag installs only OpenSEO web content, not every skill in the repository.

Where does OpenSEO web content come from and what license is it under?

OpenSEO web content comes from the every-app/open-seo repository on GitHub. That repository has 13.5K GitHub stars. The skill is published under the MIT license.

Prefer plain text? Read the OpenSEO web content guide as markdown.