PageLens Analytics
Cookieless web analytics and AI Visibility: traffic, funnels, errors, and which AI bots read you.
使うべきか
品質と安全性
検出事項(7)
- LOWget_pages 内
- LOWlist_sessions 内
- LOWget_session 内
- LOWget_web_vitals 内
- LOWget_journeys 内
- LOWget_retention 内
- LOWget_web_vitals 内
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"pagelens": {
"url": "https://app.pagelens.io/mcp"
}
}
}リモートエンドポイント
https://app.pagelens.io/mcpstreamable-httpできること
ツール一覧
ツール(23)
🟢list_sites
List the websites this key can access, with visitors in the last 24 hours.
入力スキーマ
{
"type": "object",
"properties": {}
}🟢list_segments(site_id)
Saved segments (named filter sets such as "Paid traffic" or "Mobile in Germany") that can be applied to any report with segment_id.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
}
},
"required": [
"site_id"
]
}🟢get_overview(site_id, period, from, to, timezone, ...)
Headline metrics (visitors, sessions, pageviews, pages per session, bounce rate, average session duration) for a period, compared with the previous period of the same length, plus a time series.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
},
"include_series": {
"type": "boolean",
"description": "Include the per-day/hour series (default true)"
}
},
"required": [
"site_id"
]
}🟢get_breakdown(site_id, dimension, period, from, to, ...)
Top values of one dimension (pages, entry/exit pages, referrers, channels, UTM tags, countries, cities, browsers, OS, devices, languages, custom events, outbound links) with visitors and sessions.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"dimension": {
"type": "string",
"enum": [
"page",
"entry",
"exit",
"title",
"hostname",
"referrer",
"channel",
"utm_source",
"utm_medium",
"utm_campaign",
"tag",
"browser",
"os",
"device",
"screen",
"country",
"city",
"language",
"event",
"outbound"
]
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Rows to return (default 10)"
},
"search": {
"type": "string",
"description": "Only values containing this text"
}
},
"required": [
"site_id",
"dimension"
]
}🟢get_pages(site_id, period, from, to, timezone, ...)
Per-page metrics: visitors, pageviews, entries, bounce rate and time on page.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Rows to return (default 10)"
}
},
"required": [
"site_id"
]
}🟢get_realtime(site_id)
Visitors online right now (last 5 minutes) and what they are viewing.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
}
},
"required": [
"site_id"
]
}🟢list_sessions(site_id, period, from, to, timezone, ...)
Recent sessions with entry/exit page, pages viewed, duration, source, location and device.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Rows to return (default 10)"
},
"kind": {
"type": "string",
"enum": [
"all",
"engaged",
"bounced",
"errors",
"replay"
]
},
"user_id": {
"type": "string",
"description": "Only sessions of this identified user"
}
},
"required": [
"site_id"
]
}🟢get_session(site_id, session_id)
Every pageview and event in one session, in order.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"session_id": {
"type": "string"
}
},
"required": [
"site_id",
"session_id"
]
}🟢get_events(site_id, period, from, to, timezone, ...)
Custom events (sent with pagelens.track) and outbound clicks with counts and their properties.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Rows to return (default 10)"
}
},
"required": [
"site_id"
]
}🟢get_errors(site_id, period, from, to, timezone, ...)
JavaScript errors grouped by message, with occurrences, affected sessions and pages.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Rows to return (default 10)"
}
},
"required": [
"site_id"
]
}🟢get_web_vitals(site_id, period, from, to, timezone, ...)
Core Web Vitals from real visitors (LCP, INP, CLS, FCP, TTFB) at p50/p75/p90, overall and per page.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
}
},
"required": [
"site_id"
]
}🟢get_journeys(site_id, period, from, to, timezone, ...)
Most common page-to-page paths visitors take.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Rows to return (default 10)"
}
},
"required": [
"site_id"
]
}🟢run_funnel(site_id, steps, mode, compare_previous, period, ...)
Conversion funnel: how many sessions completed each step. Steps are pages (path, * wildcard allowed), custom event names, or a page scrolled at least `threshold` percent (type scroll). mode: ordered (default; other pages may come in between), strict (each step right after the previous one) or flexible (middle steps may be skipped). compare_previous adds the same funnel over the previous period.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"steps": {
"type": "array",
"minItems": 2,
"maxItems": 10,
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"page",
"event",
"scroll"
]
},
"value": {
"type": "string"
},
"threshold": {
"type": "integer"
}
},
"required": [
"type",
"value"
]
}
},
"mode": {
"type": "string",
"enum": [
"ordered",
"strict",
"flexible"
]
},
"compare_previous": {
"type": "boolean"
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
}
},
"required": [
"site_id",
"steps"
]
}🟢list_goals(site_id, period, from, to, timezone, ...)
Goals with conversions and conversion rate for the period, compared with the previous period.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
}
},
"required": [
"site_id"
]
}🟡create_goal(site_id, name, type, value, threshold)
Create a goal that counts sessions visiting a page, firing a custom event, or scrolling a page at least `threshold` percent (type scroll). Needs a write key and member access or higher.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"name": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"page",
"event",
"scroll"
]
},
"value": {
"type": "string",
"description": "Page path (wildcards allowed) or event name"
},
"threshold": {
"type": "integer",
"description": "For scroll goals: percentage of the page scrolled, e.g. 75"
}
},
"required": [
"site_id",
"type",
"value"
]
}🟡add_annotation(site_id, date, text)
Mark a date on the charts (a release, a campaign, an outage). Needs a write key and member access or higher.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"date": {
"type": "string",
"description": "YYYY-MM-DD"
},
"text": {
"type": "string"
}
},
"required": [
"site_id",
"date",
"text"
]
}🟢get_retention(site_id, unit, timezone)
Cohort retention of identified users (pagelens.identify): share of each daily or weekly cohort that came back in later periods.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"unit": {
"type": "string",
"enum": [
"day",
"week"
]
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
}
},
"required": [
"site_id"
]
}🟢list_users(site_id, period, from, to, timezone, ...)
Users active in the period: identified users (with traits) and anonymous visitors, with sessions, pageviews and first source.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Rows to return (default 10)"
},
"kind": {
"type": "string",
"enum": [
"all",
"identified",
"anonymous"
]
},
"search": {
"type": "string",
"description": "Match user id, name or email"
}
},
"required": [
"site_id"
]
}🟢get_user(site_id, user_id)
Profile of one identified user (traits, first/last seen, totals) and their sessions.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"user_id": {
"type": "string"
}
},
"required": [
"site_id",
"user_id"
]
}🟢get_search_console(site_id, dimension, period, from, to, ...)
Google Search Console data for the site (when connected): clicks, impressions, CTR and average position in Google Search, by query, page, country or device, plus a daily series. Data lags about 2 days.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"dimension": {
"type": "string",
"enum": [
"query",
"page",
"country",
"device"
]
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Rows to return (default 10)"
},
"search": {
"type": "string",
"description": "Only queries (or pages) containing this text"
}
},
"required": [
"site_id"
]
}🔴delete_user_data(site_id, user_id)
GDPR erasure: permanently delete all events, session replays and the profile of one user on a site. Needs a write key and admin access.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"user_id": {
"type": "string",
"description": "Identified user id, or \"anon:<visitor_id>\" for an anonymous visitor"
}
},
"required": [
"site_id",
"user_id"
]
}🟢get_bots_and_ai(site_id, period, from, to, timezone, ...)
Bot and AI traffic: AI crawlers (GPTBot, ClaudeBot…), AI assistants fetching pages, search engines, and human visits referred by AI assistants (ChatGPT, Perplexity, Claude…).
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
}
},
"required": [
"site_id"
]
}🟢get_ai_visibility(site_id, period, from, to, timezone, ...)
How the site shows up in AI assistants, per AI company (OpenAI/ChatGPT, Anthropic/Claude, Perplexity, Google/Gemini…) and per page: crawler reads, live fetches while answering a person, human visits sent back, purchases and revenue, robots.txt access, and plain-language findings.
入力スキーマ
{
"type": "object",
"properties": {
"site_id": {
"type": "string",
"description": "Site id from list_sites"
},
"period": {
"type": "string",
"enum": [
"today",
"yesterday",
"24h",
"7d",
"30d",
"90d",
"12m"
],
"description": "Time range (default 7d)"
},
"from": {
"type": "string",
"description": "Start date YYYY-MM-DD (overrides period)"
},
"to": {
"type": "string",
"description": "End date YYYY-MM-DD, inclusive (default today)"
},
"timezone": {
"type": "string",
"description": "IANA timezone for days and hours, e.g. Europe/Berlin (default UTC)"
},
"filters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filters \"dimension:value\" (is). Other operators go after the dimension: \"page!:/x\" is not, \"page~:blog\" contains, \"page!~:blog\" does not contain, \"page^:/docs\" starts with. Dimensions: page, title, hostname, referrer, channel, utm_source, utm_medium, utm_campaign, browser, os, device, screen, country (ISO code), city, language, event, tag"
},
"segment_id": {
"type": "string",
"description": "Apply a saved segment (see list_segments); combines with filters"
}
},
"required": [
"site_id"
]
}コミュニティ
エビデンス