Model Context Protocol

Noverva as an operating layer for your AI client

Everything the interface can do, an MCP-capable client can do too — under your permissions, with confirmation for anything consequential. Built on the official SDK against the current MCP specification.

Authorisation

MCP does not get its own powers

The most common way an integration layer becomes a security incident is by running as a service account with broad rights. Noverva's MCP server has no ambient authority at all.

It is you, not a robot

Every call resolves to a real principal with real roles. Queries run through the same row-level security as the browser session. A site you cannot see does not appear.

Writes ask first

Anything that spends money, touches a live site, or changes state in bulk requires explicit confirmation. The client is told what will happen and what it will cost before it happens.

No back door

A tool you could not run in the interface fails in MCP with the same error and the same reason. There is no path through MCP that is not also a path through the product.

What is exposed

Resources, prompts and tools

The specification distinguishes three things a server can offer. Noverva uses all three rather than flattening everything into tool calls.

Resources

Read-only context a client can attach to a conversation — a site profile, a brand profile, a content calendar, an audit. Addressed by URI so a client can reference one without re-fetching it.

noverva://site/northwind-hydro.com/brand-profile

Prompts

Reusable, parameterised workflows the user can invoke deliberately: run a content audit, plan next quarter, investigate a traffic drop, prepare a refresh batch.

investigate-traffic-drop(site, window)

Tools

Actions with typed inputs and outputs. Read tools are available according to permission; write tools are gated behind confirmation.

noverva.get_ai_visibility(site, prompt_set)
Tool reference

Read freely. Write deliberately.

Read tools follow your permissions with no extra ceremony. Write tools state their consequence before they act.

Read

list_sites
Sites in the workspace you can access.
get_site_health
Crawl status, indexability, open findings by severity, connector health.
search_keywords
Keyword lookup with intent and metrics. Modelled values arrive tagged as modelled.
discover_topics
Topic clusters and the keywords that belong to each.
get_content_opportunities
Scored opportunities with their score breakdown, so a client can explain the ranking.
list_content / get_content
Content items, revisions, status and their sources.
get_content_calendar
What is planned, when, and what is waiting on approval.
get_rankings
Positions over time, with the provider that measured them.
get_ai_visibility
Mentions, citations and share of voice — always with the denominator.
get_content_performance
Clicks, impressions, CTR and decay signals per page.
get_internal_link_opportunities
Suggested links with anchor, context and reason.
get_brand_profile
Voice, audience, prohibited claims, differentiators.

WriteConfirmation required

create_content_brief
Cheap and reversible — creates a brief, publishes nothing.
generate_article
Spends generation credit. Confirmation required, and the cost is quoted first.
optimize_content
Rewrites a draft in place; creates a new revision, never overwrites one.
create_draft
Creates a draft on a connected CMS. Confirmation required.
publish_content / schedule_content
Publishes to a live site. Always confirmed, always audited, always idempotent.
refresh_content
Regenerates a published article as a draft revision for review — it does not silently update a live page.
Connecting

Point your client at Noverva

A scoped key, an endpoint, and you are done. Keys carry explicit scopes, can be rotated, and can be revoked without touching anything else.

mcp.json
{
  "mcpServers": {
    "noverva": {
      "url": "https://noverva.com/api/mcp",
      "headers": {
        "Authorization": "Bearer ${NOVERVA_API_KEY}"
      }
    }
  }
}

The key inherits the permissions of the member who created it, and can be scoped down further. It can never be scoped up.