Connect ChatGPT, Claude or a coding agent

Last updated

GEOFast's MCP server lets AI apps and coding agents work with your team's projects over the Model Context Protocol: results, actions, site fixes with their code, and content briefs. ChatGPT and Claude sign in with your GEOFast account. Claude Code, Cursor and other coding agents use a key, and can then fix the site or draft the page without anyone copying text out of the dashboard.

Every connected app and every key has a scope. Read: results, answers, fixes and briefs. Write: also edits prompts, competitors, actions and dashboards. Spend: also starts runs, X-rays, briefs and projects; the first call says what it will spend and returns a handle, and nothing runs until a second call with that handle. Nothing over MCP deletes, shares a report, changes branding or email, or sees another team, and every change is listed on the Plan page.

Connect from Claude

  1. In Claude (claude.ai, or the desktop or mobile app), open Settings → Connectors and choose Add custom connector. On a Team or Enterprise plan, an owner adds it first, under Organization settings → Connectors.
  2. Name it GEOFast and paste this address. Leave the advanced settings empty.
https://trygeo.fast/api/mcp
  1. Choose Connect, sign in to GEOFast, pick the team and allow access.
  2. In a chat, switch GEOFast on in the tools menu and ask in plain words.

Connect from ChatGPT

  1. In ChatGPT on the web, open Settings → Apps → Advanced settings and turn on Developer mode. If it isn't there, your ChatGPT plan or your ChatGPT workspace's admin doesn't allow it yet.
  2. Choose Create app, name it GEOFast, paste this address as the MCP server URL and pick OAuth as its authentication.
https://trygeo.fast/api/mcp
  1. Sign in to GEOFast, pick the team and allow access.
  2. In a chat, add GEOFast from the tools menu and ask in plain words.

What a connected app may do

  • A new app reads. On the Plan page, under Agent access, the person who connected it can let it edit, or also start paid work. Anyone in the team can revoke it.
  • A revoked app is turned away at once, even if it signs in again, until the person who connected it allows it again on the Plan page. It then reads only, until they choose more.
  • It acts as the person who connected it, in the team they picked. Leaving a team stops every app you connected to it.

Connect a coding agent with a key

1. Make a key. On the Plan page, under Agent access, name a key for the agent or machine it's for, pick its scope, and copy it: it's shown once. A key reads one team. Revoke it there any time, and agents using it are turned away at once.

2. Add the server. In Claude Code, run this in your project, with your key in place of YOUR_KEY. Claude Code keeps it in your own settings, not in the repository.

claude mcp add --transport http geofast https://trygeo.fast/api/mcp --header "Authorization: Bearer YOUR_KEY"

In Cursor, add this to .cursor/mcp.json in your project, or ~/.cursor/mcp.json for every project, and set GEOFAST_KEY in your environment, so the key stays out of the repository.

{
  "mcpServers": {
    "geofast": {
      "url": "https://trygeo.fast/api/mcp",
      "headers": {
        "Authorization": "Bearer ${env:GEOFAST_KEY}"
      }
    }
  }
}

Any other client that speaks Streamable HTTP connects with the address https://trygeo.fast/api/mcp and the header Authorization: Bearer followed by your key. Clients that sign in with OAuth, as ChatGPT and Claude do, need no key: give them the address alone.

Ask in plain words

  • “What are the open fixes from our site audit? Apply the robots.txt one.”
  • “Which prompts name competitors instead of us? Draft the page for the first one from its brief.”
  • “Did our AI visibility change since the last run, beyond the usual swing?”

What it reads

  • list_projects: the team's projects, each with its latest run and how often that run named it.
  • get_results: a project's latest results as its Overview shows them: visibility, how often answers name it, put it first and cite it (each with its range), share of voice, each engine, the competitors, each prompt's standing, the trend and what changed.
  • list_actions: what to do next, highest impact first, with the evidence, the status and, once done, whether the runs since show it earned anything.
  • get_audit_tasks: the site audit's fixes: what's wrong in plain words, the evidence, the change to make with a paste-ready file where there is one, a prompt for a coding agent, and the latest Re-check.
  • list_briefs, get_brief: the content briefs, and one in full: who the answers name instead, the pages to get onto, the outline and a prompt for a coding agent to draft the page.
  • get_prompt: one prompt's latest answer from each engine: an excerpt, the brands named, the pages cited and the searches run.

A project is named by its id from list_projects or by its domain. Rates come with their 90% ranges, as on the dashboard.

What it changes, with a scope that allows it

  • Write also reads your project settings, sources, X-rays, prospects and dashboards, and edits prompts, competitors, actions, prospects' status, llms.txt and dashboards. Each edit is the one the dashboard makes, and shows on the Plan page.
  • Spend can also create a project, change what's tracked, start a run, X-ray a site, write a brief or X-ray a prospect. The first call answers with what it will spend and a confirm handle; call again with the same input and that handle, within 10 minutes, once the person agrees. A key or app starts at most 20 of these a day.

Limits and care

  • Each key or connected app makes up to 60 calls a minute and 2,000 a day; past that, it's asked to wait. Nothing it reads costs AI credits.
  • Keys are stored hashed, so we can't show one again, only revoke it. Apps sign in through Clerk, our sign-in provider, and we keep no copy of their tokens. The Plan page shows when each was last used.
  • Answers and briefs quote AI engines and other websites. The server tells agents to treat that text as data, never as instructions. Still, review what an agent changes before you ship it.