Skip to main content
Beta: The Pierview MCP server is in active development. Exact tool names, parameters, and response formats may evolve over time.

Overview

The Pierview MCP server lets AI tools like Claude Desktop and Claude Code query your AI visibility data directly. Ask questions about your citations, key metrics, and competitor mentions without leaving your workflow. You can also read and edit your brand kit — have Claude structure your brand guidelines and save them back to Pierview. Authentication is secured using OAuth with OIDC with PKCE.

Prerequisites

  • A Pierview account with an active subscription

Setup

1

Open Claude Desktop settings

Go to Claude Desktop > Customize > Connectors > + > Add custom connector.
2

Add the MCP server

Add the following details as prompted:
Claude Desktop MCP connector
3

Authenticate

Click the Connect button, follow the authentication steps which will request access to your Pierview data on behalf of Claude.

Available Tools

All data tools accept an optional organizationId parameter. If omitted, your default organization is used. Call list_organizations first to see your available organizations.

list_organizations

List all organizations you have access to. Call this first to discover available organization IDs. Parameters: None Returns: Array of organizations with organizationId, organizationName, workspaceName, and role.

get_key_metrics

Get mention rate, average ranking, and share of voice for your organization (same as the Key Metrics cards on the dashboard). The previous period of equal length is computed automatically for comparison. Parameters:
ParameterTypeRequiredDescription
startDatestringNoStart of the window in YYYY-MM-DD format. Defaults to 14 days before endDate
endDatestringNoEnd of the window in YYYY-MM-DD format. Defaults to today. If both dates omitted, uses the past 14 days
organizationIdnumberNoOrganization to query (defaults to your default org)
Returns:
FieldTypeDescription
mention_ratenumber | nullPercentage of LLM responses that mention your organization
average_rankingnumber | nullMean ranking position when mentioned (lower is better)
share_of_voicenumber | nullYour mentions as a percentage of all competitor mentions

get_citations_by_host

Get top cited hosts/domains with citation counts and per-LLM breakdown. The previous period of equal length is computed automatically for comparison. Parameters:
ParameterTypeRequiredDescription
limitnumberNoMax hosts to return (default 50, max 500; the dashboard API caps at 200)
startDatestringNoStart of the window in YYYY-MM-DD format. Defaults to 14 days before endDate
endDatestringNoEnd of the window in YYYY-MM-DD format. Defaults to today. If both dates omitted, uses the past 14 days
granularitystringNoweek (default) compares this week vs last week; month compares calendar months. Ignored when both dates set
cumulativeAsOfstringNoWhen set (YYYY-MM-DD), adds cumulative_current/cumulative_previous (all citations ever up to that date vs end of the prior calendar month)
organizationIdnumberNoOrganization to query
Returns: Cited hosts with total counts, period-over-period deltas, and per-LLM citation breakdowns.

get_citations_by_page

Get top cited pages (URLs) with period citation metrics and per-LLM breakdown. The previous period of equal length is computed automatically for comparison. Parameters:
ParameterTypeRequiredDescription
limitnumberNoMax pages to return (default 50, max 500)
startDatestringNoStart of the window in YYYY-MM-DD format. Defaults to 14 days before endDate
endDatestringNoEnd of the window in YYYY-MM-DD format. Defaults to today. If both dates omitted, uses the past 14 days
granularitystringNoweek (default) compares this week vs last week; month compares calendar months. Ignored when both dates set
organizationIdnumberNoOrganization to query
Returns: Cited pages with URL, title, total counts, and per-LLM citation breakdowns.

get_visibility_timeseries

Get visibility trends over time by competitor. Returns at most 12 x-axis points and the top 5 competitors. Parameters:
ParameterTypeRequiredDescription
webSearchbooleanNoFilter by web search enabled responses (default true)
granularitystringNoauto (default), daily, weekly, or monthly. auto picks the coarsest bucket that keeps ≤12 points
organizationIdnumberNoOrganization to query
Returns: Per-competitor time series with mention rates per time bucket.

get_competitor_llm_breakdown

Get which LLMs mention which competitors and at what percentage over the last 14 days. Parameters:
ParameterTypeRequiredDescription
webSearchbooleanNoFilter by web search enabled responses (default true)
organizationIdnumberNoOrganization to query
Returns: Per-competitor, per-LLM mention percentages with provider metadata.

get_missed_prompts

Recent visibility prompts where competitors appeared in LLM responses but your brand did not. Use this to identify content and topic gaps. Parameters:
ParameterTypeRequiredDescription
limitnumberNoMax prompts to return (default 25, max 200)
organizationIdnumberNoOrganization to query
Returns: Array of missed prompts with the prompt text, which competitors appeared, and associated metadata.

get_traffic_analytics

Full website traffic analytics for your organization (same data as Dashboard → Traffic Analysis). Returns total visits, unique visitors, live users, top referrers, traffic sources breakdown, device breakdown, session metrics, bot vs human traffic analysis, UTM campaign analytics, and daily traffic time series. Parameters:
ParameterTypeRequiredDescription
startDatestringNoStart of the window in YYYY-MM-DD format. Defaults to 14 days before endDate
endDatestringNoEnd of the window in YYYY-MM-DD format. Defaults to today. If both dates omitted, uses the past 14 days
organizationIdnumberNoOrganization to query
Returns:
FieldTypeDescription
totalVisitsnumberTotal page visits in the period
uniqueVisitorsnumberUnique visitor count
liveUsersnumberCurrently active users
topReferrersarrayTop referrer domains with visit counts and percentages
deviceBreakdownobjectSplit of mobile / tablet / desktop visits
sessionMetricsobjectAverage session duration and bounce rate
utmAnalyticsobjectUTM campaign, source, and medium breakdowns

get_traffic_summary

Quick traffic overview with key metrics only. Use this for a fast snapshot; use get_traffic_analytics for the full dataset. Parameters:
ParameterTypeRequiredDescription
startDatestringNoStart of the window in YYYY-MM-DD format. Defaults to 14 days before endDate
endDatestringNoEnd of the window in YYYY-MM-DD format. Defaults to today. If both dates omitted, uses the past 14 days
organizationIdnumberNoOrganization to query
Returns:
FieldTypeDescription
totalVisitsnumberTotal page visits in the period
uniqueVisitorsnumberUnique visitor count
liveUsersnumberCurrently active users
topReferrersarrayTop 5 referrer domains with visit counts
deviceBreakdownobjectSplit of mobile / tablet / desktop visits
sessionMetricsobjectAverage session duration and bounce rate

get_brand_sentiment

Brand sentiment analysis derived from LLM visibility responses. Returns an average sentiment score, distribution across positive/neutral/negative/mixed responses, per-platform breakdown, and top brand strengths and weaknesses extracted by AI. Parameters:
ParameterTypeRequiredDescription
llmIdnumberNoFilter to a specific LLM by ID. Omit for all LLMs
daysnumberNoRestrict to responses from the last N days. Omit for all time
organizationIdnumberNoOrganization to query
Returns: Average sentiment score (0–100), sentiment distribution counts, per-platform breakdown, and lists of top brand strengths and weaknesses.

get_competitor_facts

AI-extracted facts about your tracked competitors from LLM visibility responses. For each competitor, returns positive and negative facts along with a sentiment score. Parameters:
ParameterTypeRequiredDescription
llmIdnumberNoFilter to a specific LLM by ID. Omit for all LLMs
daysnumberNoRestrict to responses from the last N days. Omit for all time
organizationIdnumberNoOrganization to query
Returns: competitorGroups — array of competitors, each with up to 15 extracted facts and a sentiment score.

get_brand_facts

AI-extracted facts about your own brand from LLM visibility responses. Returns a brand attribute breakdown by category (pricing, performance, usability, features, support, brand) with positive/negative signal counts, plus a list of specific brand facts with their polarity. Parameters:
ParameterTypeRequiredDescription
llmIdnumberNoFilter to a specific LLM by ID. Omit for all LLMs
daysnumberNoRestrict to responses from the last N days. Omit for all time
organizationIdnumberNoOrganization to query
Returns: attributes — per-category breakdown with positive/negative counts; brandFacts — up to 40 specific extracted facts with polarity.

get_brand_kit

Read your organization’s brand kit — the structured brand guidelines used to keep generated content on-brand. This is your own authored content (not AI-extracted), edited from the Brand Kit section of the dashboard or via update_brand_kit. Parameters:
ParameterTypeRequiredDescription
organizationIdnumberNoOrganization to query
Returns:
FieldTypeDescription
configuredbooleanWhether a brand kit row exists yet for the organization
brandDescriptionstring | nullWhat the brand/company does, in plain language
brandVoicestring | nullTone and voice guidelines
authorPersonastring | nullThe persona/POV content should be written from
writingRulesstring | nullSpecific writing rules, style constraints, or do/don’t guidance
productLinesarrayProduct lines, each with a title and description (empty if none)
updatedAtstring | nullWhen the brand kit was last updated

update_brand_kit

Write tool. Unlike the read-only data tools, update_brand_kit modifies your brand kit. It is annotated destructiveHint so MCP clients can prompt for confirmation before running it.
Update your organization’s brand kit / brand guidelines. Only the fields you provide are changed — omitted fields keep their current value. Use this to write structured brand guidance (e.g. distilled from documents or notes you share) into the brand kit. Provide at least one field. Parameters:
ParameterTypeRequiredDescription
brandDescriptionstringNoWhat the brand/company does, in plain language
brandVoicestringNoTone and voice guidelines, e.g. “confident, concise, no jargon”
authorPersonastringNoThe persona/POV content should be written from
writingRulesstringNoSpecific writing rules, style constraints, or do/don’t guidance
productLinesarrayNoFull replacement list of product lines, each { title, description } — not merged with existing
organizationIdnumberNoOrganization to update
Returns: The updated brand kit (brandDescription, brandVoice, authorPersona, writingRules, productLines, updatedAt).

get_llm_referral_traffic

Filters your website traffic to show only visits originating from AI/LLM platforms (ChatGPT, Claude, Perplexity, Gemini, Copilot, and others). Covers both direct referrer domains and UTM-tagged sources. Parameters:
ParameterTypeRequiredDescription
startDatestringNoStart of the window in YYYY-MM-DD format. Defaults to 14 days before endDate
endDatestringNoEnd of the window in YYYY-MM-DD format. Defaults to today. If both dates omitted, uses the past 14 days
organizationIdnumberNoOrganization to query
Returns:
FieldTypeDescription
llmReferrersarrayReferrer domains matched to known AI platforms
llmUtmSourcesarrayUTM sources matched to known AI platforms
totalLlmVisitsnumberCombined visits from referrers + UTM sources
totalLlmVisitorsnumberCombined unique visitors from AI sources
referrerVisitsnumberVisits from referrer domains only
utmVisitsnumberVisits from UTM sources only
startDatestringStart of the window analyzed (YYYY-MM-DD)
endDatestringEnd of the window analyzed (YYYY-MM-DD)

list_ai_seo_crawls

List full-site AI SEO crawls for the organization, most recent first. Each crawl audits an entire domain. Call this first to find crawl IDs before fetching specific audit results with get_ai_seo_audit_checks. Parameters:
ParameterTypeRequiredDescription
limitnumberNoMax crawls to return (default 10, max 20)
organizationIdnumberNoOrganization to query
Returns: crawls — array of crawls with crawl ID, domain, status (running or completed), and score breakdowns.

get_ai_seo_audit_checks

Get AI SEO check results for your organization from a site crawl. Without auditId, lists recent crawls. With auditId (a crawl ID, e.g. from list_ai_seo_crawls), returns the crawl’s site-wide checks (e.g. robots_present, sitemap, llms_txt), post-crawl checks, and per-page individual checks (e.g. canonical, title_description, structured_data) with pass/fail status, scores, and details. Pages are returned worst-scoring first and capped at 100; totalPages reports the full count so you can tell when the list is truncated. Parameters:
ParameterTypeRequiredDescription
auditIdnumberNoSpecific crawl ID to fetch checks for. Omit to list recent crawls
limitnumberNoMax crawls to list when auditId is omitted (default 10, max 20)
organizationIdnumberNoOrganization to query
Returns: When auditId is provided: crawl metadata (domain, status, scores), siteWideChecks, postCrawlChecks, totalPages (full page count), and pages — the worst-scoring pages first (capped at 100), each with its own checks (per-check pass/fail status, scores, and details). When omitted: crawls array of recent crawls with crawl ID, domain, status, and score breakdowns.

get_prompt_mention_rates

Per-prompt mention rate (share of responses mentioning your brand) for each tracked prompt, compared across two consecutive 14-day windows. Results are sorted by absolute change, descending. Parameters:
ParameterTypeRequiredDescription
asOfDatestringNoEnd date of the current 14-day window in YYYY-MM-DD format. Omit for today
organizationIdnumberNoOrganization to query
Returns: prompts — per-prompt current and previous mention rate (0–1 fractions) plus response counts per window; asOfDate and windowDays echoing the window used.

generate_report

Generate a complete performance report for your brand over any date range (a full month, a half month, or a custom span). Assembles five sections — visibility metrics, citation growth, content performance, prompt coverage wins, and technical — with display-ready numbers, deltas resolved against the equal-length window immediately before the range, and top movers pre-selected. Parameters:
ParameterTypeRequiredDescription
startDatestringYesInclusive start of the reporting range in YYYY-MM-DD format
endDatestringYesInclusive end of the reporting range in YYYY-MM-DD format
organizationIdnumberNoOrganization to query
Returns: report — the assembled report object with all five sections; format_guide — guidance for narrating the report as prose.

API Keys

API keys let you authenticate with the Pierview MCP server using a Bearer token instead of OAuth. This is useful for server-side integrations, CI/CD pipelines, or any environment where browser-based OAuth isn’t practical. Keys are scoped to your organization and can be created, viewed, and revoked from the Pierview dashboard.

Creating an API Key

1

Open Configuration

Go to your Pierview dashboard and select the API Keys tab.
2

Create a new key

Click Create API Key, enter a descriptive name (e.g. “Production MCP” or “CI Pipeline”), then click Create.
3

Copy your key

Your full API key will be displayed once. Copy it and store it securely, you won’t be able to see it again.The key starts with pv_ followed by 32 hex characters.
Store your API key in a secure location such as an environment variable or secrets manager. Never commit API keys to source control.

Using Your API Key

Pass the key as a Bearer token in the Authorization header when connecting to the MCP server.
claude mcp add pierview --transport http https://mcp.pierview.ai/mcp \
  --header "Authorization: Bearer YOUR_API_KEY"

Revoking a Key

To revoke an API key, go to the API Keys tab in Configuration and click the trash icon next to the key you want to disable. Revoked keys are immediately rejected by the server.

Security

  • API keys are hashed before storage, Pierview never stores your plaintext key
  • Each key is scoped to a single organization
  • Revoked keys cannot be re-activated; create a new key if needed
  • Rotate keys periodically as a best practice

Example Queries

Once connected, you can ask your AI tool questions like:
  • “What are my top cited pages this week?”
  • “What is my current mention rate and share of voice?”
  • “How has my visibility changed over the last two weeks?”
  • “Which LLMs mention my competitors the most?”
  • “Show me citation trends for my different organizations”
  • “Generate a performance report for last month”
  • “Which prompts gained or lost the most visibility over the last two weeks?”
  • “What’s in my brand kit?”
  • “Here are our brand guidelines — structure them and save them to my brand kit”
  • “Update my brand voice to be more concise and technical”