Databuddy provides product analytics, published insights, and durable investigations for the websites this account can access.
- get_data runs analytics queries. Related queries can run as one batch.
- list_insights returns published findings. Each carries the next step recorded when it was generated; next is null when no step was recorded, when a later finding for the same case superseded it, or when the case resolved.
- list_investigations lists the latest case for each subject. Cases with a dashboard analysis or verification queued or running are left out until it finishes, and an older case for the same subject may appear instead. get_investigation returns one case's evidence, status, and replies by ID.
- reply_to_investigation adds a clarification that is answered from the case's saved evidence. It does not fetch new measurements, change actions, or start a new investigation. get_investigation shows the reply's status, and reusing a replyId returns the original reply.
- dismiss_investigation closes an open case with the team's reason. Call it only when the user asks. expected, wrong and not_useful keep the subject quiet for 30 days unless it gets materially worse.
- capabilities lists query types. get_schema lists analytics columns.
- submit_feedback sends a bug report, feature request, or blocking error about Databuddy itself to the Databuddy team. Call it only after the user asks or agrees to send it.
- Most tools accept websiteId, websiteName, or websiteDomain. get_investigation, reply_to_investigation, dismiss_investigation, and the goal and annotation update and delete tools take only the returned ID. list_flags, update_flag, and add_users_to_flag act on that website's flags when given a website and on organization-wide flags without one.
- Date ranges use a preset or both from and to (YYYY-MM-DD).
- A plan_limit error means the account's plan does not include the request. Its details.upgrade names the plan and gives a link; tell the user what is blocked
Discoverability
0/6 passed0 of 6 passed0/100
Client listings and public setup information.
mcp.json or server-card.json
Either mcp.json or an MCP Server Card declaring this endpoint passes.
No matching mcp.json manifest or MCP Server Card was found at the checked URLs.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
Return one funnel's conversion broken down by referrer, by funnelId from list_funnels. Paginated over referrers. Referrers with a single visitor are omitted, so totals can be lower than get_funnel_analytics.
The description explains the capability, when to use it, and what to expect.
Inputs86/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
preset
Date preset such as last_7d. Alternative to from/to; defaults to last_30d.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
from
Start date YYYY-MM-DD. Use with to; alternative to preset.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
to
End date YYYY-MM-DD. Use with from; alternative to preset.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Clear enough to supply this argument.
websiteDomain
Website domain. Alternative to websiteId.
Clear enough to supply this argument.
funnelId
Funnel ID from list_funnels
Clear enough to supply this argument.
limit
Maximum items to return, 1-100. Defaults to 50.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
offset
Items to skip. Use the previous offset plus limit for the next page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"name": "get_funnel_analytics_by_referrer",
"title": "Get funnel analytics by referrer",
"description": "Return one funnel's conversion broken down by referrer, by funnelId from list_funnels. Paginated over referrers. Referrers with a single visitor are omitted, so totals can be lower than get_funnel_analytics.",
"inputSchema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"funnelId"
],
"properties": {
"to": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
"description": "End date YYYY-MM-DD. Use with from; alternative to preset."
},
"from": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
"description": "Start date YYYY-MM-DD. Use with to; alternative to preset."
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1,
"description": "Maximum items to return, 1-100. Defaults to 50."
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 9007199254740991,
"minimum": 0,
"description": "Items to skip. Use the previous offset plus limit for the next page."
},
"preset": {
"enum": [
"today",
"yesterday",
"last_7d",
"last_14d",
"last_3_weeks",
"last_30d",
"last_60d",
"last_90d",
"this_week",
"last_week",
"this_month",
"last_month",
"this_year"
],
"type": "string",
"description": "Date preset such as last_7d. Alternative to from/to; defaults to last_30d."
},
"funnelId": {
"type": "string",
"description": "Funnel ID from list_funnels"
},
"websiteId": {
"type": "string",
"description": "Website ID from list_websites"
},
"websiteName": {
"type": "string",
"description": "Website name. Alternative to websiteId."
},
"websiteDomain": {
"type": "string",
"description": "Website domain. Alternative to websiteId."
}
}
},
"outputSchema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {},
"additionalProperties": {}
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description79/100
List the websites this account can access, with IDs, names, domains, and organizations. Website-scoped tools accept websiteId, websiteName, or websiteDomain.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Maximum items to return, 1-100. Defaults to 50.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
offset
Items to skip. Use the previous offset plus limit for the next page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description82/100
List published insights for an organization or website: title, summary, evidence, impact, and the recorded next step (null when no step was recorded, when a later finding for the same case superseded it, or when the case resolved).
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
websiteDomain
Website domain. Alternative to websiteId.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Maximum items to return, 1-100. Defaults to 50.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
offset
Items to skip. Use the previous offset plus limit for the next page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description86/100
List the latest investigation per subject with IDs. state is needs_you, watching or resolved; need says what the team owes. Cases with dashboard work queued or running are left out until it finishes; get_investigation reads one by ID.
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Clear enough to supply this argument.
websiteDomain
Website domain. Alternative to websiteId.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
limit
Maximum items to return, 1-100. Defaults to 50.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
offset
Items to skip. Use the previous offset plus limit for the next page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Get one durable investigation, including its current status, evidence-backed observations, and replies. A skipped reply ran no work; skipReason says why. The ID may come from Slack or list_investigations.
The description explains the capability, when to use it, and what to expect.
Inputs99/100
Input documentation gives an agent enough context to populate the arguments.
investigationId
Investigation ID from list_investigations, list_insights (investigationId), or Slack.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Add a clarification to an existing investigation. It is answered from the case's saved evidence, without new measurements or actions. The answer appears in get_investigation. It cannot start a new investigation.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
investigationId
Investigation ID from list_investigations, list_insights (investigationId), or Slack.
Clear enough to supply this argument.
body
Your question or clarification.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
replyId
Unique stable idempotency key. Reuse it if this tool call is retried.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
Close an open investigation with the team's reason, only when the user asks. Future investigations read the note. expected, wrong and not_useful keep the subject quiet for 30 days unless it gets materially worse.
Explain mutations, irreversible effects, or prerequisites that matter before calling this tool.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
investigationId
Investigation ID from list_investigations, list_insights (investigationId), or Slack.
Clear enough to supply this argument.
reason
expected: the team knew or intended it. wrong: the analysis is not right. not_useful: real but not worth attention. already_fixed: fixed outside Databuddy.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
note
Why, in the team's words.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description80/100
Query Databuddy's analytics API (www.databuddy.cc/docs/api) for a website: one query or a batch of 2-10. Query types come from capabilities. Default range last_30d. Returns at most 20 rows per query.
The description explains the capability, when to use it, and what to expect.
Inputs40/100
12 of 24 inputs have descriptions. Add descriptions to the missing inputs, including where to obtain IDs and how to supply values.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Clear enough to supply this argument.
websiteDomain
Website domain. Alternative to websiteId.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
type
Query type for single-query mode. Use capabilities to see all types.
Explain the meaning of this value, not just its name.
preset
Date preset (e.g. 'last_7d', 'last_30d'). Alternative to from/to.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
from
Start date YYYY-MM-DD. Use with 'to'.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
to
End date YYYY-MM-DD. Use with 'from'.
Clear enough to supply this argument.
timeUnit
Time granularity for time-series data.
Explain the meaning of this value, not just its name.
limit
Rows to return, 1-20. Defaults to the query type's own limit; at most 20 rows are returned.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
filters › items › field
Not provided
Missing description. Explain what this value means and how to supply it.
filters › items › op
Not provided
Missing description. Explain what this value means and how to supply it.
filters › items › value
Not provided
Missing description. Explain what this value means and how to supply it.
orderBy
Output metric to sort by, such as 'visitors' or 'pageviews DESC'. Rejected values return the allowed list.
Clear enough to supply this argument.
queries › items › type
Not provided
Missing description. Explain what this value means and how to supply it.
queries › items › preset
Not provided
Missing description. Explain what this value means and how to supply it.
queries › items › from
Not provided
Missing description. Explain what this value means and how to supply it.
queries › items › to
Not provided
Missing description. Explain what this value means and how to supply it.
queries › items › timeUnit
Not provided
Missing description. Explain what this value means and how to supply it.
queries › items › limit
Rows to return, 1-20. Defaults to the query type's own limit; at most 20 rows are returned.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
queries › items › filters › items › field
Not provided
Missing description. Explain what this value means and how to supply it.
queries › items › filters › items › op
Not provided
Missing description. Explain what this value means and how to supply it.
queries › items › filters › items › value
Not provided
Missing description. Explain what this value means and how to supply it.
queries › items › orderBy
Not provided
Missing description. Explain what this value means and how to supply it.
timezone
IANA timezone for date presets and date or hour buckets. Defaults to UTC. Row timestamps such as time, first_visit, or last_visit are returned in UTC.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description81/100
Return get_data query types, date presets, categories, and a schema summary. 'include' selects sections; queryTypes are omitted unless requested or filtered by category or contains.
The description explains the capability, when to use it, and what to expect.
Inputs81/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
include
Sections to include. Default: hints, datePresets, schemaSummary, categories. Pass ['queryTypes'] to request the heavy query-type list.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
category
Filter queryTypes to a category. Options: AI Agents, Acquisition, Analytics, Audience, Behavior, Content, Custom Events, Engagement, Errors, Geography, MCP, Pages, Performance, Profiles, Realtime, Revenue, Sessions, Technology, Uptime
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
contains
Substring filter for queryTypes keys (case-insensitive).
Clear enough to supply this argument.
detail
'summary' returns descriptions only; 'full' adds each type's allowedFilters, also when filtering by category or contains.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description84/100
Return per-step conversion and drop-off for one funnel, by funnelId from list_funnels. Visitors entering in range get conversionWindowHours to finish, even past range end. time_series holds at most the latest 90 points.
The description explains the capability, when to use it, and what to expect.
Inputs82/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
preset
Date preset such as last_7d. Alternative to from/to; defaults to last_30d.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
from
Start date YYYY-MM-DD. Use with to; alternative to preset.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
to
End date YYYY-MM-DD. Use with from; alternative to preset.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Clear enough to supply this argument.
websiteDomain
Website domain. Alternative to websiteId.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
{
"name": "get_funnel_analytics",
"title": "Get funnel analytics",
"description": "Return per-step conversion and drop-off for one funnel, by funnelId from list_funnels. Visitors entering in range get conversionWindowHours to finish, even past range end. time_series holds at most the latest 90 points.",
"inputSchema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"funnelId"
],
"properties": {
"to": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
"description": "End date YYYY-MM-DD. Use with from; alternative to preset."
},
"from": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
"description": "Start date YYYY-MM-DD. Use with to; alternative to preset."
},
"preset": {
"enum": [
"today",
"yesterday",
"last_7d",
"last_14d",
"last_3_weeks",
"last_30d",
"last_60d",
"last_90d",
"this_week",
"last_week",
"this_month",
"last_month",
"this_year"
],
"type": "string",
"description": "Date preset such as last_7d. Alternative to from/to; defaults to last_30d."
},
"funnelId": {
"type": "string",
"description": "Funnel ID from list_funnels"
},
"websiteId": {
"type": "string",
"description": "Website ID from list_websites"
},
"websiteName": {
"type": "string",
"description": "Website name. Alternative to websiteId."
},
"websiteDomain": {
"type": "string",
"description": "Website domain. Alternative to websiteId."
}
}
},
"outputSchema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {},
"additionalProperties": {}
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description82/100
Create a funnel for a website. confirmed=false (default) returns a preview without writing; confirmed=true creates it.
The description explains the capability, when to use it, and what to expect.
Inputs40/100
8 of 17 inputs have descriptions. Add descriptions to the missing inputs, including where to obtain IDs and how to supply values.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Clear enough to supply this argument.
websiteDomain
Website domain. Alternative to websiteId.
Clear enough to supply this argument.
name
Funnel name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
What the funnel tracks.
Explain the meaning of this value, not just its name.
steps › items › type
Not provided
Missing description. Explain what this value means and how to supply it.
steps › items › target
Not provided
Missing description. Explain what this value means and how to supply it.
steps › items › name
Not provided
Missing description. Explain what this value means and how to supply it.
steps › items › filters › items › field
Not provided
Missing description. Explain what this value means and how to supply it.
steps › items › filters › items › operator
Not provided
Missing description. Explain what this value means and how to supply it.
steps › items › filters › items › value
Not provided
Missing description. Explain what this value means and how to supply it.
filters › items › field
Not provided
Missing description. Explain what this value means and how to supply it.
filters › items › operator
Not provided
Missing description. Explain what this value means and how to supply it.
filters › items › value
Not provided
Missing description. Explain what this value means and how to supply it.
ignoreHistoricData
true counts only data from the funnel's creation date onward.
Clear enough to supply this argument.
conversionWindowHours
Hours a visitor has to finish the funnel after the first step, 1-720. Defaults to 24. Match the journey's usual length, such as 168 or more for trial-to-paid.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
confirmed
false (default) returns a preview without writing; true applies the change.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description83/100
Find recordings by email, profileId, current user traits, recording dates, pages, timeline text, events, activity, or watch score. Use known trait values; ask if unknown. Dates refer to visits. Returns watch links, newest first.
Describe the returned information so the agent knows whether it will answer the request.
Inputs89/100
18 of 20 inputs have descriptions. Add descriptions to the missing inputs, including where to obtain IDs and how to supply values.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Clear enough to supply this argument.
websiteDomain
Website domain. Alternative to websiteId.
Clear enough to supply this argument.
person
Case-insensitive partial match on an identified user's email, name, or profile ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
email
Exact identified-user email, case-insensitive; combine with traits or profileId to narrow it.
Clear enough to supply this argument.
profileId
The stable profile ID supplied by the site with user identification.
Clear enough to supply this argument.
traits › items › key
Not provided
Missing description. Explain what this value means and how to supply it.
traits › items › value
Not provided
Missing description. Explain what this value means and how to supply it.
startedAfter
Inclusive recording start timestamp with timezone.
Clear enough to supply this argument.
startedBefore
Exclusive recording start timestamp with timezone.
Clear enough to supply this argument.
days
Recordings started in the last N days, unless explicit startedAfter/startedBefore bounds are supplied (recordings expire after 30).
Clear enough to supply this argument.
category
What the visitor was mainly doing, as classified per session.
Clear enough to supply this argument.
page
Only sessions that visited a path containing this, e.g. /pricing.
Clear enough to supply this argument.
text
Only sessions whose timeline mentions this (case-insensitive): a clicked button or link label, a typed field, or a page path.
Clear enough to supply this argument.
event
Only sessions where this custom event fired, e.g. signup_completed. Find event names with get_data or execute_sql_query on custom_events.
Clear enough to supply this argument.
issue
Only sessions with this unanswered-click issue, as `{path}:{element}`: the part after `friction:` in a replay_friction signal key.
Clear enough to supply this argument.
withFriction
Only sessions with clicks the page never answered.
Clear enough to supply this argument.
sessionId
One recording by its sessionId (from a replay link's session parameter). Also returns the timeline around each unanswered click.
Clear enough to supply this argument.
minWatchScore
Only sessions scored at least this worth watching (0-3; 2 = a clear moment of struggle).
The title clearly communicates the tool’s action and subject. Keep it concise.
Description62/100
List short links for the website's organization, newest first, with existing folders. total covers the full catalog; search_links finds a specific link.
Describe the returned information so the agent knows whether it will answer the request.
Inputs80/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Clear enough to supply this argument.
websiteDomain
Website domain. Alternative to websiteId.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
limit
Maximum items to return, 1-100. Defaults to 50.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
offset
Items to skip. Use the previous offset plus limit for the next page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description86/100
List feature flags with their status, rollout, rules, and variants: a website's flags when a website is given, otherwise the organization-wide flags. Flag IDs are used by update_flag and add_users_to_flag.
Describe the returned information so the agent knows whether it will answer the request.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
websiteDomain
Website domain. Alternative to websiteId.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
status
Only return flags with this status.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Maximum items to return, 1-100. Defaults to 50.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
offset
Items to skip. Use the previous offset plus limit for the next page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description75/100
Compare goal conversion across flag variants for tracked evaluations. Uses two-sided Fisher when any expected cell is below 5, otherwise a two-proportion z-test. Mixed visitors are excluded; minimumVisitorsPerArm still gates significance.
Describe the returned information so the agent knows whether it will answer the request.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
preset
Date preset such as last_7d. Alternative to from/to; defaults to last_30d.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
from
Start date YYYY-MM-DD. Use with to; alternative to preset.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
to
End date YYYY-MM-DD. Use with from; alternative to preset.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Clear enough to supply this argument.
websiteDomain
Website domain. Alternative to websiteId.
Clear enough to supply this argument.
flagId
Flag ID from list_flags.
Clear enough to supply this argument.
goalId
Goal ID from list_goals
Clear enough to supply this argument.
controlArm
Arm to compare against. Defaults to a variant named control, then false for boolean and rollout flags, then the first variant.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description86/100
Update a flag's config, status, rollout, rules, or variants. rules replaces every rule and needs expectedUpdatedAt. confirmed=false (default) previews the current flag with full rules and updatedAt; confirmed=true applies.
Explain mutations, irreversible effects, or prerequisites that matter before calling this tool.
Inputs51/100
18 of 32 inputs have descriptions. Add descriptions to the missing inputs, including where to obtain IDs and how to supply values.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Clear enough to supply this argument.
websiteDomain
Website domain. Alternative to websiteId.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
id
Flag ID from list_flags.
Clear enough to supply this argument.
name
Flag name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
What the flag controls.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
type
boolean turns on or off, rollout serves a percentage, multivariant serves variants.
Clear enough to supply this argument.
status
Enabled flags evaluate rules and defaults. Unmet dependencies block evaluation without changing the saved status.
Clear enough to supply this argument.
defaultValue
Value served when no rule matches.
Clear enough to supply this argument.
payload
JSON returned with the flag.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
persistAcrossAuth
true keeps a visitor's value after they sign in.
Clear enough to supply this argument.
rolloutPercentage
Whole percent of users who get the flag, 0 to 100.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
rolloutBy
Identity a rollout percentage buckets by: user (default), organization, or team.
Clear enough to supply this argument.
rules › items › type
Not provided
Missing description. Explain what this value means and how to supply it.
rules › items › operator
Not provided
Missing description. Explain what this value means and how to supply it.
rules › items › field
Not provided
Missing description. Explain what this value means and how to supply it.
rules › items › value
Not provided
Missing description. Explain what this value means and how to supply it.
rules › items › values
Not provided
Missing description. Explain what this value means and how to supply it.
rules › items › enabled
Not provided
Missing description. Explain what this value means and how to supply it.
rules › items › batch
Not provided
Missing description. Explain what this value means and how to supply it.
rules › items › batchValues
Not provided
Missing description. Explain what this value means and how to supply it.
rules › items › valuesTruncated
Not provided
Missing description. Explain what this value means and how to supply it.
variants › items › key
Not provided
Missing description. Explain what this value means and how to supply it.
variants › items › value
Not provided
Missing description. Explain what this value means and how to supply it.
variants › items › weight
Not provided
Missing description. Explain what this value means and how to supply it.
variants › items › description
Not provided
Missing description. Explain what this value means and how to supply it.
variants › items › type
Not provided
Missing description. Explain what this value means and how to supply it.
dependencies
Keys of flags that must be enabled, in the same environment, for this flag to evaluate.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
environment
Environment name, such as production; null serves SDKs that set no environment.
Clear enough to supply this argument.
targetGroupIds
IDs of target groups to attach. Website flags only.
Clear enough to supply this argument.
expectedUpdatedAt
The flag's updatedAt from the read you based this change on. Required with rules so a newer edit is never overwritten.
Clear enough to supply this argument.
confirmed
false (default) returns a preview without writing; true applies the change.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description80/100
Target user IDs or emails on a feature flag. mode=append (default) adds one rule; mode=replace deletes every existing rule first. confirmed=false (default) previews.
Explain mutations, irreversible effects, or prerequisites that matter before calling this tool.
Inputs87/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Clear enough to supply this argument.
websiteDomain
Website domain. Alternative to websiteId.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
flagId
Flag ID from list_flags.
Clear enough to supply this argument.
users
Emails or user IDs to target, up to 500.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
matchBy
Whether users holds emails (default) or user IDs.
Clear enough to supply this argument.
mode
append (default) adds one rule; replace deletes every existing rule first.
Clear enough to supply this argument.
confirmed
false (default) returns a preview without writing; true applies the change.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description83/100
Send a bug report, feature request, or blocking error about Databuddy itself to the Databuddy team. Call only after the user asks or agrees to send it. Problems on the user's own website are analytics questions.
The description explains the capability, when to use it, and what to expect.
Inputs86/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
title
Short summary.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
The user's words plus context: the page or feature, what they expected, and what happened.
Clear enough to supply this argument.
category
Kind of feedback.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
errorDetails
Exact error text, if any.
Clear enough to supply this argument.
websiteId
Website ID from list_websites
Clear enough to supply this argument.
websiteName
Website name. Alternative to websiteId.
Clear enough to supply this argument.
websiteDomain
Website domain. Alternative to websiteId.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
Databuddy setup, tools, quality score, publishing readiness, and alternatives.
How do I add Databuddy to Claude, ChatGPT, or Cursor?
Add Databuddy to Claude, ChatGPT, or Cursor by connecting its remote MCP URL in each client's MCP settings. In Claude, add a custom connector. In ChatGPT, add an MCP app. In Cursor, add an MCP server under Settings. The MCP URL is https://api.databuddy.cc/v1/mcp.
Is Databuddy MCP ready for ChatGPT and Claude?
As of November 9, 2026, Databuddy scores 96/100 on Manufact's MCP publishing checklist. The scan meets ChatGPT publishing checks and meets Claude publishing checks. Passing these checks does not guarantee marketplace approval.
How clear is Databuddy's MCP tool documentation?
As of November 9, 2026, Databuddy scores 83/100 in Manufact's review of tool titles, descriptions, input and output schemas, and behavior annotations. The review covers 35 of 35 discovered tools. The quality score measures documentation clarity; runtime behavior and marketplace readiness require separate checks.
What are the best alternatives to Databuddy?
As of November 10, 2026, alternatives to Databuddy in data-analytics on the Manufact MCP leaderboard include Neon, ClickHouse Cloud MCP Server, Ploti, athletedata, and ClickHouse Cloud MCP Server.
How can Databuddy improve its MCP documentation?
get_data is the lowest-scoring reviewed tool at 70/100. 12 of 24 inputs have descriptions. Add descriptions to the missing inputs, including where to obtain IDs and how to supply values. Open its review for feedback and a copyable fix prompt, then rerun the documentation review after updating your tool metadata.
Not your MCP?
Review any public or OAuth MCP server for protocol compatibility, tool documentation, and ChatGPT and Claude publishing readiness. No account required.