Simple Analytics MCP by usefulapi

Read Simple Analytics stats: pageviews, visitors, pages, referrers, events and data exports.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
100%
Vollständigkeit des Schemas
88%
Qualität der Benennung
77%
Risiko der Vergiftung
80%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Befunde (3)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains suspicious base64-like encoded stringin simpleanalytics_get_breakdown
  • LOWTool 'simpleanalytics_export_datapoints' name length outside 3-30 rangein simpleanalytics_export_datapoints

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~3,292Tokens (Tool-Definitionen)
~5.5 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (2.57% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "simple-analytics": {
      "url": "https://simple-analytics.usefulapi.io/mcp"
    }
  }
}

Remote-Endpunkte

https://simple-analytics.usefulapi.io/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (6)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢simpleanalytics_list_websites

List the websites of the Simple Analytics account (hostnames to use in the other tools). Good first call. Admin API: GET /api/websites.

Eingabe-Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simpleanalytics_get_stats(hostname, start, end, timezone, page, ...)

Aggregated traffic for one website and date range: total pageviews, unique visitors and the median seconds on page. Optional filters narrow it to a page, country, referrer, UTM value, browser, OS, device or metadata value. Stats API: GET /<hostname>.json.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "hostname": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300,
      "description": "Website hostname as shown in Simple Analytics, e.g. example.com (from simpleanalytics_list_websites)."
    },
    "start": {
      "description": "Start date: YYYY-MM-DD, today, yesterday or today-30d. Default: 1 month ago.",
      "type": "string"
    },
    "end": {
      "description": "End date (inclusive): YYYY-MM-DD, today, yesterday or today-1d. Default: today.",
      "type": "string"
    },
    "timezone": {
      "description": "IANA time zone, e.g. Europe/Amsterdam. Default: the website setting.",
      "type": "string"
    },
    "page": {
      "description": "Only this page path, e.g. /pricing. A trailing * matches a prefix (/blog/*).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "pages": {
      "description": "Only these page paths, comma separated (/contact,/product/*).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "country": {
      "description": "Only this country, 2-letter code (NL).",
      "type": "string",
      "pattern": "^[A-Za-z]{2}$"
    },
    "referrer": {
      "description": "Only this referrer (normalized, e.g. google.com).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_source": {
      "description": "Only this UTM source.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_medium": {
      "description": "Only this UTM medium.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_campaign": {
      "description": "Only this UTM campaign.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_content": {
      "description": "Only this UTM content.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_term": {
      "description": "Only this UTM term.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "browser_name": {
      "description": "Only this browser name (Chrome).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "os_name": {
      "description": "Only this OS name (iOS).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "device_type": {
      "description": "Only this device type.",
      "type": "string",
      "enum": [
        "mobile",
        "tablet",
        "desktop",
        "tv"
      ]
    },
    "metadata": {
      "description": "Exact metadata filters as {key: value}; all must match.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "pattern": "^[a-zA-Z0-9_]+$"
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 200
      }
    }
  },
  "required": [
    "hostname"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simpleanalytics_get_timeseries(hostname, start, end, interval, timezone, ...)

Pageviews and visitors per hour, day, week, month or year for one website and date range (time series for charts and trends). Optional filters as in simpleanalytics_get_stats. Stats API: GET /<hostname>.json?fields=histogram.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "hostname": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300,
      "description": "Website hostname as shown in Simple Analytics, e.g. example.com (from simpleanalytics_list_websites)."
    },
    "start": {
      "description": "Start date: YYYY-MM-DD, today, yesterday or today-30d. Default: 1 month ago.",
      "type": "string"
    },
    "end": {
      "description": "End date (inclusive): YYYY-MM-DD, today, yesterday or today-1d. Default: today.",
      "type": "string"
    },
    "interval": {
      "description": "Bucket size (default day).",
      "type": "string",
      "enum": [
        "hour",
        "day",
        "week",
        "month",
        "year"
      ]
    },
    "timezone": {
      "description": "IANA time zone, e.g. Europe/Amsterdam. Default: the website setting.",
      "type": "string"
    },
    "page": {
      "description": "Only this page path, e.g. /pricing. A trailing * matches a prefix (/blog/*).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "pages": {
      "description": "Only these page paths, comma separated (/contact,/product/*).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "country": {
      "description": "Only this country, 2-letter code (NL).",
      "type": "string",
      "pattern": "^[A-Za-z]{2}$"
    },
    "referrer": {
      "description": "Only this referrer (normalized, e.g. google.com).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_source": {
      "description": "Only this UTM source.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_medium": {
      "description": "Only this UTM medium.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_campaign": {
      "description": "Only this UTM campaign.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_content": {
      "description": "Only this UTM content.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_term": {
      "description": "Only this UTM term.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "browser_name": {
      "description": "Only this browser name (Chrome).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "os_name": {
      "description": "Only this OS name (iOS).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "device_type": {
      "description": "Only this device type.",
      "type": "string",
      "enum": [
        "mobile",
        "tablet",
        "desktop",
        "tv"
      ]
    },
    "metadata": {
      "description": "Exact metadata filters as {key: value}; all must match.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "pattern": "^[a-zA-Z0-9_]+$"
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 200
      }
    }
  },
  "required": [
    "hostname"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simpleanalytics_get_breakdown(hostname, dimension, start, end, limit, ...)

Top values of one dimension for one website and date range, each with pageviews and visitors: pages, countries, referrers, UTM sources/mediums/campaigns/contents/terms, browsers, operating systems or device types. Optional filters as in simpleanalytics_get_stats. Stats API: GET /<hostname>.json?fields=<dimension>.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "hostname": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300,
      "description": "Website hostname as shown in Simple Analytics, e.g. example.com (from simpleanalytics_list_websites)."
    },
    "dimension": {
      "type": "string",
      "enum": [
        "pages",
        "countries",
        "referrers",
        "utm_sources",
        "utm_mediums",
        "utm_campaigns",
        "utm_contents",
        "utm_terms",
        "browser_names",
        "os_names",
        "device_types"
      ],
      "description": "What to break the traffic down by."
    },
    "start": {
      "description": "Start date: YYYY-MM-DD, today, yesterday or today-30d. Default: 1 month ago.",
      "type": "string"
    },
    "end": {
      "description": "End date (inclusive): YYYY-MM-DD, today, yesterday or today-1d. Default: today.",
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of values (default 20, max 1000).",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    },
    "timezone": {
      "description": "IANA time zone, e.g. Europe/Amsterdam. Default: the website setting.",
      "type": "string"
    },
    "page": {
      "description": "Only this page path, e.g. /pricing. A trailing * matches a prefix (/blog/*).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "pages": {
      "description": "Only these page paths, comma separated (/contact,/product/*).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "country": {
      "description": "Only this country, 2-letter code (NL).",
      "type": "string",
      "pattern": "^[A-Za-z]{2}$"
    },
    "referrer": {
      "description": "Only this referrer (normalized, e.g. google.com).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_source": {
      "description": "Only this UTM source.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_medium": {
      "description": "Only this UTM medium.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_campaign": {
      "description": "Only this UTM campaign.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_content": {
      "description": "Only this UTM content.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_term": {
      "description": "Only this UTM term.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "browser_name": {
      "description": "Only this browser name (Chrome).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "os_name": {
      "description": "Only this OS name (iOS).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "device_type": {
      "description": "Only this device type.",
      "type": "string",
      "enum": [
        "mobile",
        "tablet",
        "desktop",
        "tv"
      ]
    },
    "metadata": {
      "description": "Exact metadata filters as {key: value}; all must match.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "pattern": "^[a-zA-Z0-9_]+$"
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 200
      }
    }
  },
  "required": [
    "hostname",
    "dimension"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simpleanalytics_get_events(hostname, names, start, end, timezone, ...)

How often custom events happened on one website in a date range. Pass event names, or leave names out for all events (up to 1000). Stats API: GET /<hostname>.json?events=...

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "hostname": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300,
      "description": "Website hostname as shown in Simple Analytics, e.g. example.com (from simpleanalytics_list_websites)."
    },
    "names": {
      "description": "Event names; default all events.",
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100,
        "pattern": "^[^,*]+$"
      }
    },
    "start": {
      "description": "Start date: YYYY-MM-DD, today, yesterday or today-30d. Default: 1 month ago.",
      "type": "string"
    },
    "end": {
      "description": "End date (inclusive): YYYY-MM-DD, today, yesterday or today-1d. Default: today.",
      "type": "string"
    },
    "timezone": {
      "description": "IANA time zone, e.g. Europe/Amsterdam. Default: the website setting.",
      "type": "string"
    },
    "page": {
      "description": "Only this page path, e.g. /pricing. A trailing * matches a prefix (/blog/*).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "pages": {
      "description": "Only these page paths, comma separated (/contact,/product/*).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "country": {
      "description": "Only this country, 2-letter code (NL).",
      "type": "string",
      "pattern": "^[A-Za-z]{2}$"
    },
    "referrer": {
      "description": "Only this referrer (normalized, e.g. google.com).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_source": {
      "description": "Only this UTM source.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_medium": {
      "description": "Only this UTM medium.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_campaign": {
      "description": "Only this UTM campaign.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_content": {
      "description": "Only this UTM content.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "utm_term": {
      "description": "Only this UTM term.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "browser_name": {
      "description": "Only this browser name (Chrome).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "os_name": {
      "description": "Only this OS name (iOS).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "device_type": {
      "description": "Only this device type.",
      "type": "string",
      "enum": [
        "mobile",
        "tablet",
        "desktop",
        "tv"
      ]
    },
    "metadata": {
      "description": "Exact metadata filters as {key: value}; all must match.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "pattern": "^[a-zA-Z0-9_]+$"
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 200
      }
    }
  },
  "required": [
    "hostname"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simpleanalytics_export_datapoints(hostname, start, end, type, fields, ...)

Raw, unsampled page views or events of one website for a date range, as rows with only the fields asked for. The reply is capped at max_rows (default 100, max 1000) rows and 2 MB; "truncated" says more exist, so narrow the range. Rows are cut to about 40 000 characters of JSON. Dates: YYYY-MM-DD, or YYYY-MM-DDTHH for one hour (start and end the same day). Robots are left out unless asked. Needs the user id too. Export API: GET /api/export/datapoints.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "hostname": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300,
      "description": "Website hostname as shown in Simple Analytics, e.g. example.com (from simpleanalytics_list_websites)."
    },
    "start": {
      "type": "string",
      "description": "Start date (see description)."
    },
    "end": {
      "type": "string",
      "description": "End date, inclusive."
    },
    "type": {
      "description": "Page views (default) or events.",
      "type": "string",
      "enum": [
        "pageviews",
        "events"
      ]
    },
    "fields": {
      "description": "Fields to export (default added_iso, path, country_code, device_type, document_referrer). All: added_date, added_iso, added_unix, browser_name, browser_version, country_code, datapoint, device_type, document_referrer, duration_seconds, hostname, hostname_original, is_robot, is_unique, lang_language, lang_region, os_name, os_version, path, path_and_query, query, referrer_hostname, referrer_path, screen_height, screen_width, scrolled_percentage, session_id, user_agent, utm_campaign, utm_content, utm_medium, utm_source, utm_term, uuid, viewport_height, viewport_width, metadata.<key>_<text|int|bool|date>. datapoint is for events only; duration_seconds, is_unique and scrolled_percentage for pageviews only.",
      "minItems": 1,
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "max_rows": {
      "description": "Maximum rows returned (default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    },
    "include_robots": {
      "description": "Include robot/crawler traffic (default false).",
      "type": "boolean"
    },
    "timezone": {
      "description": "IANA time zone, e.g. Europe/Amsterdam. Default: the website setting.",
      "type": "string"
    }
  },
  "required": [
    "hostname",
    "start",
    "end"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet6 Tools