how to use Diploria MCP

How to Use the Diploria MCP: Connect Your AI Assistant to Your Brand Data

Step-by-step guide to connecting Claude Desktop, Cursor, or Windsurf to your Diploria brand data via the Model Context Protocol. Full list of available tools and example queries.

Diploria
Reviewed by Diploria Research

The Diploria MCP (Model Context Protocol) server lets Claude Desktop, Cursor, Windsurf, Zed, and other MCP-compatible AI assistants read your brand's AI visibility data directly. Once connected, you can ask your AI assistant natural-language questions, including "which prompts have the lowest mention rate this month?", "where are competitors outperforming us?", and "has our visibility improved since the last content update?", and get answers pulled from your live Diploria data without opening a browser.

In short

  • Install the MCP server with npx -y diploria-mcp, no manual package management needed.
  • Generate an API key in Diploria under Settings → API Keys and paste it into your AI assistant's config.
  • The MCP exposes 25 tools covering visibility, prompts, competitors, citations, readiness, accuracy, and more.
  • You do not need to write queries or look up IDs yourself; the AI assistant handles orchestration.

What is the Model Context Protocol?

The Model Context Protocol is an open standard, developed by Anthropic, that lets AI assistants call external tools during a conversation. When you connect Diploria via MCP, your AI assistant gains access to a named set of functions: get_brand_dashboard, get_competitor_gaps, get_visibility_trend, and so on, which it can call automatically when you ask a question that requires that data.

The practical result is that you can have a genuine back-and-forth with your AI assistant about your brand's performance. You ask a question; the assistant calls whichever tools it needs, reads the results, and writes an answer in plain language. It can combine data from multiple tools in one response. For instance, it can read both the visibility trend and the competitor gap data to answer "why did our score drop last month?" without you having to look anything up manually.

What do you need before you start?

Before setting up the MCP you need three things: a Diploria account with at least one brand configured and at least one completed poll run, an API key from Diploria, and one of the supported AI assistants installed on your machine.

The API key controls access. Generate one under Settings → API Keys inside Diploria. Copy the full key when it is shown. It will not be displayed again. The key authenticates every request the MCP server makes on your behalf.

The supported AI assistants are Claude Desktop, Cursor, Windsurf, Zed, and any other application that supports MCP servers over stdio. The setup steps are similar across all of them; the differences are only in which config file to edit.

How do you install the MCP server?

You do not install anything manually. When you add npx -y diploria-mcp as the command in your assistant's MCP config, the assistant handles downloading and running the package each time it starts. The package is published to npm as diploria-mcp.

The config block is the same across Claude Desktop, Cursor, and Windsurf:

{
  "mcpServers": {
    "diploria": {
      "command": "npx",
      "args": ["-y", "diploria-mcp"],
      "env": {
        "DIPLORIA_API_KEY": "dip_your_key_here",
        "DIPLORIA_API_BASE": "https://diploria.ai/api"
      }
    }
  }
}

Replace dip_your_key_here with your API key. The DIPLORIA_API_BASE value is the same for all users and does not need to change.

Claude Desktop

Open Claude Desktop, go to Settings → Developer → Edit Config, and paste the block above into claude_desktop_config.json. Save the file, then quit and re-open Claude Desktop. The 🔨 tools icon in any conversation confirms Diploria is connected.

Cursor

Go to Cursor Settings → MCP → Add new global MCP server and paste the config block into ~/.cursor/mcp.json. Restart Cursor and open a new chat. The Diploria tools should appear in the tools panel.

Windsurf

Go to Windsurf Settings → Cascade → MCP Servers → View raw config and paste the block into ~/.codeium/windsurf/mcp_config.json. Restart Windsurf. The Diploria server should appear in the MCP Servers list as Connected.

Zed

Open ~/.config/zed/settings.json and add the config block under a top-level "context_servers" key. Restart Zed.

What data is available through the MCP?

The MCP exposes 25 tools organized into six areas: brand overview, prompt and performance detail, competitor analysis, content readiness, accuracy monitoring, and authority signals. Each tool maps to a specific slice of your Diploria data.

Brand overview

list_brands: Returns all brands in your account with their IDs, names, and domains. Call this first in any new conversation to find the brandId values needed by all other tools.

get_brand_dashboard: Returns visibility scores, mention rates, and last poll date for a brand across the last 30 days. Includes a combined visibilityScore (0–100) plus a byType breakdown splitting branded, non-branded, and scenario prompt results separately. Use byType.nonBranded for organic AI presence — the combined score is skewed upward by branded prompts where the brand is almost always mentioned.

Prompts and performance

get_prompts: Lists every tracked prompt with its text, type (branded, non-branded, scenario), intent, format, which engines it runs on, which markets it covers, SEO volume, and labels. This is the foundational tool. Use it to enumerate what is being monitored before diving into performance data. Supports filtering by active, type, and intent.

get_poll_history: Returns recent poll run history: dates, statuses, and prompt counts. Useful for finding a specific runId to pass to get_poll_results.

get_poll_results: Returns the full per-engine, per-prompt mention breakdown for a single poll run, including whether the brand was mentioned, its position, sentiment, and which market the result covers.

get_prompt_answers: Returns the full AI-generated answer text per prompt and engine. The most recent response for each (prompt, engine) pair. Use this when you want to read exactly what ChatGPT, Claude, or Gemini wrote, not just whether the brand appeared. Supports filtering by promptId, engine, and date.

get_visibility_trend: Returns share-of-voice score and average mention position for each completed poll run over time. The right tool for answering "has our visibility improved?" or "when did the drop start?". Configurable look-back window up to 365 days.

get_performance_by_prompt: Returns per-prompt mention rate, average position, and three sub-breakdowns: by engine (ChatGPT vs Gemini vs Claude vs Perplexity vs Grok), by coverage type (memory vs live_search), and by market. The most complete cross-sectional view of what is working and what is not.

get_market_breakdown: Returns mention rate and average position aggregated by market (country or region). Shows where the brand performs strongest and where it has gaps geographically.

get_engine_coverage_breakdown: Returns three views: by engine, by coverage type (memory = trained knowledge, live_search = web-grounded responses), and by the combination of both. Useful for understanding whether the brand's gap is in trained knowledge or live retrieval.

get_tag_analytics: Returns mention rates broken down by intent category and engine. Answers questions like "which intent categories are we weakest in?" or "which engine is most responsive to navigational queries?".

get_discovered_questions: Returns questions about the brand's category that were discovered via Reddit threads, fan-out extraction, and keyword analysis. These are real questions being asked in the market, a direct source of content gap ideas. Filter by status: new, tracked, brief_created, dismissed, or all.

Competitor analysis

get_competitor_gaps: Returns side-by-side mention rate comparisons between the brand and its tracked competitors across every prompt. Shows exactly which questions competitors are winning and by how much.

get_competitor_citations: Returns URLs that cite competitors but not the brand. A prioritized outreach list: these are the sources already covering the category where the brand is absent.

get_load_bearing_sources: Returns the URLs appearing most frequently across all AI engine citations. These are the "load-bearing" sources that disproportionately shape what AI engines say about the category.

Content readiness

get_readiness_index: Returns the overall AI readiness score with category breakdown across structure, access, authority, accuracy, and content pillars.

get_readiness_scans: Returns scanned URLs with their pillar-by-pillar readiness scores. Each scan checks a page across multiple criteria.

get_readiness_recommendations: Returns specific actionable fixes from failed readiness checks, ranked by potential score improvement. The fastest path to prioritized technical work.

get_optimization_quadrant: Maps pages by readiness score versus citation rate. Surfaces quick wins (cited but not ready) and distribution gaps (ready but not cited).

get_ai_access_status: Returns the per-check status for every AI access signal: robots.txt allow-list, edge bot blocking, noindex tags, raw HTML availability, and snippet controls. overallBlocked: true means something is actively preventing AI systems from reading the site.

Accuracy monitoring

get_accuracy_facts: Returns the brand's ground-truth fact set: the authoritative claims used as the baseline for hallucination detection (pricing, founding year, key differentiators, and so on).

get_accuracy_incidents: Returns detected hallucinations and misstatements with severity levels. Shows what AI engines are currently saying incorrectly about the brand.

Authority signals

get_offsite_authority: Returns the off-site authority score (0–100) and six underlying dimensions: source presence rate, entity completeness (Wikipedia, Wikidata, LinkedIn, Crunchbase, G2), community presence, branded demand, channel diversity, and accuracy standing. Pinpoints which dimension is limiting the authority band.

get_agent_traffic_summary: Returns AI bot traffic metrics (GPTBot, ClaudeBot, PerplexityBot, etc.) on the brand domain, including how frequently AI crawlers visit and which ones are most active.

get_sentiment: Returns sentiment trend over time and recent negative mentions. Useful for tracking whether AI engines are shifting toward more critical framing of the brand.

get_citations: Returns top cited domains and URLs in the last 30 days: which external sources AI engines reference when mentioning the brand.

What can you ask the AI assistant?

The assistant orchestrates tool calls automatically based on your question. You do not need to know which tools to call or in what order. Just ask a question in plain language.

Prompt and performance questions

  • "List all the prompts we're tracking and tell me which ones have the lowest mention rate."
  • "How has our share of voice changed over the last three months?"
  • "Which prompts perform worst on ChatGPT specifically?"
  • "Where do we perform differently in live search mode versus memory mode?"
  • "Show me the full text of what Gemini is saying about us on our worst-performing prompt."
  • "Which non-branded prompts are we winning?"

Competitor questions

  • "Where are our competitors beating us and by how much?"
  • "Which sources cite our competitors but not us? Give me a prioritized outreach list."
  • "Compare our mention rate to Competitor X on evaluation-intent prompts."
  • "Which AI engine is our biggest competitor strongest on?"

Market and geographic questions

  • "How does our visibility compare across markets?"
  • "Which country has the weakest mention rate for us?"
  • "Are we performing better in the US or the UK?"

Content gap and question discovery

  • "What questions are people asking about our category that we haven't covered yet?"
  • "Show me the newest discovered questions from Reddit threads."
  • "Which of our discovered questions is most urgent to write content for?"

Readiness and technical questions

  • "What are the top fixes we should make to improve our readiness score?"
  • "Are AI crawlers able to access our site properly?"
  • "Which of our pages are cited by AI engines but haven't been fully optimized yet?"

Authority questions

  • "What is our off-site authority score and what's holding it back?"
  • "Are we listed on Wikipedia and Crunchbase?"
  • "Which AI crawlers are visiting our site and how often?"

Accuracy and hallucination questions

  • "What hallucinations are AI engines spreading about us right now?"
  • "Check whether AI engines have our pricing correct."
  • "Are there any critical inaccuracies we need to address urgently?"

Combined and analytical questions

  • "Why did our visibility drop last month? Check both the trend data and competitor gaps."
  • "Give me a full briefing on our AI visibility: score, trend, top competitor gaps, and the biggest readiness issue."
  • "Which prompt type (branded or non-branded) is performing better, and is that consistent across engines?"
  • "Draft a weekly AI visibility report covering our score, what changed, and what we should do about it."

How does the MCP stay current with your data?

The MCP reads live data from Diploria on every call. There is no local cache. When you ask a question in your AI assistant, the MCP server makes real-time API requests to Diploria and the AI assistant receives current results. This means the data in any conversation reflects your latest poll runs and scan results.

The MCP server itself (the diploria-mcp package) is versioned separately from your Diploria account. When Diploria adds new tools or data fields, a new package version is published and npx -y diploria-mcp picks it up automatically the next time your AI assistant connects, because the -y flag always fetches the latest compatible release. You do not need to manually reinstall or update the package.

What should you do if the MCP is not connecting?

If the tools icon does not appear or the assistant says it cannot find Diploria, work through these checks in order.

First, verify the API key is correct and has not been deleted from Diploria. A key that existed when you set up the config might have been rotated since. Generate a new key and update the config if needed.

Second, check that Node.js 18 or later is installed on your machine. Run node -v in a terminal. The MCP package requires it and npx will fail silently on older versions.

Third, confirm the JSON in your config file is valid. A missing comma or bracket is the most common cause of silent failures. Paste the config into a JSON validator if you are unsure.

Fourth, restart the AI assistant fully: not just close the window, but quit the application and relaunch it. Most assistants only read the MCP config on startup.

If the connection works but a specific tool returns an error, the most likely cause is a brandId that does not belong to your account. Always call list_brands first in a new conversation to get the correct IDs.

Frequently asked questions

Know exactly where
AI mentions your brand

Track ChatGPT, Gemini, Perplexity, Claude and 11 more AI engines - weekly. See how your competitors rank, spot gaps, and fix them fast.