Skip to main content
Glama
plausible-mcp

plausible-mcp

by surendranb

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
DO_NOT_TRACKNoSet to `1` to disable anonymous telemetry.0
PLAUSIBLE_API_KEYNoYour Plausible Stats/Sites API token. Required unless passed via the tool `token` argument.
PLAUSIBLE_BASE_URLNoBase URL for self-hosted Plausible.https://plausible.io

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_aggregate_statsB

Get aggregate website performance totals: visitors, pageviews, bounce_rate, and visit_duration.

Args: site_id: Domain name of the site in Plausible (e.g. 'surendranb.com', 'freeinference.dev'). date_range: Time period ('day', 'today', 'yesterday', '7d', '30d', 'month', '6mo', '12mo', or 'YYYY-MM-DD,YYYY-MM-DD'). Default '30d'. metrics: Optional list of metrics (e.g. ['visitors', 'pageviews', 'bounce_rate', 'visit_duration', 'visits']). Defaults to standard 4 metrics. token: Optional Plausible API token. If omitted, uses PLAUSIBLE_API_KEY environment variable.

get_breakdownA

Get metrics breakdown by dimension: pages, sources, countries, browsers, operating systems, or devices.

Args: site_id: Domain name of the site in Plausible (e.g. 'surendranb.com'). property_name: Dimension to segment by. Accepts aliases: 'page', 'source', 'country', 'browser', 'os', 'device', 'entry_page', 'exit_page', 'city', 'region', or full Plausible names like 'event:page', 'visit:source'. date_range: Time period ('day', '7d', '30d', 'month', '6mo', '12mo', or 'YYYY-MM-DD,YYYY-MM-DD'). Default '30d'. limit: Maximum number of rows to return (default 20, max 100). token: Optional Plausible API token. If omitted, uses PLAUSIBLE_API_KEY environment variable.

get_realtime_visitorsA

Get the current count of active real-time visitors on the website right now.

Args: site_id: Domain name of the site in Plausible (e.g. 'surendranb.com'). token: Optional Plausible API token. If omitted, uses PLAUSIBLE_API_KEY environment variable.

get_timeseriesA

Get historical timeseries trendlines (visitors, pageviews) over time for plotting charts.

Args: site_id: Domain name of the site in Plausible (e.g. 'surendranb.com'). date_range: Time period ('day', '7d', '30d', 'month', '6mo', '12mo', or 'YYYY-MM-DD,YYYY-MM-DD'). Default '30d'. interval: Aggregation bucket: 'date' (daily) or 'month' (monthly). Default 'date'. token: Optional Plausible API token. If omitted, uses PLAUSIBLE_API_KEY environment variable.

doctorA

Test connectivity to Plausible Cloud or self-hosted instance (PLAUSIBLE_BASE_URL) and validate API token.

Args: token: Optional Plausible API token to test. If omitted, tests PLAUSIBLE_API_KEY from environment.

skills_listA

List available Plausible Analytics operational skills and playbooks.

skill_readA

Fetch guidance and analytical playbooks for Plausible Analytics by name.

Args: name: Name of skill to read (e.g. 'plausible-overview', 'analytics-recipes'). Call skills_list() to view all.

check_for_updatesA

Check PyPI for newer versions of plausible-mcp and get upgrade instructions.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.8/5.0

Scored across 8 tools

Disambiguation5/5

Each analytics tool targets a clearly different output shape: totals (get_aggregate_stats), segmented rows (get_breakdown), trendlines (get_timeseries), and a live counter (get_realtime_visitors). The meta-tools are equally separable: skills_list vs skill_read differ by enumeration vs fetch, check_for_updates covers package versioning while doctor covers connectivity/auth. No two tools could plausibly be confused for the same task.

Naming Consistency4/5

The dominant pattern is verb_noun (get_aggregate_stats, get_breakdown, get_timeseries, get_realtime_visitors, check_for_updates). The two skill tools invert to noun_verb (skills_list, skill_read) and 'doctor' is a bare noun, so there are minor deviations but everything remains readable and predictable.

Tool Count4/5

Eight tools is a well-scoped set for an analytics server, and each one earns its place. However, three of the eight (skills_list, skill_read, check_for_updates, doctor) are operational/meta overhead, leaving only four actual analytics queries, which is a bit thin on the core surface.

Completeness3/5

The core read path (totals, breakdowns, timeseries, realtime) is covered, but the Plausible API surface is notably partial: no site/property listing, no goal or custom-event conversion metrics, no funnel or comparison queries, and no filter/segment parameters on breakdowns beyond a single dimension. Agents can work around some of this via date_range aliases but will hit dead ends on conversions and multi-dimensional filtering.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues