Guide · MCP

Connect Claude Code or Codex to FixVis

Give your coding agent your FixVis issues. It reads the evidence, fixes the problem in your repo, moves the ticket, and asks FixVis to verify the live page — and it can check AI visibility across markets, create and draft content from gaps, review delivered-fix outcomes, and start scans.

MCP is available on Starter and above. On the Free plan you can see what it does, but you can't connect a client — see plans.

What it does

FixVis runs an MCP server at https://api.fixvis.ai/mcp. Once your coding agent is connected, it can:

It covers technical and on-page issues, markets and AI visibility, content and outcomes.

Before you start

Connecting costs nothing extra on any paid plan.

Connect Claude Code

Run this in your terminal:

claude mcp add --transport http fixvis https://api.fixvis.ai/mcp

Then, in Claude Code, run /mcp, choose fixvis and pick Authenticate. Your browser opens:

  1. Sign in to FixVis (skipped if you are already signed in).
  2. On the consent screen, choose the organisation.
  3. Tick the projects this connection may use.
  4. Pick Read your FixVis data or Read and update (move and verify issues, create content tasks; extra scans and content generation use credits, always after you confirm).
  5. Click Approve.

Back in Claude Code, /mcp shows fixvis as connected. Nothing is pasted — there is no token to copy.

Connect Codex

Add the server, then sign in:

codex mcp add fixvis --url https://api.fixvis.ai/mcp
codex mcp login fixvis

codex mcp login fixvis opens the same browser sign-in and consent screen as above. Check the connection with:

codex mcp list

The Codex desktop app uses the same configuration (~/.codex/config.toml). In the app, Settings → Plugins → MCPs shows fixvis with a toggle, and typing /mcp in a thread shows it connected.

The tools

Read tools work on every connection. Write tools need a connection approved with Read and update; run_market_scan and generate_content can use credits and always ask you to confirm first (see Credits and the confirm step).

ToolAccessWhat it does
list_projectsReadThe projects in this connection, with the latest audit and open technical / on-page counts.
list_issuesReadA worst-first list of issues for a project, filterable by area, severity and status.
get_issueReadEverything needed to fix one issue: why it matters, the solution, a reference snippet, the evidence, affected URLs and how it will be re-checked.
explainReadA plain-language explanation of an issue or a term (such as JSON-LD) and why it matters for your business.
move_issueWrite · freeMoves an issue to To Do, Doing or Done on your board and returns its new status.
verify_fixWrite · freeRe-checks the live page and returns the outcome with its evidence (see How verification works).
list_marketsReadThe markets (country + language) this project is tracked in, which is primary, whether each one's AI prompts are confirmed, and its latest scan.
get_market_visibilityReadShare of Discovery with its trend, citation share, open and critical issues, content-gap count and which tracked prompts the brand wins or loses — one market, default primary.
get_markets_rollupReadEvery market side by side: Share of Discovery, citation share, issues, content gaps, a portfolio score and prompts won in some markets but missing in others.
list_competitorsReadThe competitors FixVis tracks for this project in one market, with where they come from and the latest standing against the brand.
list_content_gapsReadContent opportunities for one market — topics competitors rank or are cited for that the brand is missing — ranked by opportunity score.
get_content_gapReadOne opportunity in full: keywords, the AI prompts competitors are cited for, competitor URLs to beat, why the brand isn't winning, and the brief a content task would carry.
get_contentReadA generated brief or draft — the Markdown, title, slug, meta description, Content Score and Brand Fit — or its status while still being written.
create_content_taskWrite · freePuts a content piece on the board, from a content-gap opportunity or as a manual topic.
set_published_urlWrite · freeRecords the live URL a content task's piece was published at, so FixVis can measure it in Outcomes.
get_outcomesReadWhat delivered fixes and content achieved over a period: fixes shipped and verified, pages newly indexed, new AI citations, incremental clicks and referral visits.
list_delivered_fixesReadThe fixes and content tasks delivered in a period with their outcome, attribution and confidence.
get_fix_outcomeReadOne delivered fix's full before/after readings, the deltas, and why it's still awaiting if it is.
run_market_scanWrite · creditsStarts a new scan (crawl, checks and AI visibility) for one market or all of them. Preview shows the cost and what will run; confirm to submit.
generate_contentWrite · creditsWrites a brief or full draft for a content task in its market's language. Preview shows the cost; confirm to submit.

Credits and the confirm step

run_market_scan and generate_content can use credits: today's included scan of a market is free, an extra scan beyond it uses 1 credit, and so does a content piece. Call one WITHOUT confirm_token first — it previews the cost, your current balance, and exactly what would run, and returns a confirm_token. Nothing is spent or queued yet. Show the preview to whoever is driving the agent; if they agree, call the SAME tool again with the SAME arguments plus confirm_token to actually run it.

Workflows, with copy-ready prompts

Paste these into Claude Code or Codex, replacing <your-site> with your domain.

Find what to fix first

Use fixvis to list my projects, then show the open technical and on-page issues for <your-site>, worst first.

Understand one issue before touching code

Get the full details of the top issue, explain why it matters for my business, and find where in this repo it comes from. Don't change code yet.

Fix it and move the ticket

Apply the fix, then move that issue to Doing in FixVis.

Verify after you deploy

I've deployed. Verify that fix with fixvis.

Learn a concept

Explain JSON-LD for my business.

Plan content from a gap

What should we write next for Germany?

Create and draft in one go

Create a task for the top gap and draft it.

Check what fixes delivered

How did last month's fixes do?

Run a scan across every market

Run a scan of all markets.

How verification works

Verification checks the public URL, so deploy your fix first — a change that only exists on localhost can't be checked. The outcome is one of:

verified
The fix is live. The card moves to Done.
failed_verification
The issue is still failing on the live page.
partial
The page improved, but the check doesn't fully pass yet.
blocked
The check couldn't run, for example because the page wasn't reachable. The reason is included.
not_verifiable
This issue can't be re-checked automatically. Mark it done on the board yourself.

Verification is free.

Permissions and security

Troubleshooting

The browser didn't open
Copy the URL the CLI prints and open it in your browser.
Asked to sign in again, or a 401 error
Run codex mcp login fixvis, or re-authenticate from /mcp in Claude Code.
A project is missing
It wasn't ticked for this connection, or it hasn't been audited yet. To change the projects, disconnect in Settings → Developer and connect again.
Wrong organisation
Disconnect in Settings → Developer, reconnect, and pick the right organisation on the consent screen.
“out_of_scope”
That issue type isn't available through MCP yet. Open it in the FixVis app.
“confirm_invalid”
The confirm token is wrong, expired (10 minutes) or already used for a different call. Preview again and confirm with the exact same arguments.
“preview_changed”
The plan or price changed since the preview (for example a market was added). Nothing was charged — preview again.
“scan_in_progress”
One of the markets you asked to scan already has a scan running from the last few hours. Wait for it to finish, or check with list_markets.
“content_locked”
The content task is no longer in To Do (it's In Progress or Done). Move it back, or use the app.
“rate_limited”
More than 10 confirmed scans or content generations ran on this connection in the last hour. Wait, or finish the rest from the FixVis app.
“plan_required”
MCP is available on Starter and above. A Free workspace can't connect, and a workspace that moves back to Free stops answering until it upgrades — see plans.

FAQ

What does it cost?
MCP is included on Starter and above at no extra cost. The daily scan is included; if today's hasn't run yet, starting it yourself is free; any further scan that day uses 1 credit. Content generation uses credits too, always after you confirm. Reading issues, markets and outcomes, and verification, are free.
What data leaves FixVis?
The issue, market, content and outcome details you ask for go to your coding agent and its AI provider. Nothing else.
Which clients are supported?
Claude Code, Codex (CLI and desktop app) and ChatGPT — see Use FixVis in ChatGPT. Any MCP client that supports OAuth sign-in with a localhost callback should also work.
Does a write-access connection start spending credits automatically?
No. A scan or content generation always needs a preview, then a confirm with the same arguments — an agent can't spend credits in a single call.