GetCited
by getcited.dev · dev.getcited/mcp
SEO and AI-visibility operator tools: site health, ranked actions, ranks, visitor behavior.
- Category
- Marketing and sales
- Connection
- Remote (HTTP)
- Tools
- 29 reported
- Status
- Online
Connect it to your AI
Claude Code
claude mcp add --transport http getcited https://app.getcited.dev/api/mcpClaude, ChatGPT, Cursor and other apps
Add it as a custom connector with this URL (Streamable HTTP):
https://app.getcited.dev/api/mcpThis server expects extra headers, usually an API key from its maker.
Cursor, VS Code and other apps (mcp.json)
{
"mcpServers": {
"getcited": {
"url": "https://app.getcited.dev/api/mcp"
}
}
}Tools it offers
29 tools, as the server itself reported during our check on Oct 31, 2026.
how_to_authenticateThis server is not authenticated, so none of its SEO tools will answer. Call this for the exact steps to fix it. Retrying other tools will not help.get_setup_statusThe onboarding as a checklist for one project: each step (profile, tech stack, competitors, first audit, keywords, rank check, GEO prompts, GEO check, visitor snippet) with whether it is done, what it needs and the toollist_projectsLists the sites this API key can operate on and returns `projects`, newest first, each with id (the projectId every other tool takes), domain and createdAt. Read-only. Sites removed with remove_project are not listed, anadd_projectRegister the site you are working in, and get its project id back. Pass the domain you derived from this codebase (git remote, deployed URL, site config). Safe to call every run: if the site is already tracked you get thremove_projectStop tracking a site: it leaves list_projects, stops being crawled or checked, and frees a site slot on the plan. Nothing is erased. Its crawls, findings and history are kept, and add_project on the same domain brings thget_site_healthReturns the project's current state: the latest crawl (status, pages crawled, when), issue counts by severity and by rule, the open action count and the scores, where a dimension with no data yet is null rather than 0. Rget_next_workThe one call an unattended agent needs: the findings worth acting on now, most important first, or an instruction to stand by until a given time. Ordering is severity weighted by the page's own measured traffic. Pages thlist_actionsReturns the prioritized problems filed for a project, most urgent first; priority 1 is most urgent, 5 least. Read-only. Defaults to open ones. By default it answers grouped: one entry per rule (or type) with the count, tget_actionReturns one action in full: type, priority, title, rationale (what was measured and why it matters), targetUrl, status, the claim and closing fields, and `payload`, the evidence (the audit rule id and its measured valuesclaim_actionMarks an open action as claimed by this API key, so other agents working the same queue skip it, and returns the updated action. Only an open action can be claimed: one already claimed (by any agent, this one included),complete_actionMark a problem done after you have addressed it in the codebase. Pass `note` to record what you changed; the owner reads it to tell a real fix from a box ticked. Pass `commit` with the sha that carries the change: it isdismiss_actionDrop a problem you are deliberately not acting on, and say why. `reason` is required and is shown to the site owner: explain what makes this finding wrong or inapplicable here, in a sentence they could disagree with. A drun_auditQueues a fresh crawl and audit of the site and returns the crawl id and status, up to maxPages pages (default 100; the response says how many it used). Most crawls finish in under 30 seconds: pass wait: true to get the fadd_keywordsStarts tracking search `terms` for a project and returns `added`, the number of new keywords. Pass terms as an array of plain search phrases (terms: ["seo tool", "rank tracker"]) with the projectId from add_project or lilist_keywordsReturns `keywords`, one row per tracked keyword, newest first: id (the keywordId rank_history takes), term, country, language, createdAt, `metric` (search volume, cpc, difficulty, fetchedAt) and `rank` (latest position wrank_historyPass `keywordId`, which is the id field of an entry from list_keywords, together with the projectId that keyword belongs to. Returns the position samples for that keyword over the last N days (default 30), one per rank ccheck_rankingsQueues a search-position check (top 30 results) for every keyword tracked on this project and returns status, jobId and the keyword count. The work runs asynchronously in the worker: the searches are submitted immediateladd_geo_promptsPass `prompts` as an array of objects, not strings: each is { prompt: "best seo tool for agents", stage?: "tofu" | "mofu" | "bofu", format?: "keyword" | "conversational" | "list" }, with the projectId from add_project orgeo_summaryReturns how often the site appears in AI answers: one row per tracked prompt, and within it one entry per engine with runs, citedRuns, mentionedRuns, citedRate and mentionedRate, plus the competitor domains cited insteadcheck_geoQueues a run of every tracked GEO prompt against each configured AI answer engine and returns status, jobId and the prompt count. The work runs asynchronously in the worker and takes minutes; this returns as soon as it irefresh_actionsRebuilds this project's action list from what is already measured (crawl findings, ranks, AI-engine citations, visitor behavior) by fixed rules: no model, no provider call, no quota. Every crawl already triggers one, soget_behavior_digestReturns visitor analytics from the site's own traffic over the last `days`: sessions, engaged and bounce rates, channels including AI assistants, top pages, exit pages, statistically flagged high-bounce pages (z-test, n>set_project_profileStep one of the growth recipe, and the gate on the rest of it. Record what this site sells in the owner's words: productSummary (a paragraph, at most 600 characters), valueProposition (at most 300), audience (at most 300get_project_profileThe stored profile for a project: the three texts as they were written and where they came from, the market country and language, the tracked competitors, the declared techStack next to the detectedStack the latest crawllist_opportunitiesThe opportunity queue: one row per query the site should hold and does not, or holds badly, built only from rows already measured. Keywords come from rank checks, prompts from AI answer-engine runs, and fanout rows fromget_content_briefEvidence for building a page for one query. Contains no wording; what to write is yours. `query` is one row's `query` from list_opportunities, exactly as it came back (a tracked keyword, a tracked prompt, or a fan-out suget_page_historyEvery measurement that touched one page, newest first, so a change can be matched to its effect. `url` is the full url of a page on the tracked site (https://example.com/guide); `days` defaults to 90. Three kinds of rowlist_regressionsWhat is measurably worse than it was, over the last `days` (default 30). Three kinds: `rank`, a keyword whose best position over the last three checks is at least three places worse than over the three before, or that raget_page_profileReturns the visitor behaviour of one page over the last `days`: pageviews, entries, bounce rate, exits, 50% and 100% scroll rates, average active time, rage and dead clicks, and vsSite, a two-proportion z-test of its bou
Questions
What is the GetCited MCP server?
SEO and AI-visibility operator tools: site health, ranked actions, ranks, visitor behavior. It is made by getcited.dev and listed in the official MCP Registry as dev.getcited/mcp. MCP (Model Context Protocol) is the open standard that lets AI apps like Claude, ChatGPT and Cursor use outside tools.
How do I add GetCited to Claude?
In the Claude app or claude.ai, open Settings, then Connectors, choose "Add custom connector" and paste https://app.getcited.dev/api/mcp. In Claude Code, run: claude mcp add --transport http getcited https://app.getcited.dev/api/mcp
How do I add GetCited to ChatGPT?
ChatGPT can use remote MCP servers as connectors. In ChatGPT settings, under Apps and Connectors, turn on developer mode if asked, create a new connector and paste https://app.getcited.dev/api/mcp.
How do I add GetCited to Cursor?
Open Cursor settings, go to MCP, choose "Add new MCP server" (or edit ~/.cursor/mcp.json) and add: { "mcpServers": { "getcited": { "url": "https://app.getcited.dev/api/mcp" } } }
Does GetCited work right now?
Yes. It responded when we last checked on 31 Oct 2026. We check remote MCP servers every day.
What can GetCited do?
It gives your AI 29 tools, including how_to_authenticate, get_setup_status, list_projects, add_project, remove_project. The full list is on this page.
Is this your server? Get the badge for your README
Markdown (GitHub README)
[](https://chen.media/mcp/dev-getcited-mcp)HTML (switches to dark mode on its own)
<a href="https://chen.media/mcp/dev-getcited-mcp"><picture><source media="(prefers-color-scheme: dark)" srcset="https://chen.media/mcp/badge/dev-getcited-mcp.svg?theme=dark"><img src="https://chen.media/mcp/badge/dev-getcited-mcp.svg" alt="Listed on chen.media/mcp" height="40"></picture></a>More in Marketing and sales
See allAEO Backlink
advancelabs.devFind brand mentions, link prospects and competitor link sources, and draft outreach. Read-only.
TrueScrape
@TrueScrapePublic social media data: Instagram, TikTok, YouTube, X, Reddit, LinkedIn and 30+ more platforms.
LocalSchema
local-schema-beacon.lovable.appGenerate and validate LocalBusiness JSON-LD for local SEO. Free tools, no key needed.
Probative legal-marketing data
probativegrowth.comOpen US legal-marketing datasets with sources and DOIs, one server per dataset. CC BY 4.0.
Vektro
vektro.esSpecialist workflows for marketing, web, content and automation. Paid account; OAuth required.
AnchoredIP
anchoredip.comDedicated static outbound IPv4 over WireGuard. Free 7-day trial, no card, no sales call.