convalytics
What this MCP does
Provides read-only product analytics for Convex applications, including page views, events, funnels, user activity, traffic sources, and weekly performance summaries.
Tools
Input schema
{'type': 'object', 'required': ['funnelId'], 'properties': {'since': {'type': 'number', 'description': 'Start of window as unix milliseconds. Defaults to 7 days ago.'}, 'until': {'type': 'number', 'description': 'End of window as unix milliseconds. Defaults to now.'}, 'funnelId': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['project', 'name', 'steps'], 'properties': {'name': {'type': 'string', 'description': 'Human-readable name.'}, 'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['kind', 'match'], 'properties': {'kind': {'enum': ['event', 'pageview'], 'type': 'string', 'description': "'event' for a custom analytics.track() event, 'pageview' for a page-path match."}, 'label': {'type': 'string', 'description': 'Optional friendly display name.'}, 'match': {'type': 'string', 'description': "Event name (for kind='event') or exact pageview path (for kind='pageview')."}}, 'additionalProperties': False}, 'maxItems': 10, 'minItems': 2, 'description': 'Ordered list of 2–10 steps. Visitors must hit them in order.'}, 'project': {'type': 'string', 'description': "Project name (case-insensitive, e.g. 'slopbench') or project id from list_projects."}, 'description': {'type': 'string', 'description': 'Optional longer description.'}, 'conversionWindowMs': {'type': 'number', 'description': 'Max ms between consecutive steps. Default 7 days (604800000). Bounds: 60000 (1 min) to 7776000000 (90 days).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['funnelId'], 'properties': {'funnelId': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['project'], 'properties': {'name': {'type': 'string', 'description': "Optional event name to filter by (e.g. 'signup_completed'). If omitted, counts all custom events in the window. Do NOT pass 'page_view' here — page views are in a separate table."}, 'user': {'type': 'string', 'description': 'Optional. Filter to one visitor/user. Accepts userEmail (case-insensitive) or visitorId (exact). For the full per-user snapshot prefer user_activity.'}, 'since': {'type': 'number', 'description': 'Start of window as unix milliseconds. Defaults to 7 days ago.'}, 'until': {'type': 'number', 'description': 'End of window as unix milliseconds. Defaults to now.'}, 'project': {'type': 'string', 'description': "Project name (case-insensitive, e.g. 'slopbench') or project id from list_projects."}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['funnelId'], 'properties': {'funnelId': {'type': 'string', 'description': 'Funnel id from list_funnels or create_funnel.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['project'], 'properties': {'project': {'type': 'string', 'description': "Project name (case-insensitive, e.g. 'slopbench') or project id from list_projects."}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['project'], 'properties': {'user': {'type': 'string', 'description': 'Optional. Filter to one visitor/user. Accepts userEmail (case-insensitive) or visitorId (exact). For the full per-user snapshot prefer user_activity.'}, 'since': {'type': 'number', 'description': 'Start of window as unix milliseconds. Defaults to 7 days ago.'}, 'until': {'type': 'number', 'description': 'End of window as unix milliseconds. Defaults to now.'}, 'project': {'type': 'string', 'description': "Project name (case-insensitive, e.g. 'slopbench') or project id from list_projects."}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['project'], 'properties': {'name': {'type': 'string', 'description': "Optional event name to filter by (e.g. 'signup_completed'). Omit to return events of any name."}, 'user': {'type': 'string', 'description': 'Optional. Filter to one visitor/user. Accepts userEmail (case-insensitive) or visitorId (exact). For the full per-user snapshot prefer user_activity.'}, 'limit': {'type': 'number', 'description': 'Maximum number of events to return. Default 20, max 100.'}, 'redact': {'type': 'boolean', 'description': 'If true (default), userEmail/userName are null and props is {}. Set to false to include them.'}, 'project': {'type': 'string', 'description': "Project name (case-insensitive, e.g. 'slopbench') or project id from list_projects."}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['project'], 'properties': {'user': {'type': 'string', 'description': 'Optional. Filter to one visitor/user. Accepts userEmail (case-insensitive) or visitorId (exact). For the full per-user snapshot prefer user_activity.'}, 'limit': {'type': 'number', 'description': 'Maximum number of pages to return. Default 20, max 50.'}, 'since': {'type': 'number', 'description': 'Start of window as unix milliseconds. Defaults to 7 days ago.'}, 'until': {'type': 'number', 'description': 'End of window as unix milliseconds. Defaults to now.'}, 'project': {'type': 'string', 'description': "Project name (case-insensitive, e.g. 'slopbench') or project id from list_projects."}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['project'], 'properties': {'limit': {'type': 'number', 'description': 'Maximum number of referrers to return. Default 10, max 50.'}, 'since': {'type': 'number', 'description': 'Start of window as unix milliseconds. Defaults to 7 days ago.'}, 'until': {'type': 'number', 'description': 'End of window as unix milliseconds. Defaults to now.'}, 'project': {'type': 'string', 'description': "Project name (case-insensitive, e.g. 'slopbench') or project id from list_projects."}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['funnelId'], 'properties': {'name': {'type': 'string'}, 'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['kind', 'match'], 'properties': {'kind': {'enum': ['event', 'pageview'], 'type': 'string', 'description': "'event' for a custom analytics.track() event, 'pageview' for a page-path match."}, 'label': {'type': 'string', 'description': 'Optional friendly display name.'}, 'match': {'type': 'string', 'description': "Event name (for kind='event') or exact pageview path (for kind='pageview')."}}, 'additionalProperties': False}, 'maxItems': 10, 'minItems': 2}, 'funnelId': {'type': 'string'}, 'description': {'type': 'string'}, 'conversionWindowMs': {'type': 'number'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['project', 'user'], 'properties': {'user': {'type': 'string', 'description': "User identifier. Accepts userEmail (case-insensitive, e.g. 'dan@example.com') or visitorId (the exact string passed as userId on the original track() call)."}, 'since': {'type': 'number', 'description': 'Start of window as unix milliseconds. Defaults to 7 days ago.'}, 'until': {'type': 'number', 'description': 'End of window as unix milliseconds. Defaults to now.'}, 'project': {'type': 'string', 'description': "Project name (case-insensitive, e.g. 'slopbench') or project id from list_projects."}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['project'], 'properties': {'days': {'type': 'number', 'description': 'Lookback window in days, 1 to 90. Default 7.'}, 'compare': {'type': 'boolean', 'description': 'Include period-over-period comparison against the prior equal-length window. Default true. Set false for faster response when only current numbers matter.'}, 'project': {'type': 'string', 'description': "Project name (case-insensitive, e.g. 'slopbench') or project id from list_projects."}}, 'additionalProperties': False}
Recent tool changes
Similar MCP servers
synter-ads
Manages cross-platform advertising campaigns, audiences, tracking, creative, landing pages, campaign audits, technology intellige…
synter-ads
Manages cross-platform advertising campaigns, audiences, tracking, creative, landing pages, campaign audits, technology intellige…
Stratalize Finance
Provides financial, macroeconomic, banking, credit, commodities, M&A, ESG, labor, and regulatory benchmarks for analysis and plan…
Stratalize Healthcare
Retired Stratalize server exposing benchmark, market intelligence, compliance, financial, healthcare, legal, real estate, and eco…
Stratalize Governance
Retired Stratalize server exposing benchmark, market intelligence, compliance, financial, healthcare, legal, real estate, and eco…
Stratalize Oracle
Retired Stratalize server exposing benchmark, market intelligence, compliance, financial, healthcare, legal, real estate, and eco…
Stratalize Intelligence
Provides vendor, market, SaaS, workforce, government contract, public company, regulatory, competitive, and AI-brand intelligence…
Stratalize Real Estate
Retired Stratalize server exposing benchmark, market intelligence, compliance, financial, healthcare, legal, real estate, and eco…