# KrystalView Analytics (remote · krystalview.com)

Read-only MCP access to sessions, funnels, campaigns, errors, live visitors, and anomalies.

- Trust score: 74/100 (medium)
- Change this week: +4
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `krystalview.com`: 74/100 (this document), [markdown](https://verifymcp.io/servers/krystalview-krystalview/krystalview.md), [page](https://verifymcp.io/servers/krystalview-krystalview/krystalview)
- pypi · `krystalview-mcp`: 10/100, [markdown](https://verifymcp.io/servers/krystalview-krystalview/krystalview-mcp.md), [page](https://verifymcp.io/servers/krystalview-krystalview/krystalview-mcp)

## Channel facts

- Endpoint: `https://krystalview.com/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.1.6`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 80/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 77/100
  - AI-judged instruction clarity (excellent).
  - Tool/resource definitions use about 729 tokens (~56/item across 13 items; 13 tools + 0 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Capabilities**: 60/100
  - Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add --transport http krystalview-krystalview https://krystalview.com/mcp
```

### Codex

```toml
[mcp_servers.krystalview-krystalview]
url = "https://krystalview.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "krystalview-krystalview": {
      "type": "remote",
      "url": "https://krystalview.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add krystalview-krystalview --url https://krystalview.com/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  krystalview-krystalview:
    url: "https://krystalview.com/mcp"
```

### Other

```json
{
  "mcpServers": {
    "krystalview-krystalview": {
      "type": "http",
      "url": "https://krystalview.com/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 74, +1)

No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-31 (score 73, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 72, +1)

No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-28 (score 71, +1)

No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-27 (score 70, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-26 (score 69)

First indexed and scored.

## MCP tools (13)

### `get_sessions` (~128 tokens)

List Sessions

List recent visitor sessions with filters for URL, country, device, duration, friction, and rage clicks.

Input parameters:

- `country` (string): Country name filter.
- `device_type` (string): Device type filter.
- `has_rage_clicks` (boolean): Only sessions with rage clicks.
- `limit` (integer): Maximum results to return.
- `min_duration` (integer): Minimum session duration in seconds.
- `min_friction` (integer): Minimum friction score.
- `offset` (integer): Pagination offset.
- `query` (string): Search entry or exit URLs, for example /pricing.

Output parameters:

- `data`: Paginated recent visitor session records and related summary fields.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

### `get_session_detail` (~46 tokens)

Get Session Detail

Get full details for a specific visitor session, including pages, events, device context, errors, and friction signals.

Input parameters:

- `session_id` (string, required): Session primary key from get_sessions.

Output parameters:

- `data`: Detailed visitor session evidence including pages, events, context, errors, and friction signals.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

### `get_site_stats` (~56 tokens)

Get Site Stats

Get aggregate site metrics including all sessions, likely human sessions, likely bot/crawler sessions, duration, friction, rage clicks, daily counts, device mix, and top pages.

Input parameters:

- `days` (integer): Lookback period in days.

Output parameters:

- `data`: Aggregate site analytics metrics with traffic_quality fields for all, likely human, and likely bot/crawler sessions, plus trend series, device mix, top pages, and friction distribution.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

### `get_scroll_depth` (~49 tokens)

Get Scroll Depth

Get cumulative scroll-depth reach buckets for a specific page path.

Input parameters:

- `days` (integer): Lookback period in days.
- `path` (string, required): Page path to analyze, for example /pricing.

Output parameters:

- `data`: Scroll-depth reach buckets and page-level scroll engagement evidence.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

### `get_live_visitors` (~23 tokens)

Get Live Visitors

Get currently active visitors and sessions seen in the live activity window.

Output parameters:

- `data`: Currently active visitor/session records in the live activity window.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

### `get_anomalies` (~54 tokens)

Get Anomalies

List detected traffic, friction, bounce, and conversion anomalies for the site.

Input parameters:

- `limit` (integer): Maximum results to return.
- `unacknowledged_only` (boolean): Only include unacknowledged anomalies.

Output parameters:

- `data`: Detected traffic, bounce, friction, and conversion anomalies for the site.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

### `get_funnels` (~17 tokens)

List Funnels

List conversion funnels defined for this site.

Output parameters:

- `data`: Configured conversion funnels for the current site.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

### `get_funnel_analysis` (~52 tokens)

Analyze Funnel

Analyze a conversion funnel and show step reach, drop-off, and completion evidence.

Input parameters:

- `days` (integer): Lookback period in days.
- `funnel_id` (integer, required): Funnel ID from get_funnels.

Output parameters:

- `data`: Funnel reach, conversion, drop-off, and step-level evidence for the selected lookback period.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

### `get_campaign_summary` (~42 tokens)

Get Campaign Summary

Get campaign attribution breakdown by UTM campaign, source, medium, sessions, duration, and bounce rate.

Input parameters:

- `days` (integer): Lookback period in days.

Output parameters:

- `data`: UTM campaign attribution summaries including sessions, source, medium, duration, and bounce evidence.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

### `get_campaign_sessions` (~49 tokens)

Get Campaign Sessions

List sessions attributed to a specific marketing campaign.

Input parameters:

- `campaign` (string, required): UTM campaign name.
- `limit` (integer): Maximum results to return.
- `offset` (integer): Pagination offset.

Output parameters:

- `data`: Visitor sessions attributed to the requested UTM campaign.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

### `get_campaign_roas` (~43 tokens)

Get Campaign ROAS

Get paid campaign spend, clicks, sessions, attributed conversions, and ROAS where ad data is connected.

Input parameters:

- `days` (integer): Lookback period in days.

Output parameters:

- `data`: Paid campaign spend, clicks, sessions, conversions, revenue, and ROAS evidence where connected.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

### `get_errors` (~60 tokens)

Get Browser Errors

Get aggregated browser errors grouped by type and message, with affected paths and sample sessions.

Input parameters:

- `error_type` (string): Filter by error type.
- `limit` (integer): Maximum results to return.
- `unresolved_only` (boolean): Only include unresolved errors.

Output parameters:

- `data`: Aggregated browser error groups with affected paths, counts, and sample sessions.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

### `get_notifications` (~49 tokens)

Get Notifications

Get recent KrystalView notifications such as insights, setup notices, errors, and anomalies.

Input parameters:

- `limit` (integer): Maximum results to return.
- `unread_only` (boolean): Only include unread notifications.

Output parameters:

- `data`: Recent KrystalView notifications, insights, setup notices, and anomaly messages.
- `meta` (object): Site and rate-limit metadata for the current MCP call.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/krystalview-krystalview/krystalview#diagnostics

## Score history

- 2026-08-03: 74
- 2026-08-02: 74
- 2026-08-01: 73
- 2026-07-31: 73
- 2026-07-30: 72
- 2026-07-29: 71
- 2026-07-28: 71
- 2026-07-27: 70
- 2026-07-26: 69

## Links

- Remote endpoint: https://krystalview.com/mcp
- Repository: https://github.com/KrystalView/krystalview-mcp
- Website: https://krystalview.com/
- Changelog RSS feed: https://verifymcp.io/servers/krystalview-krystalview/krystalview/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/krystalview-krystalview/krystalview/changelog.json
- HTML version of this page: https://verifymcp.io/servers/krystalview-krystalview/krystalview
