Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Rankrat

by psyb0tversion 0.20.1i★ –iRuns on your computer
Registry nameio.github.psyb0t/rankrat

Install

Overview

Description from the maker (original English)

Self-hosted MCP for owned-site SEO, search analytics, indexing, monitoring, and safe remediation.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Marketing & social media

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • The registry lists no key to fill in.

You need

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "rankrat": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "docker.io/psyb0t/rankrat:v0.20.1"
      ]
    }
  }
}

Run this in your terminal

claude mcp add rankrat -- docker run -i --rm docker.io/psyb0t/rankrat:v0.20.1

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "rankrat": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "docker.io/psyb0t/rankrat:v0.20.1"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "rankrat": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "docker.io/psyb0t/rankrat:v0.20.1"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account psyb0t, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Marketing & social mediai

  • More stars than 0% of the other 2985 servers in this category
  • Published to the registry more recently than 52% of the other 2985 servers in this category
  • Basic checks equal to or better than 100% of the other 2985 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Rankrat safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.20.1) reached the registry 28 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Docker on your computer.

What can I use instead?

In the same category: MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

An MCP server retrieving transcripts of YouTube videos

Runs on your computer★ 495MITUpdated 10 days ago
Install

GA4 MCP server for AI agents: schema discovery, server-side aggregation, analysis-ready defaults.

Runs on your computer★ 244MITUpdated 10 days ago
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

rankrat

Every SEO signal lives in its own walled garden with its own dashboard, its own API, and its own bullshit auth dance: Search Console over here, GA4 over there, Bing Webmaster somewhere else, plus Cloudflare, Clarity, PageSpeed, CrUX, GTM, and Bing's backlink data. Point an agent at your rankings and it drowns juggling eight consoles. Rankrat drags all of them behind one self-hosted service, so you tell an agent the outcome you want and it inspects, creates, updates, or rips out provider resources through a single surface — REST and MCP, no dashboards.

It's a rat, not a burglar. You hand it the provider accounts; those credentials are the only authority it has. The resource lists in boundaries.json are inventory and URL-containment data — not a second permission system pretending to keep you safe. Rankrat writes by default; set RANKRAT_READ_ONLY=true and every mutating route and tool disappears from discovery. That's the one switch.

It speaks MCP over stdio, MCP over Streamable HTTP at /mcp, and a FastAPI JSON API under /v1/. Wrapper-managed HTTP gets a bearer; a hand-rolled loopback-only launch can drop it if you know what you're doing.

Status: alpha. The API and tool surface can still move before 1.0 — minor releases may break things on purpose (documented), so pin an exact release if you need it to hold still.

Contents

  • Capabilities
  • Quick start
  • Run it
  • Safety model
  • Documentation
  • Agent integrations
  • Development
  • Project information

Capabilities

AreaWhat Rankrat exposes
GoogleSearch Console analytics, inspection and sitemaps; GA4 inventory, historical and realtime reports, ecommerce, funnels, and audiences; Google Tag Manager containers, workspaces, tags, triggers, variables, versions, and publication; property, sitemap, indexing, ownership, onboarding, and rename writes
BingSearch, crawl, indexing, sitemap, backlink, quota, keyword, opportunity, cannibalization, site/submission, and safe content-submission operations
PerformancePageSpeed, Core Web Vitals, CrUX history, Microsoft Clarity insights, Cloudflare analytics, and isolated local Lighthouse audits
Site intelligenceWhole-site audits, schema eligibility, internal-link graphs, orphan pages, content opportunities, and cross-provider comparisons
Ownership and onboardingGoogle/Bing checks, provider-neutral DNS verification through Cloudflare, and idempotent GA4/Search Console/Bing onboarding
BacklinksBing Webmaster backlink intelligence for configured sites
Monitoring and remediationPersistent monitors and issue history, sitemap/URL resubmission, IndexNow, exact Cloudflare purges, finite cache templates, and managed edge redirects

What the runtime advertises is what it does — no hidden endpoints. A read-only deployment drops every write from discovery; a writable one exposes onboarding alongside the rest. The whole list is the MCP tool catalog and the generated OpenAPI document.

Quick start

Install the rankrat command, create the credentials for the providers you want, then run it. Docker is the only runtime requirement.

Install

Download the installer, read it, then run it — per-user (no root) or system-wide:

curl -fsSL https://raw.githubusercontent.com/psyb0t/rankrat/main/install.sh -o rankrat-install.sh

less rankrat-install.sh bash rankrat-install.sh # per-user -> ~/.local/bin/rankrat sudo bash rankrat-install.sh --system # system-wide -> /usr/local/bin/rankrat

The mode auto-detects from who runs it; --user / --system force it and --uninstall removes the command. This puts the rankrat wrapper — a readable script that drives the published Docker images — on your PATH. Prefer to work from a source checkout? Clone the repo and use ./rankrat or the make targets instead; see Getting started.

Set up

Run setup. It lists every provider, you pick the ones you actually use, and it walks you through creating each credential — the exact console clicks for Google OAuth, the Bing Webmaster key, the Cloudflare token, the Clarity token — then hides every value you paste. No copying token permissions out of a README:

rankrat setup

Configuring Google? Paste the one-line Desktop OAuth client JSON at the hidden prompt when setup asks — same as every other credential.

Setup validates account access — it does not submit URLs or create properties. Your profile lives in ~/.config/rankrat; override it per launch with rankrat --data-dir /absolute/path or RANKRAT_DATA_DIR for a separate profile per account or workspace. Want to read the credential steps ahead of time, or what each provider actually gives you? See Providers and credentials. From a source checkout the setup step is make setup.

Run it

rankrat            # MCP over stdio (default)

rankrat http -d # REST + Streamable-HTTP MCP + Lighthouse, detached with restarts rankrat upgrade # re-pin to the latest release, pull it, drop the previous image

From a source checkout: make run (stdio) and make run-http (HTTP over Compose, attached).

rankrat setup pins both psyb0t/rankrat and psyb0t/rankrat-lighthouse to the latest release tag — recorded, along with the HTTP port and read-only flag, in a .env at your profile root — rather than tracking the moving :latest. rankrat upgrade re-pins the images to the newest release, pulls both, restarts a running HTTP stack (reusing the recorded port and read-only flag), and removes the superseded images; it leaves the port and read-only lines untouched. Pass --rolling (or set RANKRAT_ROLLING=1) to use the moving :latest images for a single run without touching the recorded pin. RANKRAT_IMAGE, RANKRAT_LIGHTHOUSE_IMAGE, RANKRAT_HTTP_PORT, and RANKRAT_READ_ONLY still override the recorded values per run.

To set the host settings once instead of per run, put them in a permanent host env file at ~/.config/rankrat/.env (override the path with RANKRAT_ENV_FILE). The wrapper reads it before selecting a profile, so it can set RANKRAT_DATA_DIR (which profile to use) along with RANKRAT_READ_ONLY, RANKRAT_IMAGE, RANKRAT_LIGHTHOUSE_IMAGE, RANKRAT_HTTP_PORT, RANKRAT_OAUTH_CALLBACK_PORT, and RANKRAT_ROLLING. It only fills a variable that is unset or empty, so a --data-dir flag or a real env var still overrides it. This is especially handy for MCP launchers that run rankrat with a minimal environment and never see your shell exports. It is separate from the per-profile .env: the host file selects the profile and the host defaults, while a profile's .env pins that profile's images, port, and read-only flag.

Over HTTP, MCP lives at http://127.0.0.1:8080/mcp and REST under /v1/; stdio needs no port and no bearer. HTTP treats your data directory as its Compose project — it drops a docker-compose.yml in there if one's missing and never touches yours if it isn't. Under the hood that's two long-lived services plus one one-shot volume initializer. The wrapper, plain docker run, raw Compose, HTTP auth, and client wiring all live in Transports and deployment.

Browser audits run in a separate psyb0t/rankrat-lighthouse image over a Unix socket, and it never sees a single provider credential. rankrat stdio brings up an ephemeral Lighthouse sidecar for the session — same capability as HTTP — and tears it down on exit; the wrapper launches it host-side, so the app stays off the Docker socket and reaches Lighthouse only over the socket. See Lighthouse.

Safety model

  • Rankrat is writable by default. Configured account credentials authorize all supported provider operations and all resources those accounts can reach.
  • RANKRAT_READ_ONLY=true removes write REST routes and MCP tools from runtime discovery. It is the only capability switch.
  • The operator decides whether the caller is a careful human-directed agent or a fully autonomous one. Remote HTTP still uses the configured bearer.
  • Resource arrays are cached inventory and containment data. Onboarding and discovery update them so retries reuse existing resources.
  • Secrets are read-only mounts; OAuth records and monitor state have separate writable mounts.

See Configuration and Security before enabling writes or exposing HTTP beyond loopback.

Documentation

  • Getting started — install, file locations, verifying setup
  • Configuration — every boundary field and runtime switch
  • Providers and credentials — obtaining each credential and its permissions
  • Transports and deployment — stdio MCP, Streamable HTTP MCP, REST, Compose, agent integrations
  • Feature workflows — operations for common SEO, analytics, backlink, and indexing questions
  • Lighthouse — the browser worker and its security limits
  • Ownership and onboarding — Google/Bing property creation and DNS verification
  • Monitoring and remediation — persistent monitors and provider-write behavior
  • Security — trust boundaries and production rules
  • MCP tool reference — every discoverable MCP tool
  • Troubleshooting — startup, OAuth, provider, sitemap, and browser-audit failures
  • Development — build, test, generate contracts, audit dependencies, contribute

The REST source is YAML-first: openapi.yaml, seo-openapi.yaml, and free-seo-openapi.yaml generate openapi.json. Agent clients can use the repository's skill, Claude Code and Codex manifests, or OpenClaw integration under .agents.

Agent integrations

The Rankrat skill works in agents that read .agents/skills/ (such as peen). The integrations below cover both MCP stdio and a shared Streamable HTTP server.

Claude Code
claude plugin marketplace add psyb0t/agents

claude plugin install rankrat@psyb0t

Codex
codex plugin marketplace add psyb0t/agents

codex plugin add rankrat@psyb0t

Installed through the catalog, the skill invokes as $rankrat:rankrat. Codex also discovers it as $rankrat directly from a Rankrat checkout.

OpenClaw
openclaw skills install @psyb0t/rankrat

openclaw plugins install clawhub:@psyb0t/rankrat

The plugin launches the published image over MCP stdio using the standard $HOME/.config/rankrat/ layout. Set one absolute RANKRAT_DATA_DIR in every client to reuse the same provider accounts, OAuth authorization, inventory, and monitor state from any site repository. To use an already-running shared server, configure OpenClaw for its authenticated

Only the beginning is shown; read the rest in the repo

Ask PopNx