MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · Data access / search

Pirsch Analytics MCP by usefulapi

Read Pirsch web analytics: visitors, pages, referrers, UTM, events, funnels and sessions.

Checks passed
14 / 22

0 failed · 8 not measured

Median response
63 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
27

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Outdated check

Last connection measurement is over 24 hours old. Current availability is unknown.

Last checked
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
004
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
400
Publisher identityCan the publisher be traced to its source?
402

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 63 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-11-25, serverInfo.name pirsch-mcp.

  • Pass
    Lists tools

    tools/list returned 27 tools.

  • Pass
    Current protocol

    Negotiated 2025-11-25. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 63 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 63 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Not measured
    Stable tool list

    Fewer than two successful probes in 30 days, so tool-list stability is not measured.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Pass
    Parameters documented

    587 of 587 parameters have a description (100%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Pass
    Website matches publisher

    The website host matches the reverse-domain namespace.

  • Pass
    Source repo linked

    A repository URL is on file.

  • Not measured
    Repo owner matches

    This namespace is not an io.github login, so the owner comparison does not apply.

  • Pass
    Recently updated

    Updated 2026-11-10T23:33:51.511565Z, within 180 days.

  • Not measured
    Open-source licence

    The GitHub licence lookup has not returned an OSI result yet.

Start using Pirsch Analytics MCP by usefulapi

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http pirsch-analytics-mcp-by-usefulapi https://pirsch.usefulapi.io/mcp

Capabilities

Tools 27

pirsch_get_active_visitors

Visitors on the site right now (or in the past n seconds), with the pages they are on and their countries. GET /api/v1/statistics/active.

Discovered
pirsch_get_domain

One Pirsch dashboard (domain) by id, with its time zone, hostname, role and subscription state. GET /api/v1/domain?id=.

Discovered
pirsch_get_duration

Average session duration over time, or average time on page over time, in seconds. GET /api/v1/statistics/duration/session or /duration/page.

Discovered
pirsch_get_event_breakdown

The values of one metadata key of one event, with count, visitors and conversion rate. Both event and event_meta_key are required. GET /api/v1/statistics/event/meta.

Discovered
pirsch_get_funnel

Visitors per funnel step for a period: visitors, share of the first step, drop-off between steps. The filter applies to the first step. GET /api/v1/statistics/funnel.

Discovered
pirsch_get_growth

Growth of visitors, views, sessions, bounces, time spent and conversion rate compared with the previous period of the same length. GET /api/v1/statistics/growth.

Discovered
pirsch_get_overview

Quick overview of a dashboard: visitors, views, growth compared with the previous period, a visitors time series and the number of team members. Cached by Pirsch; takes no date range or filters. GET /api/v1/statistics/overview.

Discovered
pirsch_get_platforms

Visitors on desktop, mobile and unknown platforms, as counts and shares. GET /api/v1/statistics/platform.

Discovered
pirsch_get_session

All page views and events of one session in time order. Both ids come from pirsch_list_sessions. GET /api/v1/statistics/session/details.

Discovered
pirsch_get_tag_breakdown

The values of one tag key with views and share. The tag filter (the key) is required. GET /api/v1/statistics/tag/details.

Discovered
pirsch_get_time_distribution

Visitors by hour of the day, by minute (only when from and to are the same day), or by weekday and hour (Monday is 0). Shows when traffic peaks. GET /api/v1/statistics/hours, /minutes or /weekdays.

Discovered
pirsch_get_totals

Totals for a period: visitors, views, sessions, bounces, bounce rate and conversion rate. Not grouped by day, so returning visitors are counted once. GET /api/v1/statistics/total.

Discovered
pirsch_get_visitors_time_series

Visitors, views, sessions, bounces and bounce rate per day, week, month or year (see scale). Use it for traffic charts and trends. GET /api/v1/statistics/visitor.

Discovered
pirsch_list_devices

Visitors per browser, browser version, operating system or screen class (XXL to S). Filters narrow the data (for example country=de, path=~blog). Results are rows with visitors, views, sessions, bounces and relative shares. GET /api/v1/statistics/browser, /browser/version, /os or /screen.

Discovered
pirsch_list_domains

List the Pirsch dashboards (domains) the OAuth client can read: id, hostname, display name, time zone and role. Use the id as domain_id in every other tool. A dashboard-level client sees one domain; an account-level client sees all. GET /api/v1/domain.

Discovered
pirsch_list_event_pages

The pages on which an event was triggered, with visitors and views. The event name is required. GET /api/v1/statistics/event/page.

Discovered
pirsch_list_events

Custom events with count, visitors, views, conversion rate, average duration and their metadata keys. Use pirsch_get_event_breakdown for the values of one metadata key. GET /api/v1/statistics/events.

Discovered
pirsch_list_filter_values

The values that exist for a filter in a period, such as all page paths, referrers, countries, browsers or event names. Use it to find valid values before filtering. GET /api/v1/statistics/options/{dimension}.

Discovered
pirsch_list_funnels

The funnels defined for a dashboard, with their steps and step filters. Use a funnel id in pirsch_get_funnel. GET /api/v1/funnel.

Discovered
pirsch_list_geography

Visitors per country, region, city or language. Filters narrow the data (for example country=de, path=~blog). Results are rows with visitors, views, sessions, bounces and relative shares. GET /api/v1/statistics/country, /region, /city or /language.

Discovered
pirsch_list_goals

Conversion goals with their definition (page pattern, event, targets) and the visitors, views and conversion rate for the period. GET /api/v1/statistics/goals.

Discovered
pirsch_list_hostnames

Traffic per hostname. Mostly useful for rollup views that combine several hostnames. GET /api/v1/statistics/hostname.

Discovered
pirsch_list_pages

Top pages with visitors, views, sessions, bounces, bounce rate and average time on page. type=entry lists landing pages, type=exit lists exit pages. Filters narrow the data (for example country=de, path=~blog). Results are rows with visitors, views, sessions, bounces and relative shares. GET /api/v1/statistics/page, /page/entry or /page/exit.

Discovered
pirsch_list_referrers

Where visitors come from: referrers (by=referrer) or traffic channels such as Organic Search and Paid Search (by=channel). Filters narrow the data (for example country=de, path=~blog). Results are rows with visitors, views, sessions, bounces and relative shares. GET /api/v1/statistics/referrer or /channel.

Discovered
pirsch_list_sessions

Individual visitor sessions: start, duration, entry and exit page, page views, bounce, country, city, referrer, browser, OS and UTM data. visitor_id is a string (a 64-bit number). Use pirsch_get_session for one session's page views and events. GET /api/v1/statistics/session/list.

Discovered
pirsch_list_tags

Tag keys with views and share. Use pirsch_get_tag_breakdown to see the values of one key. GET /api/v1/statistics/tags.

Discovered
pirsch_list_utm

Visitors per UTM source, medium, campaign, content or term. Filters narrow the data (for example country=de, path=~blog). Results are rows with visitors, views, sessions, bounces and relative shares. GET /api/v1/statistics/utm/{dimension}.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected63 ms27