FlexQueries SEO MCP
Pay-as-you-go SEO research, backlinks, rankings, site audits, and AI visibility for compatible AI clients.
Hosted MCP Server
npx add-mcp 'https://app.flexqueries.com/mcp'Installs into Claude Code, Codex, Cursor and more
Documentation
Set up FlexQueries MCP
Connect FlexQueries MCP to Claude, ChatGPT, Codex, Cursor, Antigravity, VS Code, and Gemini CLI.
FlexQueries MCP lets compatible AI clients call the same project-aware tools available in the app. That includes keyword and trend research, current and historical SERPs, domains and competitors, backlinks, app stores, Amazon, AI visibility, local and commerce research, audits, rank tracking, Content Studio, project reports, and connected Google Search Console and Google Analytics data.
The hosted MCP server URL is:
https://app.flexqueries.com/mcp
The first connection sends you through FlexQueries login. After authorization, your MCP client can call FlexQueries tools with the project context and account scopes you approved.
For the current setup flow and a copyable endpoint, open the FlexQueries MCP guide.
REST API or MCP?
Use MCP for conversational agent workflows. The separately versioned REST API supports 37 bounded research/generation operations plus scoped saved-data reads, native jobs, connected Google reports and supported configuration/report writes. REST uses a workspace bearer key, not your MCP OAuth token; both enforce current project permissions and the same pay-as-you-go balance. Read the current catalog and obtain a quote before starting paid work.
Saved work and exact-prompt monitoring
Use suggest_monitoring_prompts for editable, unmeasured topic templates. Saved keywords and customer questions can supply more specific inputs. For fresh US-English ChatGPT dataset research, call quote_prompt_discovery, review the price, then use research_prompt_questions with a persisted idempotencyKey and the confirmed ceiling. Optional search-page enrichment makes one bounded request; read the coverage warning if it fails. Dataset demand values are estimates. Researching or adding a question does not collect monitor answers.
quote_prompt_monitor calculates the current per-run usage ceiling and temporary hold. create_prompt_monitor saves a collection; run_prompt_monitor starts paid checks against its selected search surfaces and labelled API models. Confirm the quote before either a manual run or recurring authorization. Claude/Perplexity API answers are not consumer-app search observations; their questions are limited to 500 characters.
Pass measurement to review Standard or Live delivery, one to three samples, ChatGPT natural or forced search, and optional answerAnalysisEnabled. Existing forced-search monitors stay forced until edited. The limit is 150 prompt/engine/sample checks per run. After saving a collection, call quote_prompt_monitor with its configId to obtain a revision-bound quoteToken valid for 15 minutes. Send that token, the reviewed authorization ceiling and a stable idempotencyKey to run_prompt_monitor. An inventory setup estimate is not a run authorization. Changed settings require a new quote.
For optional model labels, use quote_prompt_answer_analysis, check enabled, then explicitly approve analyze_prompt_monitor_answer for a saved observation. It makes one bounded, tool-free call across the run's frozen brands. Labels can be wrong; saved quotes and evidence spans remain available for review. Older interpretations stay versioned, and a new version requires a new approved action.
Use quote_prompt_source_research before research_prompt_sources. Check enabled; optional interpretation also needs interpretationEnabled. Select 1–20 public unsigned URLs already observed in an owned saved run; analyze adds separately priced page interpretation. Read dated snapshots through list_prompt_source_snapshots and get_prompt_source_snapshot, then optionally create a free private draft with create_prompt_source_opportunity. Reads and drafts never fetch pages, call a model, send outreach or publish changes.
append_prompt_monitor adds topics and prompts after a new price review. set_prompt_monitor_prompt archives or restores a question without deleting its history. update_prompt_monitor pauses, resumes, archives or changes its frequency using the current revision. get_prompt_monitor_history returns saved coverage and citation counts; get_prompt_monitor_answer returns one complete answer with its sources. These saved reads are free. Failed and untriggered checks are not absent-brand observations.
update_prompt_monitor_inventory moves, pauses/resumes or archives/restores an explicit selection of up to 25 prompt IDs; rename_prompt_monitor_topic preserves historical topic labels. Both require the current revision. Resume/restore requires review of the new future ceiling. edit_prompt_monitor_text creates a new semantic version while retaining the old prompt and answers. get_prompt_monitor_aliases and set_prompt_monitor_aliases read/confirm alternate brand names for future checks. These saves are free and do not start collection.
get_prompt_monitor_sources groups the complete saved citation run before signed pagination and supplies supporting answer IDs. get_prompt_monitor_trends returns separate written-mention/citation rates, equal-weight matched-period changes and coverage. Changes require 90% usable answers in both periods. reanalyze_prompt_monitor_run creates an idempotent free interpretation from retained answers and frozen target identities; original claims remain unchanged. Legacy written-mention evidence is unknown until a supported reanalysis exists.
list_saved_reports and get_saved_report read existing report snapshots. A manager can use create_saved_report_share with confirmedPublic: true and an expiry of one to 30 days, then list metadata or revoke access with list_saved_report_shares and revoke_saved_report_share. Get the user's permission before exposing a report through a public bearer link.
Rank-tracker tools support calendar timezone/time settings and pin_rank_tracking_keywords. Site audits accept optional JavaScript rendering and a saved, domain-bound Shopify crawler authorization ID. Rendering changes the quote; credentials remain server-side. See monitoring and research options for limits and billing details.
Use reconcile_rank_check for up to three previously purchased rank tasks or retained rank responses, or reconcile_prompt_monitor_run for up to two retained prompt checks. These free actions use the original task and credit identities. They never buy replacements. Unknown submissions remain reserved for review; review a separate missing-device quote only after final-status reconciliation.
Use MCP for an interactive AI client and the customer REST API for scripts and integrations. REST keys and MCP tokens are separate credentials. Both use the selected project's workspace balance and shared pricing. REST offers bounded research/generation operations plus project management, native jobs, recurring approval, signed completion webhooks, exports, saved/planning routes and Content Studio, reports and tracking setup. It does not expose every MCP tool. See the complete MCP tool reference or download discovery schemas.
Before connecting
Sign in to FlexQueries and create or choose a project. Copy the server URL into your client's remote / Streamable HTTP connection field:
https://app.flexqueries.com/mcp
Hosted connections use browser-based OAuth. You do not need to create an API key or enter an OAuth client ID or secret. Approve the FlexQueries account you intend to use, then return to your client and enable its tools. Client fees are separate from FlexQueries usage.
An authorized client can use only approved projects within that account's workspace permissions. It does not receive direct database access or Google credentials. New connection approvals default to saved-data reads, with research and writes off. For full SEO workflows, choose Enable full workflow to select paid research, saved-work changes, and access to all current and future projects in the workspace. Use this only for a client you trust, review the spending limits, then select Authorize. You can instead keep read-only access or choose specific projects. Edit permissions and limits or revoke access in Settings → Connected MCP clients.
FlexQueries checks current access before a tool starts and again before returning private results. Removing project access, disabling writes or revoking a connection can withhold a response that was already being prepared. Work completed before revocation remains saved and keeps its normal charge; revocation does not reverse that work. Inspect saved history or the original operation ID after restoring access rather than purchasing a replacement. Project lists also check access to each returned project.
For a self-hosted instance, replace this URL with your instance's /mcp URL and use its configured authentication. Cloud clients such as Claude's remote connectors and ChatGPT need a publicly reachable endpoint; a localhost URL on your computer will not work for them.
Claude Desktop, Claude.ai, and Cowork
- Open Customize → Connectors.
- Select + → Add custom connector and name it FlexQueries.
- In the remote MCP server URL field, paste
https://app.flexqueries.com/mcp, then select Add. - Select Connect if prompted. Complete the FlexQueries browser login and approve access.
- Return to your conversation, enable FlexQueries in the Connectors menu, and choose which tools Claude may run.
Free accounts have one custom connector slot. On Team and Enterprise, an organization owner must add the connector first. Remote connectors use Anthropic's cloud, including in the desktop app. See Claude's custom connector guide.
For a walkthrough with screenshots and a first research run, read the Claude SEO setup guide.
Claude Code
With Claude Code installed, run:
claude mcp add --transport http --scope user flexqueries https://app.flexqueries.com/mcp
Start or restart Claude Code, run /mcp, select flexqueries, and authenticate. Complete the browser login, return to Claude Code, and check the connection status with /mcp. User scope shares the connection across your projects; use local scope if it should apply only to the current repository. See the Claude Code MCP guide.
ChatGPT
- Open Settings → Security and login and enable Developer mode, if available for your account and workspace.
- Open Plugins, select the plus button, and enter FlexQueries as the name with a description such as “SEO research and project tools”.
- Under Connection, choose a public endpoint and enter
https://app.flexqueries.com/mcp. - Create the connection and complete the FlexQueries browser login. Review the discovered tools.
- Start a new conversation and add FlexQueries from the tools menu.
After FlexQueries releases new tools, use Refresh on the connection in Plugins and start a new conversation. See OpenAI's connection guide.
Codex CLI
With Codex CLI installed, run both commands:
codex mcp add flexqueries --url https://app.flexqueries.com/mcp
codex mcp login flexqueries
Approve access in the browser. Start a new Codex session and run /mcp to check the connection. codex mcp list also shows configured servers. See OpenAI's MCP guide.
Codex Desktop and IDE extension
- In the desktop app, open Settings → MCP servers. In the Codex IDE extension, open its gear menu → MCP servers.
- Select Add server, name it FlexQueries, and choose Streamable HTTP.
- Paste
https://app.flexqueries.com/mcpinto the URL field and save. - Restart the server or extension, select Authenticate, and complete the FlexQueries browser login.
- Start a new session and check that FlexQueries is enabled.
The CLI, desktop app, and IDE extension share configuration on the same host. If you already added FlexQueries with the CLI, use that existing connection. See OpenAI's MCP guide.
Cursor
Merge this entry into mcpServers in ~/.cursor/mcp.json for all projects, or .cursor/mcp.json in one project. Preserve any existing servers:
{
"mcpServers": {
"flexqueries": {
"url": "https://app.flexqueries.com/mcp"
}
}
}
Save, enable FlexQueries in Cursor's MCP settings, and complete the browser sign-in when prompted. Start an Agent chat and confirm the tools are available. See Cursor's MCP guide.
Google Antigravity
- In the IDE's agent panel, open … → MCP Servers → Manage MCP Servers → View raw config.
- Merge the configuration below into
mcpServers, preserving existing entries, and save. - Refresh the server list and enable
flexqueries. Antigravity discovers FlexQueries OAuth automatically; complete the browser login when prompted. - Return to the agent and check that its FlexQueries tools are enabled. In Antigravity CLI,
/mcpopens the manager for connection status and reloading.
{
"mcpServers": {
"flexqueries": {
"serverUrl": "https://app.flexqueries.com/mcp"
}
}
}
Current Antigravity versions use ~/.gemini/config/mcp_config.json globally or .agents/mcp_config.json per workspace. Use the file opened by your installed version. Antigravity requires serverUrl, not url or httpUrl; no manual OAuth credentials are needed for FlexQueries. See Google's Antigravity MCP guide.
VS Code
- Open the Command Palette and run MCP: Add Server.
- Choose HTTP, paste
https://app.flexqueries.com/mcp, name itflexqueries, and choose Workspace or Global. - Start the server, approve trust, and complete the FlexQueries browser login when prompted.
- Open your editor's AI chat in Agent mode and enable FlexQueries through Configure Tools.
Alternatively, merge this entry into .vscode/mcp.json. For global configuration, run MCP: Open User Configuration:
{
"servers": {
"flexqueries": {
"type": "http",
"url": "https://app.flexqueries.com/mcp"
}
}
}
VS Code uses servers in this file, not mcpServers. See VS Code's MCP guide.
Gemini CLI
Merge this entry into mcpServers in ~/.gemini/settings.json or your project's .gemini/settings.json, keeping other settings and servers:
{
"mcpServers": {
"flexqueries": {
"httpUrl": "https://app.flexqueries.com/mcp"
}
}
}
Start or restart Gemini CLI, then run /mcp auth flexqueries and approve the browser login. Use /mcp list to verify the connection and tools. Gemini CLI uses httpUrl for Streamable HTTP. See the Gemini CLI MCP guide.
Verify your connection
Send this prompt after setup:
Use FlexQueries whoami to verify my account, then list_projects to show my projects and their IDs. Do not run paid research yet.
These checks use no FlexQueries balance. Use a returned project ID for subsequent tools. Connect Search Console or GA4 in that project's dashboard before requesting its first-party data. The signed-in Connect an AI agent page lists currently registered tools; your client can also read each tool's current input and output schema during discovery.
Billing and permissions
FlexQueries has no subscription or per-seat fee. Eligible new accounts receive $1 in starting balance, and you can add credits in Billing when you need more. Search Console, connected GA4 reports, and stored project-data reads do not use your FlexQueries balance. AI client or model-provider fees are separate.
The billing guide explains temporary balance holds, failed and partial work, reloads and checkout taxes. A valid acquired result with no matches can still be billable; missing data does not automatically mean the operation failed.
Metered MCP calls, including data research, generated content briefs, and audit jobs, spend from the same balance as the app. The server reserves enough available balance before paid provider work starts and settles the final cost against usage. If the available balance cannot cover the request, the call stops before that work starts. A call can incur a charge when your agent invokes it; it does not open a separate app confirmation screen. Set your agent's tool-confirmation preferences and use the pricing estimator to plan the workload.
Workspace, member and project allowances apply alongside MCP connection limits. REST caps are separate. Leave automatic reload off if the funded wallet should be the hard funding ceiling. Recurring work can spend later, so confirm its scope, ceiling and frequency before enabling it.
Connection controls
Approve selected projects (or all current/future projects), paid research, and saved-work/configuration changes separately. Research permission does not grant saved writes. Starting a job still requires the relevant workspace role, project authority and available balance. Controls are shared across all OAuth grants for the same client, user and workspace; authorizing another connection for that client does not reset spending.
Consent identifies the registered client and selected workspace before approval. The full-workflow recommendation is optional; permissions are not enabled without your approval. Settings lists can load additional connections and projects. Cancel discards unsaved permission edits. A failed connection request can be retried, and declining does not require a valid spending form.
New policies show $10 per action, $20 per UTC day and $100 per UTC month as editable defaults, but research is off until approved. You can add a lifetime ceiling. Settled charges and active holds count toward allowances. Lowering a cap or revoking a connection stops new dispatch, not settlement of already approved work. Background children and MCP-sponsored schedules remain subject to the originating connection policy. Existing connections retain their previous access without new caps until edited or reauthorized; review them in Settings.
MCP admission is bounded to 60 calls per client/minute, 120 per workspace/minute and two active calls per client. Infrastructure quotas apply to free calls too. Limits do not replace the AI client's own confirmation settings.
Retry-safe starts and files
Persist idempotencyKey (16–128 letters, numbers, hyphens or underscores) before run_site_audit, run_rank_check, run_aio_monitor, run_prompt_monitor, research_prompt_questions, create_local_review_search or create_merchant_product_search, and before project create/update/archive/restore. External clients must supply it. Reuse the exact identity and inputs after a lost response. The receipt's _meta.operationId can be read with get_agent_operation under the same connection; this never starts replacement work. Native feature status/history tools return saved results. Payload retention is seven days; an expired identity does not become runnable again.
Retries and receipt reads recheck current workspace, project and connection permissions. Interrupted starts can recover a saved native job acknowledgement without dispatching again. If no trustworthy acknowledgement exists, the attempt becomes indeterminate: inspect saved feature jobs before approving a replacement. An acknowledgement confirms the saved job, not its successful completion. Recorded failures remain failures even if their response payload is no longer retained.
create_project, update_project, archive_project, restore_project and list_archived_projects require management role and appropriate connection permissions; project management requires all-project access. At least one active project must remain. get_google_connections provides safe dashboard links for human consent, not tokens. query_analytics accepts bounded date/metric/dimension/pagination inputs and preserves missing cells/privacy flags.
export_saved_report returns a base64 PDF, DOCX or one-table CSV from an existing snapshot without paid refresh. Its response includes MIME type, filename, byte length, snapshot date and omitted sections. Downloads are capped at 700 KB; legacy Google-derived sections are excluded because the saved snapshot lacks connection provenance. Use dashboard exports for larger files.
Planning and monitoring tools
MCP can organize Pages and saved keyword targets, link existing briefs/Opportunities, read organic outcomes and AI referrals, manage supported monitoring controls, record/approve/verify proposals, configure approved report delivery and process persistence-only CSV imports. These use current project grants. Viewer access permits saved reads, not paid work or edits. See project workflows and workspace access.
Competitor Watch provides quote_competitor_watch, create_competitor_watch, update_competitor_watch, run_competitor_watch, set_competitor_watch_active, get_competitor_watch and get_competitor_watch_run. Quote the exact scope first; creation/start requires the confirmed ceiling. Weekly monitoring is opt-in and has a separate monthly cap. Read/history tools do not refresh research. Dashboard findings can be saved to Opportunities or dismissed.
Guided opportunity research provides get_opportunities, quote_opportunity_research, start_opportunity_research and get_opportunity_research. Quote using projectId, budgetCredits (1,000 credits = $1; zero means saved-data-only; maximum 10,000) and an optional focus of balanced, content, links, ai or local. Show the returned checks, estimate, temporary hold and warnings to the user before requesting approval. Start with the exact quoteKey, cap, focus and a stable UUID idempotencyKey. After a network error, reuse that key; poll the saved runId rather than starting another paid job.
The job reuses saved project evidence, buys only approved bounded research and retains its results in Opportunities. Successful usage settles from the hold; the remainder is released. Valid empty searches can cost credits, unavailable checks are not automatically repurchased, and first-party measurement requires matching Google access. The built-in Flex AI Agent can read, quote and check progress, but cannot launch a separate research hold inside its chat spending authorization; approve that work in Opportunities or with the dedicated external MCP flow.
Shared Google outcome reads are limited to 10 per workspace per minute and validate current connected-property access, including before returning cached private reports. CSV imports do not enrich metrics or start rank checks. A proposal verification checks the approved version on a bounded public page; it does not edit the site or establish revenue causation. Report recipients must confirm before delivery and gain no interactive project access.
The Search Console connection uses read-only Google access. This does not make the entire MCP server read-only: agents can also save keywords and start supported jobs in authorized projects.
Search Console connection questions
Can I connect Google Search Console to Claude Code specifically? Yes. Use the Claude Code setup command above, complete browser authentication, and select a project with a connected Search Console property. FlexQueries manages the Google OAuth application, so you do not need your own Google Cloud project.
Is this a Google Search Console MCP server I install myself? No. https://app.flexqueries.com/mcp is a hosted remote server. Add it to a compatible MCP client and sign in; there is no local Search Console server or credentials file to maintain.
Available tools
FlexQueries MCP exposes tools for SEO research workflows:
- Research keywords with volume, difficulty, CPC, intent, and available AI-search demand.
- Expand search phrasing with Google Autocomplete.
- Compare keyword trends, regions, audience patterns, and related or rising searches.
- Inspect current Google organic results and compare available historical SERP snapshots.
- Find exact keyword, page, rank, volume, CPC, intent, and traffic rows for a domain or page.
- Compare SERP competitors, domain gaps, exact pages or folders, and traffic across a supplied target set.
- Inspect domain technologies and public registration signals.
- Search local businesses near a coordinate, fetch Maps or Local Finder results, inspect business profiles, read Google Business Q&A, and run review lookups.
- List saved keywords from a FlexQueries project.
- Save useful keywords back to FlexQueries.
- Start site audits, check their status, and inspect page issues.
- Compare brand visibility, research prompts across supported AI models, read citations and partial failures, manage scheduled visibility monitors, and inspect Google AI Mode sources.
- Create and configure rank trackers, manage keywords, estimate costs, start checks, and read saved positions and history.
- Summarize a domain's organic footprint.
- Find keywords a domain already ranks for.
- Check backlink summaries, referring networks, exact-page link gaps, and backlink history.
- Discover Apple App Store and Google Play listings, app metrics, ranking keywords, competitors, and keyword intersections.
- Research Amazon keyword demand, related searches, ASIN rankings, competitors, and product intersections.
- Search supported Amazon and Google Shopping product results, including asynchronous product-result jobs.
- Search Bing, Google News, Images, Events, Datasets, and YouTube where the selected research surface is supported.
- Read first-party Google Search Console performance (clicks, impressions, CTR, position).
- Inspect index status, crawl, and canonical for specific URLs (up to 10 per call).
Content, analytics, and ongoing work
- Content Studio: read briefs, keyword clusters, and internal-link suggestions; generate a paid SERP-informed brief; score and save a draft; apply cluster tags; or delete a brief.
- Analytics and reports: read connected GA4 totals and landing pages at no FlexQueries usage charge, plus project reports combining audit, rank, Search Console, and GA4 data.
- Domain research: access paginated keyword and top-page tables, competitors, content gaps, traffic estimates, and visibility history.
- SERP Intelligence: analyze keyword batches, inspect on-page gaps, and request supported SERP screenshots.
- Saved keywords: page through the complete list, edit tags, remove keywords, and refresh metrics.
- Recurring checks: create, update, pause, and run rank or AI visibility monitors; manage audit schedules and saved audits. Creating a schedule permits future paid runs, so agree on scope and frequency first.
The built-in Flex AI Agent uses the same project-bound tools. Account administration, adding funds, and Google account consent remain in the dashboard. Manage authorized clients under Settings → Connected MCP clients, where each connection can be revoked immediately.
Reading results correctly
Tools return structured data alongside model-readable text. Service-backed workspace tools put their complete result under data; existing research tools keep their documented named fields. A meta object identifies the project and links back to the dashboard. The client can discover each tool's input and output schema through MCP.
Keyword difficulty (KD) measures organic ranking difficulty from 0 to 100. Advertising competition is a separate paid-search metric and is not a replacement for KD. Missing metrics are unavailable, not zero searches or easy rankings.
The dashboard's Check keyword metrics, REST keywords.metrics, and MCP get_keyword_metrics retain each requested phrase. In supported primary-database countries, their quotes include one batched volume fallback for phrases without a reported volume. Missing estimates remain null; a supplied zero remains zero. Advertising competition is not organic KD. Other supported countries can supply volume without KD or intent.
MCP accepts up to 700 phrases per lookup. It checks coverage before caching the result and holds the quoted maximum before paid calls. Each result row includes check_status. A failed or unchecked batch is not a successful no-data result. Fresh cache reuse adds no new lookup charge. Local keyword and rank-tracking workflows use local volume with national KD where supported; they do not substitute national volume for missing local volume.
Dashboard keyword runs now save their input settings and results. Open a saved result to review it without spending credits, or choose Refresh results after reviewing the current quote. Several exact phrases run as one batch. Several discovery phrases open separate idea tabs marked Not run until you start them. Optional AI-volume checks have their own outcome and can be retried without repeating successful base research.
Countries and readable fields
Use countryCode with a supported two-letter ISO code, such as US, GB or DE, on country-based research tools. Omit it to use that tool's project-market default. For a query batch, set the country on each query or seed. Languages remain short codes such as en or de. Maps and Local Finder use near.latitude, near.longitude and optional near.zoom (4–18), not a distance radius. Higher zoom narrows the area; omitted zoom uses 17 for Maps or 9 for Local Finder. Business-directory search and Google Business Q&A have separate radius inputs. Some tools have narrower market coverage, which they validate before starting research.
Project, tracker and saved-keyword results include readable country and countryCode fields. Older numeric locationCode inputs and output fields remain available for existing clients. When supplying both identifiers, they must refer to the same country.
get_backlinks_profile accepts grouping: "strongest_per_domain" (the default) or "all_links". The old mode alias remains supported. Local-business, local-SERP, Q&A and domain-ranking results use flat FlexQueries fields such as reviewCount, rank, searchVolume and estimatedTraffic; they do not return supplier response envelopes. Missing values remain null.
Product and review searches return FlexQueries job IDs beginning with job_. Pass that ID unchanged to the matching result tool. Older saved job IDs still work, and viewing a saved completed result does not restart research or charge again.
SERP screenshot links use the FlexQueries domain and stay available for up to 90 days. Open them while signed into an account with access to the project. A screenshot link does not grant access to another workspace's data.
Follow hasMore and nextPage / nextOffset for saved keywords and audit rows. Keep filters and the returned audit ID unchanged while paging. A returned first page is not the whole report. Search Console and provider research tools also expose their own pagination fields.
A started check returns a job identifier, not finished research. Read get_rank_tracker, get_aio_monitoring, or get_audit_status to follow its state. Previous snapshots may remain available while a new job runs. Preserve dates and market settings, distinguish provider traffic estimates from first-party Analytics, and treat missing metrics or failed model responses as unavailable rather than zero.
What to do after setup
Once FlexQueries MCP is connected, use the agent workflow guides for focused SEO jobs.
Start with one focused workflow instead of asking your agent to "do SEO" broadly.
- Use SEO project setup to capture your SEO goals and website context in a local workspace.
- Use SEO coach if you are new to SEO or are not sure which workflow to run first.
- Use keyword research to discover keyword opportunities.
- Use competitive landscape to map a market before choosing competitors or pages.
- Use competitor analysis to study one competitor.
- Use keyword clustering to turn keywords into page groups.
- Use link prospecting to find outreach prospects for a linkable asset.
Troubleshooting
Each external connection can run two tools at once. Short bursts wait up to ten seconds for a slot; waiting does not buy research. If the connection remains busy, wait a few seconds before retrying. Request-rate limits still apply across the client and workspace; do not open extra connections to evade them.
Permissions and spending limits are checked again after a queued call is admitted. Cancelling a waiting call starts no research. If a paid call is interrupted or its outcome is uncertain, check the original job or saved result before requesting new paid work; a replacement request can incur another charge.
Quotes accept the optional idempotencyKey shown in their input schema. Keep the required idempotency key unchanged when checking or resuming an accepted operation.
If your client cannot connect, check that the server URL is exactly https://app.flexqueries.com/mcp.
If no tools appear, refresh or restart the connection, complete authentication, enable its tools, and start a new chat. A client may cache an older tool list.
If authorization fails, disconnect the FlexQueries server in your client, add it again, and repeat the login flow.
If the browser finishes approval but a 127.0.0.1 or localhost callback says it refused the connection, the callback belongs to your local MCP client, not FlexQueries. Keep the client running, start Authenticate or its MCP login command again from that client, and finish the new browser flow without reusing an old callback URL. Local callbacks cannot complete in a different computer, a headless shell, or after the client has closed its temporary listener.
If a tool that was recently released is missing, refresh the server's cached tools or remove and re-add the connection, then start a new conversation. The signed-in AI & MCP page is the current catalog.
If your agent cannot find a project, ask it to list FlexQueries projects first and use the returned project ID in later tool calls.
Structured data
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "https://flexqueries.com/"
},
{
"@type": "ListItem",
"position": 2,
"name": "Docs",
"item": "https://flexqueries.com/docs"
},
{
"@type": "ListItem",
"position": 3,
"name": "Set up FlexQueries MCP",
"item": "https://flexqueries.com/docs/mcp"
}
]
}