Skip to main content
Glama
Nextfix MCP Server

Nextfix MCP Server

by the-neyro

Nextfix

Tests License: MIT Python 3.12+ FastAPI MCP

An SEO tool that tells you what to fix next. Runs locally, costs nothing, and can be fully operated by Claude via MCP.

Large SEO suites show hundreds of numbers (errors, warnings, notices) and leave it to you to decide where to start. Nextfix audits a website just as thoroughly and turns the result into a short list: what to do first, why, how, and how much it will help.

All screenshots show the fictional demo website “Radhaus Elbe” (scripts/demo_website.py). The user interface is in German.

Features

Module

Question it answers

Site audit

What is broken, and what comes first? Crawler (links, sitemap or both, robots.txt, optional JavaScript rendering), 111 checks in 8 areas, site health 0–100, tasks ranked by impact (high / medium / low), “intentional” flag to hide deliberate cases, history between audits, CSV and PDF report.

Page speed

Is the site fast enough? Core Web Vitals (LCP, CLS, TBT) measured in the lab with real Chromium, mobile and desktop, scored with the Lighthouse formula and checked against PageSpeed Insights. Poor values count towards site health; optionally measured automatically after every crawl.

Rankings

Where am I found, where am I losing ground? Data from Google Search Console and Bing Webmaster Tools: visibility, winners and losers, “almost on page 1”, keyword cannibalization, daily import.

Authority

How strong is my domain compared to competitors? Open PageRank value (0–10) for every project and any competitor domain, cached for 30 days, free API key.

Keyword research

What is worth writing about? Ideas from Google Autocomplete and your own Search Console data, clustering, search intent, questions, search volume via Bing, content gap against competitors.

Page optimization

What should I change on this page? Page score for a target keyword (20 rules) plus an AI score (12 rules for ChatGPT, Perplexity and similar), “top 3 first” with a concrete, copy-ready suggestion.

On top of that, checks for AI search (GEO): llms.txt, blocked AI crawlers, citations, FAQ markup, author and date, organization markup, based on the GEO study (Princeton, KDD 2024).

Issue detail: why it matters, how to fix it, affected pages grouped by section

Page optimization: top 3 changes with suggestions

Issue detail: why it matters, how to fix it, affected pages grouped by template

Page optimization: page and AI score, the three most effective changes with a suggestion

Rankings with test data

Project list

Rankings: key metrics and “almost on page 1” opportunities (test data shown)

Projects: all websites with their health

Related MCP server: optiqra-mcp

What makes it different

  • Tasks, not a wall of numbers. Every issue becomes one sentence with an action, the effort involved (“configure once”, “write text”), who does it (yourself in the CMS, or your developer/host) and its impact (high / medium / low). No fake precision like “+4.2 points”: nobody can predict what a fix does to rankings.

  • An honest health score. The formula does not dilute problems across checks that never fire, and thin content on many pages weighs as much as an error (app/core/score.py).

  • Plain language. Urgent / Important / Polish instead of Error / Warning / Notice, technical terms explained.

  • Zero cost. No paid APIs and no scraping of Google results (terms of service). Rankings come only from Search Console and Bing, the sources website owners already have access to.

  • Three interfaces, one core. Web UI, REST API (/docs) and an MCP server for Claude share the same functions.

  • Light and dark mode, mobile-friendly, works offline (font and HTMX are bundled).

Quick start

Requires Python 3.12 or newer.

One line (installs the latest release to ~/nextfix, sets up everything, prints the command to connect Claude Code and offers to start Nextfix with the demo website):

curl -fsSL https://raw.githubusercontent.com/the-neyro/nextfix/main/scripts/install.sh | bash

On Windows (PowerShell):

irm https://raw.githubusercontent.com/the-neyro/nextfix/main/scripts/install.ps1 | iex

The installer checks out the newest release tag, not the development branch. For the development version, set NEXTFIX_BRANCH=main (e.g. curl … | NEXTFIX_BRANCH=main bash); running it again updates an existing install.

Or step by step:

python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
.venv/bin/playwright install chromium          # for page speed and PDF reports
.venv/bin/uvicorn app.web:app --reload         # http://localhost:8000

On a Mac without the terminal: double-click Nextfix starten.command in the project folder. It starts Nextfix and opens http://localhost:8000 in your browser; the first start sets everything up (a few minutes, only once). Close the window to stop Nextfix. If macOS blocks the file (e.g. after downloading the ZIP), right-click it, choose “Open” and confirm once.

On Windows without the terminal: double-click Nextfix starten.bat in the project folder, same behaviour (first start runs scripts/install.ps1). If Windows shows “Windows protected your PC”, click “More info” → “Run anyway”. Windows is not officially supported yet: installation and start are checked automatically, but one test still fails there now and then.

Then add a domain and click “Website prüfen” (audit website). No website of your own? Start the demo site:

.venv/bin/python -m scripts.demo_website 8798  # demo website “Radhaus Elbe” at http://127.0.0.1:8798/

Create a project with the start URL http://127.0.0.1:8798/. Rankings can be tried out without access using test data.

With Claude (MCP)

Connect Claude Code once (the installer prints this command with your real path; here for ~/nextfix):

claude mcp add --scope user seo-tool -e PYTHONPATH="$HOME/nextfix" -- "$HOME/nextfix/.venv/bin/python" -m app.mcp_server

Other MCP clients: copy .mcp.json.example to .mcp.json and set your project path. 51 tools, e.g. crawl_starten, was_jetzt_tun (the task list), issues_liste, onpage_pruefen, positionen_uebersicht, keyword_recherche_starten, vitals_messen, pdf_bericht.

Tool names and results are German on purpose, like the user interface: Claude understands them fine and answers in your language. The MCP server is called seo-tool, not nextfix: the name is older than the project name and is also used for the credentials folder ~/.config/seo-tool/. Renaming it would break existing setups and saved keys, so it stays.

Google Search Console, Bing and Open PageRank

Setup guides (German): docs/anleitung-gsc.md, docs/anleitung-bing.md. For domain authority, get a free key at openpagerank.keywordseverywhere.com and save it as ~/.config/seo-tool/openpagerank-api-key.txt. Credentials live outside the project in ~/.config/seo-tool/ and never end up in Git.

Development

.venv/bin/python -m pytest -q                  # tests (no network needed)
.venv/bin/python -m scripts.screenshots        # regenerate screenshots (separate demo database)

Folder

Contents

app/core/

Services, all business logic

app/checks/

Check catalog: one @check per check, one module per area

app/crawler/

Crawler, parser, lab measurement of page speed

app/onpage/

Page check against a target keyword, AI score

app/gsc/, app/keywords/

Search Console, Bing, Google Autocomplete

app/web/

Web UI (Jinja + HTMX), design system in static/app.css

app/api/, app/mcp_server/

REST API and MCP tools

app/berichte/

PDF report (Playwright)

scripts/

Demo website and screenshot script

docs/

Architecture, guides, UI concept (docs/ui/)

Convention: a new feature starts in app/core/, then gets wired into the API, the UI and MCP, plus a test. Data is stored in data/seo.db (SQLite, not in Git); set a different path with SEO_DB. Code and UI are written in German.

How to contribute: CONTRIBUTING.md. What changed: CHANGELOG.md. What comes next (and what deliberately does not): ROADMAP.md.

Limitations

  • No individual backlinks and no competitor rankings; both would require paid databases. Domain authority (one value per domain) comes from Open PageRank.

  • JavaScript rendering is optional and slower (Chromium per page); without it, content rendered only by JS is not seen.

  • Page speed is a lab measurement, not field data from real users (CrUX).

License

MIT. Font: Fira Sans (SIL Open Font License, app/web/static/fonts/OFL.txt). HTMX 2.0.4 (BSD-2-Clause).

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Exposes OptiQra's full SEO/GEO/AEO audit and AI-fix/insight tools as MCP tools for AI clients like Claude, Cursor, and Windsurf. Use natural language to crawl URLs, analyze performance/a11y/security, and generate AI-driven fixes and strategy insights.
    4
    54 npm
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Checks what GPTBot, ClaudeBot, PerplexityBot and 50+ other AI crawlers can read on a site and what its access policy allows, checks whether a page permits search, answers, training or agent use (with a signed receipt), generates llms.txt, robots.txt and JSON-LD, and reads your Answer Analysis. Nine tools for Claude Desktop, Cursor and other MCP clients.
    9
    460 npm
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables running SEO and AI/GEO visibility audits on websites, reading audit results, competitor analyses and expert reports, and importing or retrieving editorial calendars, all from any MCP client such as Claude Desktop, Claude Code or Cursor.
    11
    71 npm
    MIT