SERP title/meta optimization for striking-distance keywords (#254)
This commit is contained in:
parent
8a85b7b794
commit
f7e5729a09
@ -7,21 +7,21 @@ date: "2026-06-05"
|
|||||||
|
|
||||||
There are a lot of open source SEO projects on GitHub, but only a handful are mature enough to rely on. This guide covers those, plus a few honorable mentions worth watching or testing.
|
There are a lot of open source SEO projects on GitHub, but only a handful are mature enough to rely on. This guide covers those, plus a few honorable mentions worth watching or testing.
|
||||||
|
|
||||||
In the past, open source SEO tools struggled because they lacked quality data. Beyond auditing, most SEO tasks have a cost and the projects in this guide aren't totally free. For example, rank tracking requires SERP results from around the world. Coming up with a content strategy means you need accurate search volumes and backlink indexes. The tools in this list rely on paid third-party services, but they still cost far less than the equivalent legacy SaaS tools.
|
In the past, open source SEO tools struggled because they lacked quality data. Beyond auditing, most SEO tasks have a cost, so most of the projects in this guide aren't totally free. For example, rank tracking requires SERP results from around the world. Coming up with a content strategy means you need accurate search volumes and backlink indexes. Most of the tools in this list rely on paid third-party services, but they still cost far less than the equivalent legacy SaaS tools.
|
||||||
|
|
||||||
Note: OpenSEO publishes this guide, and OpenSEO is one of the tools listed, as the project has 2,000+ stars on GitHub. We have tried to make this useful even if you never touch it. We love open source and think it's the future of SEO tools: [openseo.so/open-source-seo](/open-source-seo).
|
Note: OpenSEO publishes this guide, and OpenSEO is one of the tools listed, as the project has 2,000+ stars on GitHub. We have tried to make this useful even if you never touch it. We love open source and think it's the future of SEO tools: [openseo.so/open-source-seo](/open-source-seo).
|
||||||
|
|
||||||
## The main tools at a glance
|
## The main tools at a glance
|
||||||
|
|
||||||
| Tool | Stars | What it does | Requirements | Self-hosting |
|
| Tool | Stars | What it does | Cost to run | Self-hosting |
|
||||||
| --- | --- | --- | --- | --- |
|
| ---------------------------------------------------------- | ----- | ---------------------------------------------------------------------------------- | -------------------------------------------------- | ---------------------------------- |
|
||||||
| [OpenSEO](https://github.com/every-app/open-seo) | 2.1k | All-in-one: keyword research, rank tracking, backlinks, site audits, AI visibility | DataForSEO API key | Docker or Cloudflare Workers |
|
| [OpenSEO](https://github.com/every-app/open-seo) | 2.1k | All-in-one: keyword research, rank tracking, backlinks, site audits, AI visibility | DataForSEO usage (your own API key, pay-as-you-go) | Docker or Cloudflare Workers |
|
||||||
| [SerpBear](https://github.com/towfiqi/serpbear) | 2.0k | Rank tracking | A SERP API provider | Docker |
|
| [SerpBear](https://github.com/towfiqi/serpbear) | 2.0k | Rank tracking | SERP API usage (provider of your choice) | Docker |
|
||||||
| [SEONaut](https://github.com/StJudeWasHere/seonaut) | 717 | Technical SEO and site audits | None | Docker |
|
| [SEONaut](https://github.com/StJudeWasHere/seonaut) | 717 | Technical SEO and site audits | Free | Docker |
|
||||||
| [LibreCrawl](https://github.com/PhialsBasement/LibreCrawl) | 681 | Site crawling and SEO audits | None | Desktop or web |
|
| [LibreCrawl](https://github.com/PhialsBasement/LibreCrawl) | 681 | Site crawling and SEO audits | Free | Desktop or web |
|
||||||
| [SEOMachine](https://github.com/TheCraigHewitt/seomachine) | 7.1k | SEO content writing inside Claude Code | Claude Code + Anthropic API key | Clone the repo, run in Claude Code |
|
| [SEOMachine](https://github.com/TheCraigHewitt/seomachine) | 7.1k | SEO content writing inside Claude Code | Anthropic API usage | Clone the repo, run in Claude Code |
|
||||||
|
|
||||||
*Star counts are updated monthly. Last updated June 5, 2026.*
|
_Star counts are updated monthly. Last updated June 5, 2026._
|
||||||
|
|
||||||
## OpenSEO
|
## OpenSEO
|
||||||
|
|
||||||
|
|||||||
@ -34,6 +34,24 @@ After adding the server, approve the OpenSEO login when prompted.
|
|||||||
|
|
||||||
Claude Desktop custom connectors require a Claude plan that supports custom connectors.
|
Claude Desktop custom connectors require a Claude plan that supports custom connectors.
|
||||||
|
|
||||||
|
## Cursor
|
||||||
|
|
||||||
|
1. Open Cursor Settings -> Tools & Integrations -> MCP Tools.
|
||||||
|
2. Click New MCP Server. Cursor opens `mcp.json`.
|
||||||
|
3. Add:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"mcpServers": {
|
||||||
|
"openseo": {
|
||||||
|
"url": "https://app.openseo.so/mcp"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Approve the OpenSEO login when prompted.
|
||||||
|
|
||||||
## Codex CLI
|
## Codex CLI
|
||||||
|
|
||||||
Run this in your terminal:
|
Run this in your terminal:
|
||||||
|
|||||||
@ -1,18 +1,56 @@
|
|||||||
---
|
---
|
||||||
title: Free Google Search Console MCP
|
title: "Google Search Console MCP Server: No Google Cloud Setup"
|
||||||
description: Connect Google Search Console to your AI agent for free. Read clicks, impressions, CTR, position, and indexing through the OpenSEO MCP, with no Google Cloud setup.
|
description: Connect Google Search Console to Claude, Cursor, or any MCP client — no Google Cloud project needed. Query clicks, impressions, CTR, position, and indexing.
|
||||||
---
|
---
|
||||||
|
|
||||||
Many Google Search Console (GSC) MCP servers are open source and free, but they take a lot of effort to set up. You need to create a Google Cloud project, enable an API, build an OAuth client, download a `credentials.json`, then keep a local server running. OpenSEO handles the Google connection for you. You sign up, connect your property, and start asking.
|
Most Google Search Console (GSC) MCP servers are open source, but they take a lot of effort to set up. You need to create a Google Cloud project, enable an API, build an OAuth client, download a `credentials.json`, then keep a local server running. OpenSEO handles the Google connection for you. You sign up, connect your property, and start asking.
|
||||||
|
|
||||||
## Setup: Simple, zero-config
|
## Setup: no Google Cloud project
|
||||||
|
|
||||||
### With OpenSEO
|
|
||||||
|
|
||||||
1. Sign up for OpenSEO.
|
1. Sign up for OpenSEO.
|
||||||
2. Go through the onboarding.
|
2. Go through the onboarding. When prompted, click **Connect Search Console** and pick your property.
|
||||||
2. When prompted, click **Connect Search Console** and pick your property.
|
3. Add the OpenSEO MCP endpoint to your client (steps below) and approve the OpenSEO login when prompted.
|
||||||
3. Add the [OpenSEO MCP endpoint](/docs/mcp) to Claude, Cursor, or ChatGPT.
|
|
||||||
|
The hosted MCP server URL is:
|
||||||
|
|
||||||
|
```txt
|
||||||
|
https://app.openseo.so/mcp
|
||||||
|
```
|
||||||
|
|
||||||
|
### Claude Code
|
||||||
|
|
||||||
|
```bash
|
||||||
|
claude mcp add --transport http --scope user openseo https://app.openseo.so/mcp
|
||||||
|
```
|
||||||
|
|
||||||
|
### Claude Desktop
|
||||||
|
|
||||||
|
1. Open Settings → Connectors.
|
||||||
|
2. Click **Add custom connector**.
|
||||||
|
3. Paste `https://app.openseo.so/mcp`.
|
||||||
|
|
||||||
|
### Cursor
|
||||||
|
|
||||||
|
1. Open Cursor Settings → Tools & Integrations → MCP Tools.
|
||||||
|
2. Click **New MCP Server** (this opens `mcp.json`) and add:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"mcpServers": {
|
||||||
|
"openseo": {
|
||||||
|
"url": "https://app.openseo.so/mcp"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Codex CLI
|
||||||
|
|
||||||
|
```bash
|
||||||
|
codex mcp add openseo --url https://app.openseo.so/mcp
|
||||||
|
```
|
||||||
|
|
||||||
|
Any other MCP client works the same way: add `https://app.openseo.so/mcp` as a remote server and sign in. Full setup and troubleshooting live in the [MCP docs](/docs/mcp).
|
||||||
|
|
||||||
### The DIY way (every other GSC MCP)
|
### The DIY way (every other GSC MCP)
|
||||||
|
|
||||||
@ -41,9 +79,9 @@ Two read-only tools over the property you connect. Both pull Google's own number
|
|||||||
|
|
||||||
The agent can read and inspect. It cannot change anything in your account.
|
The agent can read and inspect. It cannot change anything in your account.
|
||||||
|
|
||||||
## Why it's free (and what isn't)
|
## What it costs
|
||||||
|
|
||||||
Google doesn't charge you to read your own Search Console data, so neither do we. The Search Console tools use zero credits. When you want more, like keyword research, rank tracking, or backlink data, those tools run through the same MCP and use credits. Connect Search Console first, and reach for the rest when you need it.
|
The Search Console tools use zero credits — Google doesn't charge you to read your own data, so reading it through OpenSEO never burns usage. They're included with the OpenSEO plan ($10/month, which includes monthly usage credits for the research tools), alongside the credit-based tools (keyword research, rank tracking, backlinks) that run through the same MCP endpoint. If you'd rather not pay at all, OpenSEO is open source and free to self-host — see the FAQ below.
|
||||||
|
|
||||||
## OpenSEO vs. the alternatives
|
## OpenSEO vs. the alternatives
|
||||||
|
|
||||||
@ -51,9 +89,9 @@ Google doesn't charge you to read your own Search Console data, so neither do we
|
|||||||
|
|
||||||
## FAQ
|
## FAQ
|
||||||
|
|
||||||
### Is it really free?
|
### What does it cost?
|
||||||
|
|
||||||
Yes, all you need is an OpenSEO account. OpenSEO's other features do use usage credits, but aren't necessary to use the Google Search Console MCP.
|
The Search Console MCP tools are included with the $10/month OpenSEO plan and use zero credits. OpenSEO's other tools (keyword research, rank tracking, backlinks) use the usage credits included with the plan, through the same endpoint. Self-hosting is free.
|
||||||
|
|
||||||
### Is it open source?
|
### Is it open source?
|
||||||
|
|
||||||
@ -65,7 +103,7 @@ Yes. OpenSEO requests read-only access (`webmasters.readonly`). Your agent can r
|
|||||||
|
|
||||||
### Which AI clients work?
|
### Which AI clients work?
|
||||||
|
|
||||||
Any MCP client, including Claude Code, Cursor, Codex, and OpenClaw. Add the OpenSEO MCP endpoint and sign in.
|
Any MCP client, including Claude Code, Claude Desktop, Cursor, Codex, and OpenClaw. Add the OpenSEO MCP endpoint and sign in.
|
||||||
|
|
||||||
### How fresh is the data?
|
### How fresh is the data?
|
||||||
|
|
||||||
|
|||||||
@ -37,7 +37,10 @@ const ROWS: { label: string; cells: Cell[] }[] = [
|
|||||||
{
|
{
|
||||||
label: "Price",
|
label: "Price",
|
||||||
cells: [
|
cells: [
|
||||||
{ text: "Free, no credits", tone: "positive" },
|
{
|
||||||
|
text: "Included in the $10/mo plan, zero credits (free to self-host)",
|
||||||
|
tone: "positive",
|
||||||
|
},
|
||||||
{ text: "Free (your time + your own quota)" },
|
{ text: "Free (your time + your own quota)" },
|
||||||
{ text: "Paid or limited free tier", tone: "negative" },
|
{ text: "Paid or limited free tier", tone: "negative" },
|
||||||
],
|
],
|
||||||
|
|||||||
@ -257,14 +257,14 @@ export const featurePages = {
|
|||||||
slug: FEATURE_PAGE_SLUGS.domainOverview,
|
slug: FEATURE_PAGE_SLUGS.domainOverview,
|
||||||
eyebrow: "Domain Overview",
|
eyebrow: "Domain Overview",
|
||||||
navDescription: "Analyze competitor visibility.",
|
navDescription: "Analyze competitor visibility.",
|
||||||
title: "Domain analysis tool for competitor SEO research",
|
title: "Domain overview: traffic, keywords, and pages for any domain",
|
||||||
description:
|
description:
|
||||||
"Review a domain's estimated organic traffic, organic keyword count, and ranking keyword and page data before deciding where to compete.",
|
"Get a domain overview of any website: estimated organic traffic, ranking keywords, and top organic pages, with one click into backlink and keyword research.",
|
||||||
primaryKeyword: "domain analysis tool",
|
primaryKeyword: "domain overview",
|
||||||
secondaryKeywords: [
|
secondaryKeywords: [
|
||||||
|
"domain analysis tool",
|
||||||
"competitor keyword analysis tool",
|
"competitor keyword analysis tool",
|
||||||
"website traffic checker",
|
"website traffic checker",
|
||||||
"competitor analysis seo tool",
|
|
||||||
],
|
],
|
||||||
imageAlt: "OpenSEO domain overview",
|
imageAlt: "OpenSEO domain overview",
|
||||||
imageSrc:
|
imageSrc:
|
||||||
@ -312,9 +312,14 @@ export const featurePages = {
|
|||||||
],
|
],
|
||||||
faqs: [
|
faqs: [
|
||||||
{
|
{
|
||||||
question: "What does a domain analysis tool show?",
|
question: "What is a domain overview?",
|
||||||
answer:
|
answer:
|
||||||
"It summarizes a domain's organic footprint, including estimated traffic, organic keyword count, ranking keywords, and top organic pages.",
|
"A domain overview is a snapshot of a website's organic search footprint: estimated organic traffic, how many keywords it ranks for, its top ranking keywords, and its top organic pages. It's usually the first step in competitor research because it shows where a site earns its visibility.",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
question: "How does this compare to Semrush Domain Overview?",
|
||||||
|
answer:
|
||||||
|
"OpenSEO covers the core of the same report (estimated traffic, organic keywords, top keywords, and top pages) without a triple-digit monthly seat. OpenSEO is open source, so you can self-host it, and the managed app is $10/month and includes usage credits.",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
question: "Can OpenSEO help with competitor keyword analysis?",
|
question: "Can OpenSEO help with competitor keyword analysis?",
|
||||||
|
|||||||
@ -8,7 +8,7 @@ const page = featurePages.domainOverview;
|
|||||||
export const Route = createFileRoute("/_marketing/features/domain-overview")({
|
export const Route = createFileRoute("/_marketing/features/domain-overview")({
|
||||||
head: () =>
|
head: () =>
|
||||||
buildPageSeo({
|
buildPageSeo({
|
||||||
title: "Domain Analysis Tool",
|
title: "Domain Overview Tool: Traffic, Keywords & Top Pages",
|
||||||
description: page.description,
|
description: page.description,
|
||||||
path: "/features/domain-overview",
|
path: "/features/domain-overview",
|
||||||
titleSuffix: "OpenSEO",
|
titleSuffix: "OpenSEO",
|
||||||
|
|||||||
@ -8,7 +8,7 @@ const featuresDescription =
|
|||||||
export const Route = createFileRoute("/_marketing/features/")({
|
export const Route = createFileRoute("/_marketing/features/")({
|
||||||
head: () =>
|
head: () =>
|
||||||
buildPageSeo({
|
buildPageSeo({
|
||||||
title: "OpenSEO Features",
|
title: "Features",
|
||||||
description: featuresDescription,
|
description: featuresDescription,
|
||||||
path: "/features",
|
path: "/features",
|
||||||
titleSuffix: "OpenSEO",
|
titleSuffix: "OpenSEO",
|
||||||
@ -69,7 +69,7 @@ function FeaturesIndex() {
|
|||||||
Search Console MCP
|
Search Console MCP
|
||||||
</p>
|
</p>
|
||||||
<h3 className="mt-2 text-lg font-semibold text-neutral-900">
|
<h3 className="mt-2 text-lg font-semibold text-neutral-900">
|
||||||
Free Google Search Console MCP
|
Google Search Console MCP — no Google Cloud setup
|
||||||
</h3>
|
</h3>
|
||||||
<p className="mt-2 text-sm leading-relaxed text-neutral-600">
|
<p className="mt-2 text-sm leading-relaxed text-neutral-600">
|
||||||
Let your agent read clicks, impressions, CTR, position, and URL
|
Let your agent read clicks, impressions, CTR, position, and URL
|
||||||
|
|||||||
@ -2,7 +2,7 @@ import { createFileRoute } from "@tanstack/react-router";
|
|||||||
import { buildPageSeo } from "@/lib/seo";
|
import { buildPageSeo } from "@/lib/seo";
|
||||||
|
|
||||||
const mcpDescription =
|
const mcpDescription =
|
||||||
"Connect OpenSEO MCP so compatible AI clients can call keyword, SERP, domain, backlink, saved keyword, rank-tracking, and Google Search Console tools.";
|
"Give Claude, Cursor, or any MCP client real SEO tools: keyword research, live SERPs, backlinks, rank tracking, and Search Console data via one MCP server.";
|
||||||
|
|
||||||
const toolCategories = [
|
const toolCategories = [
|
||||||
{
|
{
|
||||||
@ -20,6 +20,11 @@ const toolCategories = [
|
|||||||
title: "Save keywords",
|
title: "Save keywords",
|
||||||
description: "Keep useful ideas organized in your OpenSEO project.",
|
description: "Keep useful ideas organized in your OpenSEO project.",
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: "Get rank tracker data",
|
||||||
|
description:
|
||||||
|
"Read tracked-keyword positions and latest results from your project's rank trackers.",
|
||||||
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -52,37 +57,37 @@ const toolCategories = [
|
|||||||
description:
|
description:
|
||||||
"Check index coverage, crawl, canonical, mobile, and rich-result signals.",
|
"Check index coverage, crawl, canonical, mobile, and rich-result signals.",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
title: "Use first-party data",
|
|
||||||
description:
|
|
||||||
"Run read-only Search Console calls for free with no OpenSEO credits.",
|
|
||||||
},
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
] as const;
|
] as const;
|
||||||
|
|
||||||
const workflows = [
|
const workflows = [
|
||||||
{
|
{
|
||||||
title: "Research with live SEO data",
|
title: "First-pass keyword research",
|
||||||
description:
|
description:
|
||||||
"Give Codex, Claude, and other MCP clients access to OpenSEO keyword, SERP, domain, backlink, saved keyword, rank-tracking, and Search Console data.",
|
"Ask the agent to expand seed topics into keyword ideas with volume, difficulty, and CPC, then save the promising ones back to your OpenSEO project for human review.",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Keep the agent focused",
|
title: "Competitor teardown",
|
||||||
description:
|
description:
|
||||||
"Ask for a specific workflow like competitor analysis or keyword clustering instead of a vague SEO recommendation.",
|
"Point the agent at a competitor domain and have it pull the domain overview, ranking keywords, and backlink stats, then summarize where you can realistically compete.",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Save useful output",
|
title: "Striking-distance sweep from Search Console",
|
||||||
description:
|
description:
|
||||||
"Let the agent save promising keywords back to OpenSEO so human review and rank tracking can happen in the same workspace.",
|
"Have the agent read your GSC queries, find page-two keywords worth pushing to page one, and check the live SERP for each before recommending changes.",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Keyword clustering and tagging",
|
||||||
|
description:
|
||||||
|
"Let the agent group saved keywords by intent, tag them by page or topic cluster, and hand back a content plan you can act on in the OpenSEO UI.",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
export const Route = createFileRoute("/_marketing/features/mcp")({
|
export const Route = createFileRoute("/_marketing/features/mcp")({
|
||||||
head: () =>
|
head: () =>
|
||||||
buildPageSeo({
|
buildPageSeo({
|
||||||
title: "OpenSEO MCP",
|
title: "SEO MCP Server: Keyword, SERP & Backlink Tools",
|
||||||
description: mcpDescription,
|
description: mcpDescription,
|
||||||
path: "/features/mcp",
|
path: "/features/mcp",
|
||||||
titleSuffix: "OpenSEO",
|
titleSuffix: "OpenSEO",
|
||||||
@ -95,13 +100,14 @@ function McpPage() {
|
|||||||
<>
|
<>
|
||||||
<p className="text-sm font-medium text-neutral-500">OpenSEO MCP</p>
|
<p className="text-sm font-medium text-neutral-500">OpenSEO MCP</p>
|
||||||
<h1 className="mt-3 text-3xl font-bold tracking-tight leading-tight">
|
<h1 className="mt-3 text-3xl font-bold tracking-tight leading-tight">
|
||||||
OpenSEO MCP for AI SEO workflows
|
An SEO MCP server for AI agents
|
||||||
</h1>
|
</h1>
|
||||||
<p className="mt-4 text-neutral-700 leading-relaxed">
|
<p className="mt-4 text-neutral-700 leading-relaxed">
|
||||||
Connect OpenSEO to your AI agent so it can research keywords, inspect
|
OpenSEO is an SEO MCP server that connects Claude, Cursor, Codex, or any
|
||||||
SERPs, compare competitors, summarize backlink context, save keyword
|
MCP client to real data, so your agent can research keywords, inspect
|
||||||
opportunities, review rank-tracking data, and read first-party Search
|
live SERPs, compare competitor domains, summarize backlink context, save
|
||||||
Console signals with live SEO context.
|
keyword opportunities, review rank-tracking data, and read first-party
|
||||||
|
Search Console signals.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div className="mt-6 flex flex-col gap-3 sm:flex-row">
|
<div className="mt-6 flex flex-col gap-3 sm:flex-row">
|
||||||
@ -120,17 +126,26 @@ function McpPage() {
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<section className="mt-12">
|
<section className="mt-12">
|
||||||
<h2 className="text-xl font-semibold">What it does</h2>
|
<h2 className="text-xl font-semibold">What is an SEO MCP server?</h2>
|
||||||
<p className="mt-2 text-sm leading-relaxed text-neutral-600">
|
<p className="mt-2 text-sm leading-relaxed text-neutral-600">
|
||||||
MCP lets compatible AI clients call OpenSEO research tools directly.
|
MCP (Model Context Protocol) is the standard AI clients use to call
|
||||||
After connecting OpenSEO through a supported MCP client, your agent
|
external tools. An SEO MCP server exposes SEO data (keyword metrics,
|
||||||
can perform structured SEO research with data from your OpenSEO
|
SERP results, domain and backlink stats) as tools an agent can call
|
||||||
project instead of relying on generic guesses.
|
mid-conversation. Instead of guessing at search volumes or rankings,
|
||||||
|
your agent queries real data from your OpenSEO project, and can save
|
||||||
|
its findings back so you can review them in the UI. Pair it with{" "}
|
||||||
|
<a
|
||||||
|
href="/features/keyword-research"
|
||||||
|
className="font-medium text-neutral-900 underline decoration-neutral-300 underline-offset-4 transition-colors hover:text-neutral-700"
|
||||||
|
>
|
||||||
|
keyword research
|
||||||
|
</a>{" "}
|
||||||
|
for an agent-driven first pass over any topic.
|
||||||
</p>
|
</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section className="mt-12">
|
<section className="mt-12">
|
||||||
<h2 className="text-xl font-semibold">Useful workflows</h2>
|
<h2 className="text-xl font-semibold">Agent workflows that work</h2>
|
||||||
<ol className="mt-6 space-y-6">
|
<ol className="mt-6 space-y-6">
|
||||||
{workflows.map((workflow, index) => (
|
{workflows.map((workflow, index) => (
|
||||||
<li
|
<li
|
||||||
@ -180,12 +195,13 @@ function McpPage() {
|
|||||||
|
|
||||||
<section className="mt-12 rounded-lg border border-neutral-200 bg-white p-5">
|
<section className="mt-12 rounded-lg border border-neutral-200 bg-white p-5">
|
||||||
<h2 className="text-lg font-semibold text-neutral-900">
|
<h2 className="text-lg font-semibold text-neutral-900">
|
||||||
New: free Google Search Console MCP
|
Google Search Console MCP — no Google Cloud setup
|
||||||
</h2>
|
</h2>
|
||||||
<p className="mt-2 text-sm leading-relaxed text-neutral-600">
|
<p className="mt-2 text-sm leading-relaxed text-neutral-600">
|
||||||
OpenSEO MCP can read Search Console performance and URL inspection
|
OpenSEO MCP can read Search Console performance and URL inspection
|
||||||
data from a connected hosted project. These tools are read-only and do
|
data from a connected hosted project. No Google Cloud project or OAuth
|
||||||
not use OpenSEO credits.
|
credentials needed. These tools are read-only and do not use OpenSEO
|
||||||
|
credits.
|
||||||
</p>
|
</p>
|
||||||
<div className="mt-4">
|
<div className="mt-4">
|
||||||
<a
|
<a
|
||||||
|
|||||||
@ -17,11 +17,6 @@ const softwareApplicationLd = {
|
|||||||
operatingSystem: "Web",
|
operatingSystem: "Web",
|
||||||
url: toCanonicalUrl(PATH),
|
url: toCanonicalUrl(PATH),
|
||||||
description: frontmatter.description,
|
description: frontmatter.description,
|
||||||
offers: {
|
|
||||||
"@type": "Offer",
|
|
||||||
price: "0",
|
|
||||||
priceCurrency: "USD",
|
|
||||||
},
|
|
||||||
provider: {
|
provider: {
|
||||||
"@type": "Organization",
|
"@type": "Organization",
|
||||||
name: "OpenSEO",
|
name: "OpenSEO",
|
||||||
@ -32,7 +27,7 @@ const softwareApplicationLd = {
|
|||||||
export const Route = createFileRoute("/_marketing/google-search-console-mcp")({
|
export const Route = createFileRoute("/_marketing/google-search-console-mcp")({
|
||||||
head: () =>
|
head: () =>
|
||||||
buildPageSeo({
|
buildPageSeo({
|
||||||
title: "Free Google Search Console MCP",
|
title: "Google Search Console MCP Server: No Google Cloud Setup",
|
||||||
description: frontmatter.description,
|
description: frontmatter.description,
|
||||||
path: PATH,
|
path: PATH,
|
||||||
titleSuffix: "OpenSEO",
|
titleSuffix: "OpenSEO",
|
||||||
@ -58,7 +53,7 @@ function GoogleSearchConsoleMcpPage() {
|
|||||||
href="https://app.openseo.so/sign-up"
|
href="https://app.openseo.so/sign-up"
|
||||||
className="inline-flex h-10 items-center justify-center rounded-md bg-neutral-950 px-5 text-sm font-medium text-white transition-colors hover:bg-neutral-800"
|
className="inline-flex h-10 items-center justify-center rounded-md bg-neutral-950 px-5 text-sm font-medium text-white transition-colors hover:bg-neutral-800"
|
||||||
>
|
>
|
||||||
Try it now
|
Get started
|
||||||
<span className="ml-2" aria-hidden="true">
|
<span className="ml-2" aria-hidden="true">
|
||||||
→
|
→
|
||||||
</span>
|
</span>
|
||||||
@ -92,15 +87,15 @@ function GoogleSearchConsoleMcpCta() {
|
|||||||
Point your AI at your real search data
|
Point your AI at your real search data
|
||||||
</p>
|
</p>
|
||||||
<p className="mt-2 text-sm leading-relaxed text-neutral-600">
|
<p className="mt-2 text-sm leading-relaxed text-neutral-600">
|
||||||
Free to connect. No Google Cloud project. Works with Claude, Cursor, and
|
No Google Cloud project. Zero credits to read your own data. Works with
|
||||||
ChatGPT.
|
Claude, Cursor, and Codex.
|
||||||
</p>
|
</p>
|
||||||
<div className="mt-5 flex flex-col gap-3 sm:flex-row">
|
<div className="mt-5 flex flex-col gap-3 sm:flex-row">
|
||||||
<a
|
<a
|
||||||
href="https://app.openseo.so/sign-up"
|
href="https://app.openseo.so/sign-up"
|
||||||
className="inline-flex h-10 items-center justify-center rounded-md bg-neutral-950 px-4 text-sm font-medium text-white transition-colors hover:bg-neutral-800"
|
className="inline-flex h-10 items-center justify-center rounded-md bg-neutral-950 px-4 text-sm font-medium text-white transition-colors hover:bg-neutral-800"
|
||||||
>
|
>
|
||||||
Try it now
|
Get started
|
||||||
<span className="ml-2" aria-hidden="true">
|
<span className="ml-2" aria-hidden="true">
|
||||||
→
|
→
|
||||||
</span>
|
</span>
|
||||||
|
|||||||
@ -3,7 +3,7 @@ import { buildPageSeo } from "@/lib/seo";
|
|||||||
|
|
||||||
const homeTitle = "OpenSEO - Open Source SEO Platform";
|
const homeTitle = "OpenSEO - Open Source SEO Platform";
|
||||||
const homeDescription =
|
const homeDescription =
|
||||||
"Own your SEO. OpenSEO helps teams manage keyword research, backlink analysis, competitor monitoring, and site audits without expensive monthly SEO software subscriptions.";
|
"The open source SEO platform: keyword research, backlinks, rank tracking, and AI visibility. Self-host free (MIT) or use the managed app for $10/month.";
|
||||||
|
|
||||||
export const Route = createFileRoute("/_marketing/")({
|
export const Route = createFileRoute("/_marketing/")({
|
||||||
head: () =>
|
head: () =>
|
||||||
@ -23,11 +23,11 @@ function Home() {
|
|||||||
<>
|
<>
|
||||||
{/* Headline */}
|
{/* Headline */}
|
||||||
<h1 className="text-3xl font-bold tracking-tight leading-tight">
|
<h1 className="text-3xl font-bold tracking-tight leading-tight">
|
||||||
Own your SEO
|
The Open Source SEO Platform
|
||||||
</h1>
|
</h1>
|
||||||
|
|
||||||
<p className="text-neutral-700 mt-4 leading-relaxed">
|
<p className="text-neutral-700 mt-4 leading-relaxed">
|
||||||
Open source alternative to Semrush and Ahrefs
|
Own your SEO — a self-hostable alternative to Semrush and Ahrefs.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
{/* Features */}
|
{/* Features */}
|
||||||
@ -48,12 +48,22 @@ function Home() {
|
|||||||
|
|
||||||
{/* CTA */}
|
{/* CTA */}
|
||||||
<div className="mt-6">
|
<div className="mt-6">
|
||||||
|
<div className="flex flex-col gap-3 sm:flex-row">
|
||||||
<a
|
<a
|
||||||
href="https://app.openseo.so/sign-up"
|
href="https://app.openseo.so/sign-up"
|
||||||
className="inline-flex items-center justify-center h-10 px-5 text-sm font-medium bg-neutral-900 text-white rounded-md hover:bg-neutral-800 transition-colors"
|
className="inline-flex items-center justify-center h-10 px-5 text-sm font-medium bg-neutral-900 text-white rounded-md hover:bg-neutral-800 transition-colors"
|
||||||
>
|
>
|
||||||
Try now
|
Try now
|
||||||
</a>
|
</a>
|
||||||
|
<a
|
||||||
|
href="https://github.com/every-app/open-seo"
|
||||||
|
target="_blank"
|
||||||
|
rel="noopener noreferrer"
|
||||||
|
className="inline-flex items-center justify-center h-10 px-5 text-sm font-medium border border-neutral-300 text-neutral-900 rounded-md hover:border-neutral-900 transition-colors"
|
||||||
|
>
|
||||||
|
View on GitHub
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
<p className="text-xs text-neutral-500 mt-3">
|
<p className="text-xs text-neutral-500 mt-3">
|
||||||
No credit card required.
|
No credit card required.
|
||||||
</p>
|
</p>
|
||||||
@ -66,8 +76,16 @@ function Home() {
|
|||||||
Self-host via Docker or Cloudflare
|
Self-host via Docker or Cloudflare
|
||||||
</p>
|
</p>
|
||||||
<p className="text-sm text-neutral-600 mt-2 leading-relaxed">
|
<p className="text-sm text-neutral-600 mt-2 leading-relaxed">
|
||||||
100% open source (MIT). Bring your own DataForSEO api key. Fork and
|
100% open source (MIT). Bring your own DataForSEO API key. Fork and
|
||||||
vibe code custom features for your workflow.
|
vibe code custom features for your workflow. See how OpenSEO
|
||||||
|
compares to the other{" "}
|
||||||
|
<a
|
||||||
|
href="/blogs/best-open-source-seo-tools"
|
||||||
|
className="font-medium text-neutral-900 hover:text-neutral-700 transition-colors underline decoration-neutral-300 underline-offset-4"
|
||||||
|
>
|
||||||
|
open source SEO tools
|
||||||
|
</a>
|
||||||
|
.
|
||||||
</p>
|
</p>
|
||||||
<a
|
<a
|
||||||
href="https://github.com/every-app/open-seo"
|
href="https://github.com/every-app/open-seo"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user