← Back to all apps

Pendo

Productivityby Pendo
Launched Apr 22, 2026 on ChatGPT

The Pendo connector for product analytics and behavioral data to AI environments. Access visitor and account metadata, query user behavior, and analyze pages, features, and events. Supports real-time product data integration for tasks like customer call preparation, adoption analysis, churn investigation, and support ticket enrichment.

28ChatGPT Tools
11Claude Tools
PendoDeveloper
ProductivityCategory

Use Cases

productivitydata

Available Tools

Account Metadata Schema

accountMetadataSchema
Full Description

Return the set of metadata that is available from the accounts table for each account. It is a set of . separated metadata field names to information about that field, including the type. Here is an example return value

{ "metadata.custom.ARR" : "float", "metadata.pendo.donotprocess" : "boolean" }

PERFORMANCE: This is a fast-running tool.

Parameters (1 required, 1 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
userQuerystring

The original user query or question that triggered this tool call.

Account Query

accountQuery
Full Description

Retrieve account data and metadata OR just the counts of matching accounts by running aggregation queries directly against the account dataset. Every response entity will conceptually be an account of that subscription.

USE THIS TOOL FOR: Getting account information, metadata, and account counts with flexible filtering options.

PERFECT FOR QUERIES LIKE:

  • "Get all accounts with their custom metadata fields"
  • "Show me accounts from a specific segment"
  • "How many accounts match certain criteria?" (set count=true)
  • "Get account metadata like ARR, company size, or custom properties"

WHAT THIS TOOL RETURNS:

  • Account data with selected metadata fields (without select passed in, no metadata fields are returned)
  • Account counts when count=true is specified
  • Results filtered by segments, specific account IDs, or other criteria

FILTERING OPTIONS:

  • Filter by specific account ID
  • Filter by account segments
  • Filter by metadata value for a specific metadata group and field
  • Select specific metadata fields to include

This tool executes aggregation queries directly and returns results immediately. For available metadata fields, use the accountMetadataSchema tool. Example usage of metadata fileds is select=["metadata.agent.is_paying","metadata.auto.lastvisit"].

PERFORMANCE: This is a fast-running tool.

Parameters (1 required, 6 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
accountIdstring

only return data about the specified accountId

countboolean

When true, returns ONLY a single aggregate count number — no entity names or ranked rows. Use for "how many" questions. When false (default), returns individual rows with metrics. REQUIRED for any ranking, listing, or "top N" query. If the query asks for a list or ranking, count MUST be false.

metadataFilterstring

The form of this field is 'metadata.metadataGroup.metadataField == metadataValue'. 'metadata' is a const and should be included exactly as shown. The metadataGroup is often 'agent', 'auto', 'custom', or 'salesforce' but may be anything. metadataField may be any string. metadataValue may be anything but if it is a string, surround it in quotes. The == (equals) operator may be replaced with the following operators: != (not equals), < (less than), > (greater than), <= (less than or equal to), or >= (greater than or equal to). Multiple conditions may be combined with && (AND) or || (OR). When filtering dates, use the date format `date("YYYY-MM-DD")`.

segmentIdstring

filter the results by the specified segment id. If not provided, no segment filtering is applied.

selectarray

list of fields to read in addition to the accountId. only exact field names may be used, and should come from the accountMetadataSchema tool

userQuerystring

The original user query or question that triggered this tool call.

Activity Query

activityQuery
Full Description

Query aggregated activity metrics (events, minutes, unique visitors, unique accounts) for pages, features, track types, accounts, or visitors within a date range.

Use this tool to answer questions about usage patterns, engagement metrics, and activity counts. Supports filtering by account, visitor, segment, or specific item IDs, and grouping results by various dimensions.

RANKING PATTERN: For "top N" or "most active" queries, use count=false + group by the entity to rank + sort + limit. count=true returns ONLY a single aggregate number with no entity rows.

PRODUCT AREA: Pass productAreaId to scope the query to one product area (not with itemIds). For page, feature, and trackType entities, results are limited to items in that area; for visitor and account, to entities with any activity attributed to that area, including guides.

USE FOR: Getting activity metrics from various sources with several filtering options.

EXAMPLES:

  • Top 3 features by visitors → entityType='feature', count=false, group=['featureId'], sort=['-uniqueVisitorCount'], limit=3, dateRange={range:'relative', lastNDays:30}
  • Top 5 pages by traffic → entityType='page', count=false, group=['pageId'], sort=['-uniqueVisitorCount'], limit=5, dateRange={range:'relative', lastNDays:30}
  • Most active visitors → entityType='visitor', count=false, group=['visitorId'], sort=['-numEvents'], limit=10, dateRange={range:'relative', lastNDays:30}
  • Get account activity metrics for the account ID XYZ → dateRange={range:'relative', lastNDays:30}
  • What are the most active pages in the last 30 days? → entityType='page', count=false, group=['pageId'], sort=['-numEvents'], limit=10, dateRange={range:'relative', lastNDays:30}
  • How many visitors used feature ABC in the last 7 days? → entityType='feature', itemIds=['featureId'], group=['visitorId'], count=true, dateRange={range:'relative', lastNDays:7}
  • How many accounts are active? → entityType='account', group=['accountId'], count=true, dateRange={range:'relative', lastNDays:30}
  • Show activity for the top 5 track types → entityType='trackType', count=false, group=['trackTypeId'], sort=['-numEvents'], limit=5, dateRange={range:'relative', lastNDays:30}
  • How many views did page X get in the last 30 days? → entityType='page', itemIds=['pageId'], count=true, dateRange={range:'relative', lastNDays:30}
  • Count total events for feature X in the last week → entityType='feature', itemIds=['featureId'], count=true, dateRange={range:'relative', lastNDays:7}
  • Return only the total number of matching entities for a query → set count=true
  • Query specific date range → dateRange={range:'custom', startDate:'2024-01-01', endDate:'2024-01-31'}
  • Get page activity for January 2024 → entityType='page', dateRange={range:'custom', startDate:'2024-01-01', endDate:'2024-01-31'}
  • Which visitors used feature X in Q1 2024? → entityType='feature', itemIds=['featureId'], group=['visitorId'], dateRange={range:'custom', startDate:'2024-01-01', endDate:'2024-03-31'}
  • Which features have the most rage clicks → frustrationMetrics=true, entityType='feature', count=false, group=['featureId'], sort=['-rageClickCount'], limit=10, dateRange={range:'relative', lastNDays:30}
  • What is the count of unique events for account → entityType='account', dateRange={range:'relative', lastNDays:30}
  • Which visitors were active on the most days? → entityType='visitor', group=['visitorId'], sort=['-daysActive'], limit=5, dateRange={range:'relative', lastNDays:30}
  • Top pages in a product area → entityType='page', productAreaId='<id>', group=['pageId'], sort=['-numEvents'], limit=10, dateRange={range:'relative', lastNDays:30}
  • How many visitors used a product area? → entityType='visitor', productAreaId='<id>', count=true, dateRange={range:'relative', lastNDays:30} (includes guide engagement; see guide_product_area.go for guide event subtype tuning)
  • How many accounts used a product area? → entityType='account', productAreaId='<id>', count=true, dateRange={range:'relative', lastNDays:30} (includes guide engagement; see guide_product_area.go for guide event subtype tuning)
  • Filter activity by a feature flag → featureFlag={name:'myFlag', value:true}. Use value:false to filter to events where the flag is not set to true.

NOT FOR: guides and polls; use guideMetrics instead. Finding unused or zero-activity entities within a product area; use productAreaMemberActivity instead.

RETURNS:

  • Raw JSON array [{requestId, rows: [...], time, url}]
  • When count=true: Returns only aggregate count values (count and meta.totalCount), not ranked entity rows. Use count=false for lists/rankings.
  • Aggregated activity metrics for events, minutes spent, visitors, accounts, avgMinutesPerVisitor, avgDaysActivePerVisitor, and (if frustrationMetrics set) some 'frustration' metrics.
  • Results can be grouped by a provided field.
  • Results can be sorted by a provided field.
  • By default, results are limited at 1000.

FILTERING OPTIONS:

  • Filter by account ID
  • Filter by visitor ID
  • Filter by item IDs (i.e. page, feature, track type)
  • Filter by product area ID (mutually exclusive with item IDs)
  • Filter by visitor metadata (current values via visitorMetadataFilter)
  • Filter by historical metadata (event-time visitor/account/parentAccount values via historicalMetadataFilter)

SORT OPTIONS:

  • Any SELECT/GROUP field (accountId, day, featureId, itemId, month, pageId, trackTypeId, visitorId, week)
  • numEvents - total event count
  • numMinutes - total minutes spent
  • uniqueAccountCount - count of unique accounts
  • uniqueVisitorCount - count of unique visitors
  • daysActive - count of unique days active
  • avgMinutesPerVisitor - average minutes per visitor
  • avgDaysActivePerVisitor - average days active per visitor
  • if frustrationMetrics param is set, any frustration metric: errorClickCount, rageClickCount, uTurnCount, deadClickCount

The maximum time range for this tool is 367 days.

PERFORMANCE: This is a fast-running tool.

Parameters (4 required, 15 optional)
Required
appIdstring

Application id of the app to query

dateRangeobject

The time period to query. Use 'relative' with lastNDays or 'custom' with explicit dates.

entityTypestring

The entity type to query

Options:pagefeatureguidetrackTypevisitoraccountpoll
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
accountIdstring

Filter results to a specific account. REQUIRED when the user mentions or references a specific account. Use the exact account ID string

countboolean

When true, returns ONLY a single aggregate count number — no entity names or ranked rows. Use for "how many" questions. When false (default), returns individual rows with metrics. REQUIRED for any ranking, listing, or "top N" query. If the query asks for a list or ranking, count MUST be false.

featureFlagobject

Filter events by a subscription feature flag (defined by a segment's FlagName). When value is true (the default) results include only events where the flag is set to true. When value is false, results include only events where the flag is not set to true.

frustrationMetricsboolean

Toggles return of frustration metrics: error click/rage click/u-turn/dead click count

Default: False
grouparray

Groups results by the specified dimension. The group field determines what each row represents. - group=["featureId"] -> one row per feature (for top features / feature usage) - group=["pageId"] -> one row per page (for top pages / page traffic) - group=["visitorId"] -> one row per visitor (for top visitors / visitor activity) - group=["accountId"] -> one row per account (for top accounts / account comparison) Rule: group by the entity you want to rank or list. Do not group by visitorId when asking for top features.

Default: []
historicalMetadataFilterobject

Filter by historical (event-time) metadata — values captured when the event was recorded, not current values. Supports visitor, account, and parentAccount metadata kinds. Example: {kind:'visitor', group:'agent', field:'email', op:'==', value:'"user@example.com"'} returns events where visitor email was user@example.com at event time. Not all fields have historical tracking — only fields explicitly configured for historical metadata capture. Use the visitorMetadataSchema or accountMetadataSchema tools to discover valid group and field names (the group is the second segment of the metadata key, e.g. 'agent' from 'metadata.agent.email'). Can be used together with visitorMetadataFilter (they are independent filters).

itemIdsarray

The item ids to query

Default: []
limitnumber

Maximum number of rows to return. Range: 1-1000. Default: 1000.

Default: 1000
periodstring

Time period format: 'dayRange'/'weekRange' for single totals across entire period (e.g., 'total views: 1000'), 'daily'/'weekly' for time series showing trends (e.g., 'Jan 1: 100, Jan 2: 150, Jan 3: 200'). Use dayRange/weekRange for summary metrics, use daily/weekly for trend analysis.

Options:dayRangeweekRangedailyweekly
Default: dayRange
productAreaIdstring

The ID of a product area. Filters results to only include activity within this product area. Works with any entity type: for pages/features/trackTypes it filters directly; for visitors/accounts it automatically queries page activity within the product area. Mutually exclusive with itemIds.

segmentIdstring

filter the results by the specified segment id. If not provided, no segment filtering is applied.

sortarray

The fields to sort by. Prepending the field with a + (ascending) or - (descending) determines the sort direction.

Default: []
userQuerystring

The original user query or question that triggered this tool call.

visitorIdstring

Filter results to a specific visitor. REQUIRED when the user mentions or references a specific visitor. Use the exact visitor ID string

visitorMetadataFilterstring

Filter activity results by visitor metadata using syntax like 'metadata.auto.firstvisit >= 1234567890'. Mutually exclusive with segmentId.

Agent Analytics Key Metrics

agent_analytics_key_metrics
Full Description

Returns key aggregate metrics for AI agent conversations with period-over-period comparison. Includes: conversations, visitors, accounts, prompts, rage prompt rates (per-prompt and per-conversation), visitorIds, accountIds, and visitor retention. All metrics include previous-period equivalents for trend analysis.

USE FOR: Getting a high-level summary of AI agent usage and engagement. Use when the user asks about overall agent performance, conversation volume, visitor engagement, rage prompt rates, or retention for a specific agent.

EXAMPLES:

  • How many conversations has my ABC agent had in the last 30 days?
  • What is the rage prompt rate for Acme agent this month?
  • Show me key metrics and trends for my chat agent over the past 2 weeks.
  • How many unique visitors have used my chat agent recently?

NOT FOR: Use list_use_cases for topic/cluster analysis. Use list_ai_agent_issues for issue detection. Use list_ai_agents to get agent IDs and names first when the user has not specified an agent.

RETURNS:

  • Current period: numConversations, numPrompts, numVisitors, numAccounts, numRagePrompts, ragePromptsRate, ragePromptsConversationRate, retention (retentionRate, retained, visitors), visitorIds, and accountIds.
  • Previous period (same duration, immediately prior): prevNumConversations, prevNumPrompts, prevNumVisitors, prevNumAccounts, prevNumRagePrompts, prevRagePromptsRate, prevRagePromptsConversationRate, prevRetention.
  • Also includes conversationsWithRagePrompts and prevConversationsWithRagePrompts.

The maximum time range for this tool is 90 days.

PERFORMANCE: This is a slow-running tool.

Parameters (4 required, 2 optional)
Required
agentIdstring

Required. The AI agent ID to get metrics for (from list_ai_agents).

endDatestring

Query end date in YYYY-MM-DD format (e.g., '2025-01-31'). Inclusive.

startDatestring

Query start date in YYYY-MM-DD format (e.g., '2025-01-01'). Inclusive.

subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
appIdstring

Application ID of the app to query (defaults to -323232 if not specified)

Default: -323232
userQuerystring

The original user query or question that triggered this tool call.

Ai Agent Issue Analysis

ai_agent_issue_analysis
Full Description

Requires startDate and endDate (YYYY-MM-DD); there is no default range. Returns issue diagnoses, flagged response tool/model usage, and user prompt content for the events of a specific detected issue cluster in AI Agent Analytics. Executes a single aggregation with two parallel spawn branches: (1) agenticConversationEvents filtered by conversationIds — deduplicated visitorIds/accountIds and sampled explanations; (2) agenticEvents — tools/models from flagged response eventIds, and prompt content from issue conversationIds.

USE FOR: Diagnosing a specific detected issue cluster — call directly if agentId is known and conversationIds and eventIds are passed; Otherwise, call after list_ai_agents is called to get available AI agents and after list_ai_agent_issues is called to get issues clusters to find match and retrieve conversationIds/eventIds. Use when the user wants to understand why conversations were flagged, see patterns in user prompts that triggered the issue, or identify which tools and models were involved in the flagged responses.

EXAMPLES:

  • What patterns exist among instances of the 'incorrect answers' issue?
  • Which tools were called in instances of the 'timeout error' issue?
  • Show me what users said in conversations flagged as the 'authentication failure' issue
  • Why does the 'formatting problem' issue keep occurring in my agent?

NOT FOR: Use list_ai_agent_issues to discover issue clusters and get conversation/event IDs first (not when conversationIds and eventIds are already known). Use agent_analytics_key_metrics for aggregate volume metrics. Use list_use_cases for topic analysis of conversations (not issue diagnosis).

RETURNS:

  • Four labeled CSV sections:
    • [issue_instances]: visitorIds, accountIds — one summary row with deduplicated lists.
    • [explanations]: explanation — one row per sampled issue explanation (capped for MCP size).
    • [flagged_response_events]: issueToolsUsed, issueModelsUsed — one summary row with deduplicated lists.
    • [user_prompts]: content — one row per sampled user prompt message (capped for MCP size).

The maximum time range for this tool is 90 days.

PERFORMANCE: This is a slow-running tool.

Parameters (7 required, 1 optional)
Required
agentIdstring

The AI agent ID (from list_ai_agents). Used to scope the lookup to the correct agent.

appIdstring

Application id of the app to query

conversationIdsarray

List of conversation IDs for the issue cluster (from the list_ai_agent_issues response).

endDatestring

Query end date in YYYY-MM-DD format (e.g., '2025-01-31'). Inclusive.

eventIdsarray

List of event IDs for the issue cluster (from the list_ai_agent_issues response). These are the agent response event IDs flagged as instances of this issue.

startDatestring

Query start date in YYYY-MM-DD format (e.g., '2025-01-01'). Inclusive.

subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
userQuerystring

The original user query or question that triggered this tool call.

Create Feedback Item

createFeedbackItem
Full Description

Creates a new feedback item in Pendo Listen. Returns the ID of the created feedback item.

USE FOR: Submitting product feedback, feature requests, bug reports, or user input to the Listen feedback repository

EXAMPLES:

  • Log this user's feedback about the dashboard loading slowly
  • Create a feature request for dark mode support
  • Submit feedback that the export CSV button is confusing
  • Capture this bug report about broken pagination
  • Record this customer's request for a Slack integration

NOT FOR: Reading existing feedback — use get_feedback_items instead. For AI-extracted insights use get_feedback_insights.

RETURNS:

  • feedbackId: ID of the created feedback item

PERFORMANCE: This is a fast-running tool.

This tool is only available to be called for the following subscriptions: (External Customer) Pendo Experience Sandbox (4691349476737024)

Parameters (3 required, 6 optional)
Required
descriptionstring

Full feedback content describing what the customer is trying to achieve and their current workaround (max 10,000 characters)

subIdstring

Subscription ID that owns the data. Required for all queries.

titlestring

Brief summary of the feedback (max 200 characters, e.g., 'Add dark mode support')

Optional
accountIdstring

Pendo account ID to attribute the feedback to. At least one of 'visitorId' or 'accountId' must be provided.

appIdstring

Numeric application ID the feedback relates to (e.g., '-323232'). Defaults to -323232 if omitted.

Default: -323232
productAreaIdstring

ID of a product area to assign the feedback to. Use searchEntities with entityType='productArea' to find valid IDs.

sourceUrlstring

URL to the original feedback source (e.g., a Slack thread or support ticket URL)

userQuerystring

The original user query or question that triggered this tool call.

visitorIdstring

Pendo visitor ID to attribute the feedback to. At least one of 'visitorId' or 'accountId' must be provided.

Devlog Events

devlogEvents
Full Description

Fetch raw devlog events for a visitor or session, including HTTP request/response details, log levels, messages, and stack traces. Accepts a clipId or the individual fields (recordingSessionId, appId, visitorId, accountId, startTime, endTime) that identify a recording. When clipId is provided, the tool looks up the clip to resolve visitorId, accountId, appId, recordingSessionId, and time range automatically. If the user provides a session replay URL, parse the recordingSessionId from the URL path and query parameters (startTime, endTime, visitorId, accountId, appId) before calling this tool.

USE FOR: Investigating developer console logs, network errors, or HTTP activity captured during a session replay. Use when the user provides a session replay URL (parse the URL yourself to extract params), a clip ID, or when chaining from sessionReplayList results by passing recordingSessionId/appId/visitorId/accountId directly.

EXAMPLES:

  • Show me devlogs for this session replay: https://<hostname>/s/123/replay/player/abc
  • Show network requests captured in clip https://<hostname>/s/123/replay/clip/saved/xyz
  • What HTTP errors occurred during visitor john's session?
  • Fetch devlogs for clip ID abc-123
  • Find devlog errors for account acme-corp
  • What API calls did this visitor make during their session?
  • After calling sessionReplayList, pass the row's recordingSessionId/appId/visitorId/accountId/startTime/endTime directly to fetch devlogs

NOT FOR: Listing session replays — use sessionReplayList instead. General page/feature analytics — use activityQuery or topEntities instead.

RETURNS:

  • Devlog events including subType (console/network), log level, message, stack trace, HTTP method, request URL, status code, request/response headers and bodies. Limited to 100 events.

The maximum time range for this tool is 31 days.

PERFORMANCE: This is a slow-running tool.

This tool is only available to be called for the following subscriptions: pendo-internal (5668600916475904) Pendo for Pendo Employees (5769426755780608) (Demo) Pendo Experience (6591622502678528) Pendo AI

  • Internal (6296072733130752)

tippy_demo (6284013896335360)

Parameters (1 required, 12 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
accountIdstring

Filter results to a specific account. REQUIRED when the user mentions or references a specific account. Use the exact account ID string

appIdstring

App ID that owns the recording. Provide directly from a sessionReplayList row or parse from the session replay URL query params.

clipIdstring

Saved clip ID. When provided, the tool looks up the SessionRecordingClip to resolve visitorId, accountId, appId, recordingSessionId, and time range automatically. Direct startTime/endTime params still override the clip-derived time range. Parse from clip URL path (the last segment of /replay/clip/saved/<ID>).

endTimenumber

Query end time in milliseconds as a unix timestamp. Inclusive. Required unless derivable from clipId.

limitnumber

Maximum number of events to return (default 50, max 100).

Default: 50
logLevelsarray

Filter console logs by level (e.g. ["error", "warn"]). Only applies when logType is "console" or unset. Common values: "error", "warn", "info". Default value is "error"

Default: ['error']
logTypearray

Filter by log type. Valid values: "console" (browser console logs), "network" (HTTP request/response logs). Omit to return both.

recordingSessionIdstring

Recording session ID. Required unless clipId is provided. Parse from the session replay player URL path (the last segment of /replay/player/<ID>) or use directly from a sessionReplayList row.

startTimenumber

Query start time in milliseconds as a unix timestamp. Inclusive. Required unless derivable from clipId.

statusCodesarray

Filter network events by HTTP status code. Accepts exact codes (e.g., "200", "404") and generic class patterns (e.g., "4xx", "5xx"). Multiple values are ORed. Only applies when logType includes "network" or is unset. Default value is ["4xx", "5xx"]

Default: ['4xx', '5xx']
userQuerystring

The original user query or question that triggered this tool call.

visitorIdstring

Filter results to a specific visitor. REQUIRED when the user mentions or references a specific visitor. Use the exact visitor ID string

Generate Feedback Topics

generate_feedback_topics
Full Description

Generates AI-clustered topics from customer feedback matching the given filters. Each topic contains a name, description, and count of related insights. Use this for high-level overviews of the most common themes in a feedback subset.

PERFORMANCE: This is a slow-running tool.

This tool is only available to be called for the following subscriptions: pendo-internal (5668600916475904) (Demo) Pendo Experience (6591622502678528) (External Customer) Pendo Experience Sandbox (4691349476737024)

Parameters (1 required, 3 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
feedbackFiltersobject

Filters to apply when querying customer feedback.

filtersobject

Filters to apply when querying Listen data (feedback, insights, ideas).

userQuerystring

The original user query or question that triggered this tool call.

Get Agent Context

get_agent_context
Full Description

Fetches a grounding document that describes the current contents of a Pendo product resource so the LLM can reason about it. Today the only supported resource is a Pendo Space — a collaborative canvas of product artifacts (pages, features, guides, notes, etc.) curated by a team. Pass resource_type (e.g. "space") and resource_id (the id of that resource, e.g. a space id) to retrieve the document. Call list_spaces first if you need to discover a space id. The response is JSON returned by the Spaces service and typically contains a markdown body plus a schema describing the resource's contents; do not assume a shape beyond what the response declares. Use frame_id to scope a space's context to a single frame on the canvas (and items whose parent is that frame) — useful when the user's UI is focused on that frame; omit frame_id for the full space.

PERFORMANCE: This is a fast-running tool.

Parameters (3 required, 2 optional)
Required
resource_idstring

Opaque id for that resource type (e.g. when resource_type is 'space', the space id).

resource_typestring

Which product resource to load context for. Supported values depend on subscription features; currently includes 'space'.

Options:space
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
frame_idstring

When resource_type is "space", limits context to one frame (that canvas item id) and items whose parent is that frame. Omit for full-space context.

userQuerystring

The original user query or question that triggered this tool call.

Get Feedback Insights

get_feedback_insights
Full Description

Retrieves key customer feedback insights extracted from raw feedback matching the given filters. Each item includes a summary, explanation, and supporting quote. Use this when the user wants to see actionable feedback insights which have been distilled from the raw customer feedback. Note: insights can also be referred to as 'highlights'

PERFORMANCE: This is a slow-running tool.

This tool is only available to be called for the following subscriptions: pendo-internal (5668600916475904) (Demo) Pendo Experience (6591622502678528) (External Customer) Pendo Experience Sandbox (4691349476737024)

Parameters (1 required, 3 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
feedbackFiltersobject

Filters to apply when querying customer feedback.

filtersobject

Filters to apply when querying Listen data (feedback, insights, ideas).

userQuerystring

The original user query or question that triggered this tool call.

Get Feedback Items

get_feedback_items
Full Description

Retrieves the original, raw customer feedback matching the given filters. Each item includes id, title, description, and info about the account and visitor which gave the feedback. Use this when the user wants the full raw feedback, as opposed to the extracted insights or clustered topics. A maximum of 30 items will be returned, however there may be more matching the filter set.

PERFORMANCE: This is a slow-running tool.

This tool is only available to be called for the following subscriptions: pendo-internal (5668600916475904) (Demo) Pendo Experience (6591622502678528) (External Customer) Pendo Experience Sandbox (4691349476737024)

Parameters (1 required, 3 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
feedbackFiltersobject

Filters to apply when querying customer feedback.

filtersobject

Filters to apply when querying Listen data (feedback, insights, ideas).

userQuerystring

The original user query or question that triggered this tool call.

Get Ideas

get_ideas
Full Description

Retrieves product ideas submitted by internal product employees which describe product enhancements and new features matching the given filters. Each item includes id, title, and description. A maximum of 30 items will be returned, however there may be more matching the filter set.

PERFORMANCE: This is a slow-running tool.

Parameters (1 required, 2 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
filtersobject

Filters to apply when querying Listen data (feedback, insights, ideas).

userQuerystring

The original user query or question that triggered this tool call.

Guide Metrics

guideMetrics
Full Description

Get comprehensive guide performance analysis including reach, engagement, and effectiveness metrics.

USE FOR: Analyzing specific guide performance with core metrics like reach, engagement rates, and completion analysis.

EXAMPLES:

  • How is the onboarding guide performing this month?
  • Show me metrics for the tooltip guide
  • What are the completion rates for the walkthrough guide?
  • How many users are dismissing the announcement guide?
  • Show me daily guide completion trends over the last 2 weeks
  • What's the weekly pattern for guide engagement?

RETURNS:

  • Reach metrics: total views, unique viewers, unique accounts
  • Engagement metrics: views per user, total interactions
  • Effectiveness metrics: completion rate, dismissal rate
  • Poll unique visitor response counts and total response counts grouped by pollId (for guides with polls)
  • NPS metrics (for NPS guides): npsScore, avgScore, numPromoters, numNeutral, numDetractors, per-score distribution (responseCount0 through responseCount10)
  • Range periods (dayRange/weekRange): single aggregated values across entire date range
  • Iterative periods (daily/weekly): time series with metrics broken down by day/week
  • Raw aggregation results in JSON format

The maximum time range for this tool is 93 days.

PERFORMANCE: This is a fast-running tool.

Parameters (4 required, 3 optional)
Required
endDatestring

Query end date in YYYY-MM-DD format (e.g., '2025-01-31'). Inclusive.

guideIdstring

The exact guide ID to analyze.

startDatestring

Query start date in YYYY-MM-DD format (e.g., '2025-01-01'). Inclusive.

subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
blackliststring

Blacklist behavior: 'apply' (use blacklist, normal behavior), 'ignore' (do not use blacklist), 'only' (invert blacklist, return only blacklisted activity)

Options:applyignoreonly
Default: apply
periodstring

Time period format: 'dayRange'/'weekRange' for single totals across entire period (e.g., 'total views: 1000'), 'daily'/'weekly' for time series showing trends (e.g., 'Jan 1: 100, Jan 2: 150, Jan 3: 200'). Use dayRange/weekRange for summary metrics, use daily/weekly for trend analysis.

Options:dayRangeweekRangedailyweekly
Default: dayRange
userQuerystring

The original user query or question that triggered this tool call.

List Ai Agent Issues

list_ai_agent_issues
Full Description

Lists detected issues in AI agent conversations with instance counts and conversation counts. Returns a table of issue summary, instance count, and conversation count per issue. It also returns visitorIds and accountIds who experienced the issue.

USE FOR: Finding what problems or issues users encountered when using AI agents (e.g., incorrect answers, refusals, errors). Use when the user asks about common issues, problems, or failures with a specific agent.

EXAMPLES:

  • What are the common issues my users are encountering using my ABC agent in the last 30 days?
  • What problems have users been encountering when using Acme agent in my Acme application lately?
  • Have we seen reduced occurrences of issues with incorrect answers in our fooBar agent since last month?
  • What models are most often used when users face problems with the chat agent in ScramCorp app?

NOT FOR: Use list_use_cases for topic/cluster analysis of conversations. Use list_ai_agents to get agent IDs and names first when the user has not specified an agent.

RETURNS:

  • Table of issues: summary, instance count, conversation count, agentId, appId, visitorIds, and accountIds.
  • Sorted by conversation count descending. Limited to 500 rows; narrow by date range if needed.

The maximum time range for this tool is 90 days.

PERFORMANCE: This is a slow-running tool.

Parameters (4 required, 3 optional)
Required
agentIdstring

Required. The AI agent ID to filter by (from list_ai_agents). Issues are clustered per agent to match the emergent issues table.

endDatestring

Query end date in YYYY-MM-DD format (e.g., '2025-01-31'). Inclusive.

startDatestring

Query start date in YYYY-MM-DD format (e.g., '2025-01-01'). Inclusive.

subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
appIdstring

Application ID to filter by. If omitted, returns data across all applications the user can access.

limitnumber

Maximum number of issue rows to return. Range: 1-500. Default: 100.

Default: 100
userQuerystring

The original user query or question that triggered this tool call.

List Ai Agents

list_ai_agents
Full Description

Lists all AI agents that the user has access to. AI agents are conversational assistants that can be deployed on specific pages or app-wide.

AI agents have the ability to collect conversations, cluster prompts by topics/use cases, and calculate metrics like conversation counts and rage prompt detection.

This tool returns agent ids and names for usage with other related agent tools.

PERFORMANCE: This is a fast-running tool.

Parameters (1 required, 1 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
userQuerystring

The original user query or question that triggered this tool call.

List All Applications

list_all_applications
Full Description

Pendo data is split into subscriptions, which share a set of visitors and accounts. Each subscription is split into separate applications. This call returns a list of all the names and ids of all the subscriptions this user has access to, along with the names and ids of all of the applications in that subscription.

Most tools for this mcp require at least a subscription id; many also require an application id. Application ids are not unique across different subscriptions.

PERFORMANCE: This is a fast-running tool.

Parameters (0 required, 1 optional)
Optional
userQuerystring

The original user query or question that triggered this tool call.

List Product Areas

list_product_areas
Full Description

Returns all product areas for a subscription — their IDs, names, and descriptions. No search query required.

USE FOR: Enumerating all product areas or finding a productAreaId to pass to productAreaMemberActivity or other tools that require a productAreaId. Use this when the user asks about available product areas or when you need to present them a list to choose from.

EXAMPLES:

  • What product areas do we have?
  • List all product areas for this subscription
  • What product area should I use for onboarding? → call list_product_areas to find the matching name and get its ID
  • Show me all available product areas

NOT FOR: Querying activity or engagement metrics within a product area — use productAreaMemberActivity instead.

RETURNS:

  • Array of all product areas with: id, name, description
  • All product areas are returned in a single call — no pagination needed

PERFORMANCE: This is a fast-running tool.

Parameters (1 required, 1 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
userQuerystring

The original user query or question that triggered this tool call.

List Spaces

list_spaces
Full Description

Lists the Pendo Spaces the current user can access in this subscription. A Pendo Space is a collaborative canvas of product artifacts (pages, features, guides, notes, etc.) that a team curates together; think of it as a shared workspace or board inside Pendo. Returns JSON from the Spaces service (opaque shape — field names depend on the Spaces API response). Use this to discover a space id before calling get_agent_context with resource_type "space" and that id as resource_id.

PERFORMANCE: This is a fast-running tool.

Parameters (1 required, 1 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
userQuerystring

The original user query or question that triggered this tool call.

List Use Cases

list_use_cases
Full Description

Use case: Get AI agent conversation clustering analysis with comprehensive metrics. Analyzes conversations and prompts, grouping them by semantic topics/use cases.

Requires: agentId which can be obtained using the list_ai_agents tool. Date range is required.

Usage note: You should generally get the user to specify how many days back they want to analyze as well as for which agent.

Returns: Metrics per cluster: conversation counts, visitor engagement, account usage, retention rates, rage prompt detection, and lists of visitorIds and accountIds per use case.

The maximum time range for this tool is 90 days.

PERFORMANCE: This is a fast-running tool.

Parameters (4 required, 1 optional)
Required
agentIdstring

The AI agent ID to analyze retrieved from the list_ai_agents tool

endDatestring

Query end date in YYYY-MM-DD format (e.g., '2025-01-31'). Inclusive.

startDatestring

Query start date in YYYY-MM-DD format (e.g., '2025-01-01'). Inclusive.

subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
userQuerystring

The original user query or question that triggered this tool call.

List Guides

listGuides
Full Description

List and filter in-app guides. Returns guide ID, name, description, state, and scheduling info. Use this tool to find guides by status, type, activation method, or other attributes.

Guides are interactive in-app experiences (tooltips, walkthroughs, banners, lightboxes, etc.) that guide end-users through tasks in their application.

EXAMPLES:

  • List all public guides
  • Show me draft guides
  • Find all walkthrough guides
  • Which guides are set to launch automatically?
  • List guides that have expired
  • Show me all tooltip guides that are currently staged

RETURNS:

  • Summary info for each matching guide: ID, name, description, state, type, launch method, and scheduling timestamps (showsAfter, expiresAfter)

FILTERING OPTIONS:

  • status: Filter by guide state — public, staged, draft, _pendingReview_, disabled
  • guideType: Filter by guide type — banner, tooltip, lightbox, walkthrough, whatsnew, building-block, group, training, launcher, mobile-lightbox
  • activation: Filter by launch method — auto (automatic/app launch), api (programmatic), badge, dom (element click), embed (embedded), launcher (guide/resource center), page (page view), feature (element click, mobile), form, track (track event)
  • expiration: Filter by expiration status — active (not expired), expired (past expiration date)

PERFORMANCE: This is a fast-running tool.

Parameters (1 required, 8 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
activationstring

Filter guides by activation (launch) method. Values: "auto" — shown automatically on page load / app launch, "api" — triggered programmatically, "badge" — shown via a badge icon, "dom" — triggered by clicking a specific element, "embed" — embedded inline in the page, "launcher" — shown in guide center or resource center, "page" — triggered by page view (mobile), "feature" — triggered by element click (mobile), "form" — triggered by form interaction, "track" — triggered by a track event. Note: guides can have multiple activation methods (dash-separated). This filter matches if the guide's launch method contains the specified value.

Options:autoapibadgedomembedlauncherpagefeatureformtrack
appIdstring

Application ID to filter by. If omitted, returns data across all applications the user can access.

expirationstring

Filter guides by expiration status. Values: "active" — guide has no expiration date or has not yet expired, "expired" — guide's expiration date is in the past.

Options:activeexpired
guideTypestring

Filter guides by type. Derived from guide attributes. Values: "banner", "tooltip", "lightbox", "walkthrough" (multi-step), "whatsnew" (what's new), "building-block", "group" (guide group), "training", "launcher" (resource center), "mobile-lightbox" (mobile-only lightbox).

Options:bannertooltiplightboxwalkthroughwhatsnewbuilding-blockgrouptraininglaunchermobile-lightbox
limitnumber

Maximum number of guides to return.

Default: 50
offsetnumber

Number of matching guides to skip before returning results. Use with limit to paginate through large result sets.

Default: 0
statusstring

Filter guides by state. Values: "public" (live), "staged" (testing), "draft" (in progress), "_pendingReview_" (awaiting review), "disabled" (turned off).

Options:publicstageddraft_pendingReview_disabled
userQuerystring

The original user query or question that triggered this tool call.

Nps Score

npsScore
Full Description

Returns NPS (Net Promoter Score) metrics for NPS surveys, including the overall NPS score (-100 to +100), average rating, and response distribution across promoters (9-10), passives (7-8), and detractors (0-6).

USE FOR: Answering questions about NPS scores, NPS trends, survey response breakdowns, and promoter/detractor analysis. Supports filtering by app. If no guideId is provided, automatically discovers NPS surveys.

EXAMPLES:

  • What is our NPS score?
  • What is the NPS score for app X?
  • Show me NPS trends over the last 30 days
  • What percentage of respondents are detractors?
  • How many promoters vs detractors did we get this month?
  • What is the NPS score for a specific survey?

NOT FOR: General guide performance metrics like completion rates or dismissal rates — use guideMetrics for those.

RETURNS:

  • NPS score (-100 to +100), calculated as (% promoters - % detractors) * 100
  • Average rating (0-10 scale)
  • Response counts: numPromoters, numNeutral, numDetractors, numResponses
  • Per-score distribution: responseCounts object with keys '0' through '10' (count of responses for each score value)
  • Guide info: guideName, guideId, pollQuestion, pollId, appIds
  • Individual NPS responses with visitorId, npsScore, npsReason, accountId, browserTime (when includeResponses is 'promoters', 'detractors', or 'unsorted', or visitorId is provided). Requires guideId.

The maximum time range for this tool is 93 days.

PERFORMANCE: This is a fast-running tool.

Parameters (3 required, 8 optional)
Required
endDatestring

Query end date in YYYY-MM-DD format (e.g., '2025-01-31'). Inclusive.

startDatestring

Query start date in YYYY-MM-DD format (e.g., '2025-01-01'). Inclusive.

subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
appIdstring

Application ID to filter by. If omitted, returns data across all applications the user can access.

blackliststring

Blacklist behavior: 'apply' (use blacklist, normal behavior), 'ignore' (do not use blacklist), 'only' (invert blacklist, return only blacklisted activity)

Options:applyignoreonly
Default: apply
guideIdstring

The NPS guide (survey) ID to analyze. If omitted, all NPS surveys are discovered and returned.

includeResponsesstring

Controls whether individual NPS responses are returned alongside aggregate metrics. Only valid when guideId is provided. Values: 'promoters' (scores 9-10, sorted highest first), 'detractors' (scores 0-6, sorted lowest first), 'unsorted' (all responses, no particular order). Omit or leave empty to return only aggregate metrics.

periodstring

Time period format: 'dayRange'/'weekRange' for single totals across entire period (e.g., 'total views: 1000'), 'daily'/'weekly' for time series showing trends (e.g., 'Jan 1: 100, Jan 2: 150, Jan 3: 200'). Use dayRange/weekRange for summary metrics, use daily/weekly for trend analysis.

Options:dayRangeweekRangedailyweekly
Default: dayRange
segmentIdstring

filter the results by the specified segment id. If not provided, no segment filtering is applied.

userQuerystring

The original user query or question that triggered this tool call.

visitorIdstring

Filter results to a specific visitor. REQUIRED when the user mentions or references a specific visitor. Use the exact visitor ID string

Product Area Member Activity

productAreaMemberActivity
Full Description

Return all pages, features, or track types belonging to a product area, including those with zero activity in the date range.

Use this tool when you need to identify unused or low-engagement entities within a product area — for example, "which features in the Onboarding product area have had no usage this quarter?" Unlike activityQuery, which only surfaces entities that have generated events, this tool fetches all members of the product area and left-joins activity data so that zero-event entities appear with numEvents: 0.

Supports optional segmentId filtering: when provided, activity metrics reflect only visitors in the segment, but all product area members are still returned (zero-activity rows remain for entities with no segment activity).

WHEN TO USE THIS TOOL vs. activityQuery:

  • Use this tool when "not in the results" must mean "zero usage", not "not in the top N"
  • Use activityQuery when you want ranked/sorted activity across all entities regardless of product area membership

USE FOR: Listing all members of a product area with their activity metrics, including entities with zero events.

EXAMPLES:

  • Which features in the Onboarding product area have zero usage this quarter? → entityType='feature', productAreaId='<id>', sort=['+numEvents'], dateRange={range:'custom', startDate:'2025-01-01', endDate:'2025-03-31'}
  • What pages in the Analytics product area should we consider sunsetting? → entityType='page', productAreaId='<id>', sort=['+numEvents'], limit=50, dateRange={range:'relative', lastNDays:90}
  • Which pages in product area X have zero activity from visitors in segment Y? → entityType='page', productAreaId='<id>', segmentId='<id>', sort=['+numEvents'], dateRange={range:'relative', lastNDays:30}

NOT FOR: ranked activity across all entity types regardless of product area membership; use activityQuery instead.

RETURNS:

  • All members of the product area for the given entity type
  • Each row includes: entity ID, name, description, numEvents, numMinutes, uniqueVisitorCount, uniqueAccountCount, daysActive, avgMinutesPerVisitor, avgDaysActivePerVisitor
  • Entities with no activity in the date range appear with all metrics set to 0
  • When segmentId is provided, metrics reflect only activity from visitors in that segment; zero-activity rows still appear for entities with no segment activity

SORT OPTIONS:

  • numEvents - total event count (default: ascending, to surface unused entities first)
  • numMinutes, uniqueVisitorCount, uniqueAccountCount, daysActive

The maximum time range for this tool is 367 days.

PERFORMANCE: This is a fast-running tool.

Parameters (4 required, 6 optional)
Required
dateRangeobject

The time period to query. Use 'relative' with lastNDays or 'custom' with explicit dates.

entityTypestring

The entity type to query. Must be a direct product area type: page, feature, or trackType.

Options:pagefeaturetrackType
productAreaIdstring

The ID of the product area whose members to return.

subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
appIdstring

Application ID of the app to query (defaults to -323232 if not specified)

Default: -323232
limitnumber

Maximum number of rows to return. Range: 1-1000. Default: 1000.

Default: 1000
periodstring

Time period format: 'dayRange'/'weekRange' for single totals across entire period (e.g., 'total views: 1000'), 'daily'/'weekly' for time series showing trends (e.g., 'Jan 1: 100, Jan 2: 150, Jan 3: 200'). Use dayRange/weekRange for summary metrics, use daily/weekly for trend analysis.

Options:dayRangeweekRangedailyweekly
Default: dayRange
segmentIdstring

filter the results by the specified segment id. If not provided, no segment filtering is applied.

sortarray

The fields to sort by. Prepending the field with a + (ascending) or - (descending) determines the sort direction.

Default: []
userQuerystring

The original user query or question that triggered this tool call.

Product Engagement Score

productEngagementScore
Full Description

A tool designed for running PES (product engagement score) queries. For any score fields that aren't required or provided, default saved PES configuration options are used.

USE FOR: Analyzing the PES, which is made up of scores from feature adoption, stickiness, and growth.

EXAMPLES:

  • What is the PES for this feature?
  • What is adoption score for a specific feature, page, and track event?
  • What is the stickiness score for accounts, weekly over monthly? (This may expressed as WAA over MAA)
  • What is the stickiness score for visitors, daily over monthly, excluding weekends? (This may expressed as DAU over MAU)
  • What is the growth score for accounts?

RETURNS:

  • PES score and component scores (adoption, stickiness, growth)
  • Individual component scores (adoption, stickiness, growth)

The maximum time range for this tool is 180 days.

PERFORMANCE: This is a fast-running tool.

Parameters (4 required, 14 optional)
Required
appIdstring

Application id of the app to query

endDatestring

Query end date in YYYY-MM-DD format (e.g., '2025-01-31'). Inclusive.

startDatestring

Query start date in YYYY-MM-DD format (e.g., '2025-01-01'). Inclusive.

subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
accountIdstring

Filter results to a specific account. REQUIRED when the user mentions or references a specific account. Use the exact account ID string

adoptionUserBasestring

The user base for the adoption score.

Options:accountsvisitors
blackliststring

Blacklist behavior: 'apply' (use blacklist, normal behavior), 'ignore' (do not use blacklist), 'only' (invert blacklist, return only blacklisted activity)

Options:applyignoreonly
Default: apply
excludeWeekendsboolean

Whether to exclude weekends in the stickiness score calculation.

featureIdsarray

Array of the featureIds to include in the adoption score calculation. If this, pageIds, and trackEventIds are empty, default core events are included.

Default: []
growthUserBasestring

The user base for the growth score.

Options:accountsvisitors
pageIdsarray

Array of the pageIds to include in the adoption score calculation. If this, featureIds, and trackEventIds are empty, default core events are included.

Default: []
scoresarray

Array of the scores to return. If empty, only PES is returned

Default: ['pes']
segmentIdstring

filter the results by the specified segment id. If not provided, no segment filtering is applied.

stickinessDenominatorstring

The denominator time range for the stickiness score. If denominator is provided, numerator must also be provided. Numerator cannot equal denominator.

Options:weeklymonthly
stickinessNumeratorstring

The numerator time range for the stickiness score. If numerator is provided, denominator must also be provided. Numerator cannot equal denominator.

Options:dailyweekly
stickinessUserBasestring

The user base for the stickiness score.

Options:accountsvisitors
trackEventIdsarray

Array of the trackEventIds to include in the adoption score calculation. If this, pageIds, and featureIds are empty, default core events are included.

Default: []
userQuerystring

The original user query or question that triggered this tool call.

Search Entities

searchEntities
Full Description

Look up the names and descriptions of product entities, such as: accounts, pages, features, track types, guides, starred replays (SessionRecording), saved clips, playlists or product areas. Guide results include a permalink URL that can launch the guide directly in the application. Saved clip and starred Replay results include a permalink URL that links directly to the saved clip in Session Replay. Playlist results include a permalink URL that links directly to the playlist in Session Replay. When users ask "How do I..." or "Help me with..." questions, search for Guide entities to find relevant step-by-step walkthroughs.

Useful for: finding relevant entities in the customer's product for follow-up analysis with other tools, learning more about specific entities, or answering how-to questions by finding relevant guides with direct launch links. Uses semantic search to find entities by conceptual meaning and relevance to natural language queries, with fuzzy search for broad matching.

Tool may be used in one of three ways: 1. Get specific entities: itemIds and exactly one itemType are specified; search_fallback and search are not allowed in this case. 2. Search for relevant entities: search_fallback AND search are BOTH specified, along with one or more itemType; itemIds is not allowed in this case. 3. Get starred entities: starredItemTypes lists one or more entity types and matching itemType are specified; returns only entities of those types starred by the current user. ALWAYS combine multiple starred entity types into a single call (e.g., starred replays AND starred guides in one call, not separate calls).

IMPORTANT: The search parameter should contain only the core query terms (e.g., "onboarding features", "Bridgeway Logistics"), not instructions or meta-commentary.

EXAMPLES:

  • What features should I look at to track onboarding success?
  • What parts of my app provide administrator functions?
  • What communications do we have to end users advertising our annual conference?
  • What instrumentation events do we collect for end-user performance?
  • Which pages should I measure user activity on to see how much time users are spending in setup?
  • What accounts contain 'acme' in their name?
  • Do I have any accounts involved in steel manufacturing?
  • How do I set up single sign-on?
  • Help me configure user permissions in my app
  • Show me saved clips about checkout errors
  • Show me all my starred items

RETURNS:

  • Entity ID, name, description, and search method for each match
  • For Guide entities: a permalink URL that launches the guide in-app (when the guide is public and has audience set to everyone)
  • For SessionRecording (Replay) entities: a permalink URL that links to the replay player
  • For Saved Clip entities: a permalink URL linking directly to the saved clip in Session Replay
  • For Playlist entities: a permalink URL linking directly to the playlist in Session Replay

PERFORMANCE: This is a fast-running tool.

Parameters (3 required, 6 optional)
Required
appIdstring

Application id of the app to query

itemTypearray

The types of items to search for. Case-sensitive.

subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
itemIdsarray

Array of IDs for the product entities (pages, features, trackTypes, guides, accounts, etc.) whose information is needed. If specified, exactly one itemType must be given, and search and search_fallback are not allowed.

limitnumber

Return at most this many items for each itemType.

Default: 50
searchstring

The semantic search query (e.g., "Bridgeway Logistics", "onboarding features"). Use natural phrases, not meta-instructions. Must always be specified together with search_fallback.

search_fallbackarray

Search substring(s) for fuzzy string matching, to filter returned entities by those containing any of these substrings in their name/description. Must always be specified together with search.

starredItemTypesarray

Array of entity types to filter to only those starred by the current user. Must be a subset of itemType. Can be combined with search to filter starred entities by relevance. IMPORTANT: When the user asks for starred items across multiple entity types (e.g., "my starred replays and guides"), include ALL desired types in itemType and ALL desired starred types here in a SINGLE call — do NOT make one call per type.

userQuerystring

The original user query or question that triggered this tool call.

Segment List

segmentList
Full Description

List all the segments. The name and the id of each segment is returned, along with the flagName if the segment defines a feature flag. These segments can be used for query build tools. Only publicly shared segments are returned.

PERFORMANCE: This is a fast-running tool.

Parameters (1 required, 2 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
substringstring

Only return segments whose name contains this value; matching is case insensitive

userQuerystring

The original user query or question that triggered this tool call.

Session Replay List

sessionReplayList
Full Description

Get session replay recordings with filtering by duration, activity percentage, date range, frustration types, and track events. Returns detailed session metadata including frustration events, activity scores, and app information. When referencing a page, feature, or guide in a filter in association with a frustration type, defer to use occurredOn/notOccurredOn facts on frustration type filters over pageIds, featureIds, or guideIds filtering.

USE FOR: Finding session replays with specific criteria, analyzing user session quality, identifying high-activity or problematic sessions, scoping replays to specific apps, segments, accounts, features, or guides, filtering for sessions with specific frustration signals, or filtering by track events and their properties

EXAMPLES:

  • Show me recordings that occur on page 1234
  • Show me session replays from the last week with high activity
  • Find session replays longer than 5 minutes
  • Show me session replays for visitor 1234
  • Show me session replays for account acme-corp
  • Show me session replays for app 5678
  • Show me session replays where users interacted with feature abc123
  • Show me session replays where users saw guide xyz789
  • Show me session replays with rage clicks
  • Show me session replays where the checkout-completed track event fired

RETURNS:

  • Session replay recordings with their URL and metadata including duration, activity percentage, frustration events, and app details. Limited to 50 replays returned.

The maximum time range for this tool is 31 days.

PERFORMANCE: This is a fast-running tool.

This tool is only available to be called for the following subscriptions: pendo-internal (5668600916475904) Pendo for Pendo Employees (5769426755780608) (Demo) Pendo Experience (6591622502678528) Pendo AI

  • Internal (6296072733130752)

tippy_demo (6284013896335360)

Parameters (3 required, 20 optional)
Required
endDatestring

Query end date in YYYY-MM-DD format (e.g., '2025-01-31'). Inclusive.

startDatestring

Query start date in YYYY-MM-DD format (e.g., '2025-01-01'). Inclusive.

subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
accountIdstring

Filter results to a specific account. REQUIRED when the user mentions or references a specific account. Use the exact account ID string

appIdarray

Filter results to specific app IDs or app types. If IDs are not provided, all replay-enabled apps are included. "expandAppIds("<app type>")" can be used to filter by replay-enabled app type for the following: replay-all, replay-web, replay-extension, replay-mobile.

Default: ['expandAppIds("replay-all")']
blackliststring

Blacklist behavior: 'apply' (use blacklist, normal behavior), 'ignore' (do not use blacklist), 'only' (invert blacklist, return only blacklisted activity)

Options:applyignoreonly
Default: apply
featureIdsarray

Filter results where users interacted with these features. Use the exact feature IDs. If not provided, no feature filtering is applied.

frustrationTypesarray

Filter results to sessions matching specific frustration signal criteria. Each entry is an object with a required "frustrationType" (one of: rageClick, errorClick, deadClick, uTurn, overGuidance, detractorNps) and a required "fact" indicating whether the signal occurred or not (one of: occurred, occurredOn, notOccurred, notOccurredOn). Use "occurredOn" or "notOccurredOn" with an optional "id" to scope the filter to a specific element, and "eventType" to further narrow by event type. Multiple entries are combined with AND logic.

guideIdsarray

Filter results where users saw or interacted with these guides. Use the exact guide IDs. If not provided, no guide filtering is applied.

minActivityPercentagenumber

Minimum activity percentage

Default: 5
minDurationnumber

Minimum session duration in milliseconds

Default: 120000
notFeatureIdsarray

Filter results to sessions where users did NOT interact with these features. Use the exact feature IDs.

notGuideIdsarray

Filter results to sessions where users did NOT see or interact with these guides. Use the exact guide IDs.

notPageIdsarray

Filter results to sessions where users did NOT interact with these pages. Use the exact page IDs.

notProductAreaIdsarray

Filter results to sessions where users did NOT interact with selected product areas. Use the exact product area IDs.

notTrackEventIdsarray

Filter results to sessions where specific track events did NOT occur. Use the exact track type IDs.

pageIdstring

The exact page ID to analyze.

pageIdsarray

Filter results where users interacted with these pages. Use the exact page IDs. If not provided, no page filtering is applied.

productAreaIdsarray

Filter results where users interacted with selected product areas. Use the exact product area IDs. If not provided, no product area filtering is applied.

segmentIdstring

filter the results by the specified segment id. If not provided, no segment filtering is applied.

trackEventIdsarray

Filter results to sessions where specific track events occurred. Use the exact track type IDs. If not provided, no track event filtering is applied.

userQuerystring

The original user query or question that triggered this tool call.

visitorIdstring

Filter results to a specific visitor. REQUIRED when the user mentions or references a specific visitor. Use the exact visitor ID string

Visitor Metadata Schema

visitorMetadataSchema
Full Description

Return the set of metadata that is available from the visitors table for each visitor. It is a set of . separated metadata field names to information about that field, including the type. Here is an example return value

{ "metadata.auto.lastvisit" : "time", "metadata.pendo.donotproces" : "boolean" }

PERFORMANCE: This is a fast-running tool.

Parameters (1 required, 1 optional)
Required
subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
userQuerystring

The original user query or question that triggered this tool call.

Visitor Query

visitorQuery
Full Description

Retrieve visitor data and metadata OR just the counts of matching visitors by running aggregation queries directly against the visitor dataset. Every response entity will conceptually be a visitor (a person who visited the application) and their associated metadata if you use select to ask for them.

USE FOR: Getting visitor information, metadata, and visitor counts with flexible filtering options.

EXAMPLES:

  • Get all visitors with their last visit time
  • Show me visitors from a specific segment
  • How many visitors match certain criteria? (set count=true)
  • Get visitor metadata like browser, location, or custom fields
  • Find visitors with a specific metadata value

WORKFLOW: Use the visitorMetadataSchema tool to explore available metadata fields, then use this tool for detailed analysis

RETURNS:

  • Visitor data with selected metadata fields (without select passed in, no metadata fields are returned)
  • Visitor counts when count=true is specified
  • Results filtered by segments, specific visitor IDs, metadata, or other criteria
  • Results are sorted by last visit time descending
  • By default, results are limited to 10,000 visitors per request. If 10,000 visitors are returned, assume there are more visitors and consider refining your filters or increasing the limit.

FILTERING OPTIONS:

  • Filter by specific visitor ID
  • Filter by visitor segments
  • Filter by metadata value for a specific metadata group and field
  • Automatically filters out anonymous visitors (unless subscription allows them)

PERFORMANCE: This is a fast-running tool.

Parameters (2 required, 7 optional)
Required
appIdstring

Application id of the app to query

subIdstring

Subscription ID that owns the data. Required for all queries.

Optional
countboolean

When true, returns ONLY a single aggregate count number — no entity names or ranked rows. Use for "how many" questions. When false (default), returns individual rows with metrics. REQUIRED for any ranking, listing, or "top N" query. If the query asks for a list or ranking, count MUST be false.

limitnumber

Number of visitors to return. Only set this if count is false. Defaults to 10000, max of 50000

Default: 10000
metadataFilterstring

The form of this field is 'metadata.metadataGroup.metadataField == metadataValue'. 'metadata' is a const and should be included exactly as shown. The metadataGroup is often 'agent', 'auto', 'custom', or 'salesforce' but may be anything. metadataField may be any string. metadataValue may be anything but if it is a string, surround it in quotes. The == (equals) operator may be replaced with the following operators: != (not equals), < (less than), > (greater than), <= (less than or equal to), or >= (greater than or equal to). Multiple conditions may be combined with && (AND) or || (OR). When filtering dates, use the date format `date("YYYY-MM-DD")`.

segmentIdstring

filter the results by the specified segment id. If not provided, no segment filtering is applied.

selectarray

list of fields to read in addition to the visitorId. only exact field names may be used, and should come from the visitorMetadataSchema tool

userQuerystring

The original user query or question that triggered this tool call.

visitorIdstring

only return data about the specified visitorId (often formatted as email address)