The Wonderflow MCP Connector exposes 11 tools that your AI assistant can call. They are grouped into four categories: Discovery, Analytics, Products & Reviews, and Catalog Management. 🛠️

All tools accept an optional agent_ctx parameter that carries your session context (scope, user, filters). This is managed automatically by the MCP server — you don’t need to provide it manually.


🔍 Discovery tools

These tools help you explore what’s in your catalog — topics, metadata fields, data types, and configuration.

discover_topics

Find topics in your catalog using semantic search.

ParameterTypeRequiredDescription
search_textstringâś…Semantic query to match against topics (e.g. "noise", "battery life")
ontology_typestringFilter by ontology type: "Component", "Discovery", "Topic", "Property", "Communication & Service"
limitintegerMax topics to return (default: 10)

Example prompt: “What topics related to battery life has my catalog discovered?”


discover_metadata

List available metadata fields or search for specific field values.

ParameterTypeRequiredDescription
field_namestringMetadata field to search values for. Omit to list all available fields
search_textstringSemantic query to match against field values. Required when field_name is set
limitintegerMax values to return (default: 10)

Example prompt: “What metadata fields are available in my catalog?”


get_available_datatypes

List all data types available in the current catalog. Takes no user-facing parameters.

Example prompt: “What data types does my catalog support?”


get_catalog_configuration

Return current catalog configuration — channels, categories, and divisions.

ParameterTypeRequiredDescription
includestring[]Sections to return: "channels", "categories", "divisions". When omitted, returns only divisions

Example prompt: “Show me all the channels and categories in my catalog”


📊 Analytics tools

These tools compute KPIs and metrics from your catalog data. Each supports breakdowns, filters, sorting, and time-series trends.

get_feedback_analytics_llm

The most powerful analytics tool — compute feedback KPIs across multiple dimensions.

ParameterTypeRequiredDescription
kpienumâś…KPI to compute (see table below)
brand_namestringFilter by brand
product_namestringFilter by product name (partial match)
product_categorystringFilter by category
product_divisionstringFilter by division
product_typestringFilter by type
custom_groupstringUser-defined product group name
product_idsstring[]Product IDs from find_products
breakdown_1enum/stringPrimary grouping dimension
breakdown_2enum/stringSecondary grouping dimension (must differ from breakdown_1)
trendobjectTime-series config: frequency (weekly/monthly/quarterly/yearly), count_type (instant/cumulative), optional trendTopic
sort_byenum"value" or "label"
sort_orderenum"ASC" or "DESC"
limitintegerMax result rows
filtersobject[]Structured filters (see Filters section below)
ontologyenum"Discovery", "Topic", "Property", "Component", "Communication & Service" (default: "Topic")

Available KPIs

KPIDescription
feedback_countNumber of customer feedback (reviews) across dimensions
feedback_ratingAverage normalized rating
pros_consTopics mentioned most frequently — strengths and weaknesses
sentiment_indexOverall sentiment score from -1 (negative) to +1 (positive)
tgwThings Gone Wrong rate — average complaints per review
npsNet Promoter Score
relevanceTopic importance as a percentage across sentiments

Breakdown dimensions

channel, country, sku, brandName, name, productType, productDivision, productCategory, language, region, topic, or any metadata.* field.

Example prompt: “Show me the sentiment index for each brand, broken down by country”


get_prices_analytics_llm

Compute price analytics for specific products.

ParameterTypeRequiredDescription
product_idsstring[]âś…Product IDs from find_products
kpisenum[]âś…KPIs to compute: "price", "price_trend"
breakdown_1enumPrimary dimension: channel, country, region, sku, brandName, productName, productType, productDivision, productCategory
breakdown_2enumSecondary dimension (must differ from breakdown_1)
trendobjectTime-series config: frequency + count_type
sortobjectSort config: field + direction (ASC/DESC)
limitintegerMax result rows
filtersobject[]Structured filters

Example prompt: “What’s the price trend for Philips TVs across channels?”


get_votes_analytics_llm

Compute votes (ratings) analytics for specific products.

ParameterTypeRequiredDescription
product_idsstring[]âś…Product IDs from find_products
kpienumâś…KPI to compute: "votes_count" or "votes_rating"
breakdown_1enumPrimary dimension: url, sku, brandName, name, productType, productDivision, productCategory, channel, country, region, star_rating
breakdown_2enumSecondary dimension (must differ from breakdown_1)
trendobjectTime-series config: frequency + count_type
sort_byenum"value" or "label"
sort_orderenum"ASC" or "DESC"
limitintegerMax result rows
filtersobject[]Structured filters

Example prompt: “How many votes did each brand get last quarter, broken down by star rating?”


📦 Products & Reviews

find_products

Search for products in the catalog matching filter criteria.

ParameterTypeRequiredDescription
brand_namestringBrand name (e.g. "Philips")
product_namestringProduct name or partial match (e.g. "Senseo Original"). Exclude brand
product_categorystringProduct category (e.g. "Televisions")
product_divisionstringProduct division (e.g. "Coffee Machines")
product_typestringProduct sub-type (e.g. "Espresso")
custom_groupstringUser-defined product group name
fieldsstring[]Fields to include: "id", "brand_name", "name", "product_category", "product_division", "product_type". "id" always returned
count_onlybooleanReturn only the count of matching products (default: false)
limitintegerMax products to return (1–1000, default: 100)

Example prompt: “Find all Philips coffee machines in the catalog”


search_reviews

Search customer reviews with semantic search and structured filters.

ParameterTypeRequiredDescription
product_idsstring[]Product IDs from find_products
brand_namestringFilter by brand
product_namestringFilter by product name (partial match)
product_categorystringFilter by category
product_divisionstringFilter by division
product_typestringFilter by type
custom_groupstringUser-defined product group name
search_textstringSemantic search text
filtersobject[]Structured filters (name, operator, values)
sort_bystring"date" (default) or "rating"
sort_orderstring"desc" (default) or "asc"
limitintegerResults per page (1–50, default: 10)
cursorstringPagination cursor from previous response

Example prompt: “Show me recent negative reviews mentioning noise for Samsung TVs”


🔄 Catalog Management

list_catalogs

List all catalogs available to the current user. Takes no user-facing parameters.

Example prompt: “What catalogs do I have access to?”


switch_catalog

Switch the active catalog for the current session. This is available to Wonderflow admin accounts. The catalog is identified by its scope ID, which is shown when you hover over the catalog in the Wonderboard. For the full picture, see Catalogs and scopes.

ParameterTypeRequiredDescription
catalog_idstringâś…The ID of the catalog to switch to (as returned by list_catalogs)

Example prompt: “Switch to the catalog with scope ID <scope-id>”


đź”§ Filters reference

The analytics tools (get_feedback_analytics_llm, get_prices_analytics_llm, get_votes_analytics_llm) and search_reviews support structured filters. Each filter is an object with:

FieldTypeRequiredDescription
namestringâś…Dimension to filter on (e.g. "channel", "country", "topic", or "metadata.myField")
operatorenumâś…"EQUAL", "NOT_EQUAL", "ABOVE", "BELOW", "BETWEEN", "IN", "NOT_IN"
valuesarrayâś…Filter values
conditionenum"AND" (default) or "OR" — how to combine with other filters

Example: Filter reviews from Amazon in Italy:

[
  { "name": "channel", "operator": "EQUAL", "values": ["Amazon"] },
  { "name": "country", "operator": "EQUAL", "values": ["IT"], "condition": "AND" }
]