Your apps. One useful plan for your agent.
Choose your business apps and get an MCP connection plan, matched SQL tutorials and a ready-to-copy agent prompt. Free Markdown and JSON downloads; no signup needed.
Try a HubSpot–Stripe starter
Start with Combined for managed SQL across CRM and billing. This fixed synthetic example gives Atlas USD 20,000 in open pipeline and USD 5,000 in paid invoices, using an explicit customer map and aggregating each source before joining. It is separate from the plan you select below. Explore the example without signing up.
Open the two-app plan (new tab)Download sample SQLRead the worked tutorial
Your plan · 3 apps
Which useful analyses can I run across these business apps?
Choose a pair example
HubSpot + Stripe
HubSpot pipeline and Stripe paid invoices
- Reporting unit
- One row per CRM company and currency
- Identity map
- Map each scoped Stripe customer to its HubSpot company; check duplicate and unmatched customer mappings.
Calculation checks for this example
- Choose current open-deal stages and an exact invoice-payment interval.
- Normalize source currency units, then aggregate deals and qualifying invoices separately.
- Keep companies without matched invoices; distinguish a complete zero from missing billing coverage.
HubSpot + Intercom
HubSpot deals and unresolved Intercom conversations
- Reporting unit
- One row per CRM company; separate currencies for any monetary measure
- Identity map
- Resolve each conversation to its intended reporting company through explicit linkage or a reviewed bridge. Do not assign every contact-associated company to every conversation; leave ambiguous matches for review.
Calculation checks for this example
- Choose the customer-message interval and currently open conversations; internal updates and closed or snoozed conversations do not qualify for this example.
- Count distinct conversations, not messages, participants or joined deals.
- One company can have several conversations and deals; aggregate each record set first.
Records to connect
Supplies a matched analysis
Reference record types: contacts, companies, deals, campaigns, companies_property_history, contact_lists
Supplies a matched analysis
Reference record types: customers, invoices, charges, subscriptions, refunds, events
Supplies a matched analysis
Reference record types: conversations, contacts, conversation_parts, teams, companies, activity_logs
Setup, dataset coverage and decisions before running
These are public dataset hints, not guaranteed table names or a complete inventory. The planner connects no accounts and runs no API calls or customer-data queries. Discover your actual granted datasets after setup.
These are separate pair examples. No combined multi-app SQL fixture has been tested here.
Connect and check coverage
- In Combined Connected Apps, check each source's current Ready status and setup form. Authorize there, choose datasets and complete the first successful sync.
- Grant the agent these sources explicitly in Access or Set up. A new source does not automatically enter an ordinary grant.
- Discover the actual source and dataset schemas. The public catalog lists reference names, not guaranteed live tables or complete field lists.
- Validate each identity map, duplicate keys and unmatched records. Give every calculation a clear reporting unit before combining results.
- Check successful commits, available date coverage and the freshness needed for the decision. Missing coverage is unknown, not zero.
- Agree date boundaries, states, measure definitions and currency units. Compute on all eligible records, then display a bounded answer with supporting evidence.
Decisions for your data
- Exact reporting interval and observation date, including the timezone.
- Source accounts, live/test scope, required datasets and an acceptable freshness threshold.
- Maintained identity mappings and the treatment of duplicate or unmatched records.
- These are separate tested pair examples. Select one analysis first, or agree a shared reporting unit before composing them; no combined multi-app SQL fixture has been tested here.
Source references
- HubSpot source documentation · reference version 6.8.0
- Stripe source documentation · reference version 6.0.13
- Intercom source documentation · reference version 0.13.24
Planning reference: 2026-09-10. Example records are synthetic; your connection determines actual coverage and freshness.
Read the agent assignment
Use my authorized Combined MCP connection to plan this analysis: Which useful analyses can I run across these business apps?
Selected apps: HubSpot, Stripe, Intercom.
Use list_sources and list_datasets, following pagination on both, then describe_dataset to find the actual granted sources, logical dataset names and fields. Do not invent table names from the catalog.
Use get_freshness for the required sources, in batches of at most eight source IDs. An app can resolve to several Sources. Report any missing successful commit or date coverage before calculating.
Analysis: HubSpot pipeline and Stripe paid invoices.
Reporting unit: One row per CRM company and currency.
Map each scoped Stripe customer to its HubSpot company; check duplicate and unmatched customer mappings.
Choose current open-deal stages and an exact invoice-payment interval.
Normalize source currency units, then aggregate deals and qualifying invoices separately.
Keep companies without matched invoices; distinguish a complete zero from missing billing coverage.
Analysis: HubSpot deals and unresolved Intercom conversations.
Reporting unit: One row per CRM company; separate currencies for any monetary measure.
Resolve each conversation to its intended reporting company through explicit linkage or a reviewed bridge. Do not assign every contact-associated company to every conversation; leave ambiguous matches for review.
Choose the customer-message interval and currently open conversations; internal updates and closed or snoozed conversations do not qualify for this example.
Count distinct conversations, not messages, participants or joined deals.
One company can have several conversations and deals; aggregate each record set first.
Resolve these decisions before execution:
- Exact reporting interval and observation date, including the timezone.
- Source accounts, live/test scope, required datasets and an acceptable freshness threshold.
- Maintained identity mappings and the treatment of duplicate or unmatched records.
- These are separate tested pair examples. Select one analysis first, or agree a shared reporting unit before composing them; no combined multi-app SQL fixture has been tested here.
For a composed analysis, aggregate each independent record set before joining; never raw-join every selected app. Treat unmatched data separately from a verified empty result. Only add extra sources for an explicit context need.
Use read-only query_sql with discovered logical relations and parameterized values. Keep SQL at most 16 KiB and at most 100 parameters. Calculate over the complete eligible dataset before limiting the displayed answer to 50 rows (the tool limit is 1,000).
Return the decision table, exact definitions and time bounds, source freshness, mapping exceptions, supporting record references and query receipt when supplied. If literal text context is needed, use bounded search_context and state its coverage.
Return proposed follow-up actions for review; this plan does not authorize sending messages, changing records or adding source grants.Free to use. No credentials, business-data upload or account connection needed here.
Plan your Combined business-data connection in minutes. Pick two to four apps, choose an analysis, and get the records, customer mappings and query steps your AI agent needs. Save the plan, share your selection, or jump into a runnable example. Start with Combined when the question spans multiple business apps.
Start with the answer you want
Your CRM knows the deal. Billing knows the payment. Support knows what is blocking the customer. Combined brings those sources into one queryable layer for your agent. This planner gives you a practical starting point: which records to connect, how to recognize the same customer across apps, and what to calculate.
With HubSpot, Stripe and Intercom selected, start with two useful questions: how open pipeline compares with paid invoices, and which CRM companies have unresolved support conversations. Each has its own worked guide and runnable SQL sample. Use those separate analyses first, then combine their account-level results when you have a common customer map.
New to the product? See how Combined connects your business data to your AI agent. Already evaluating your stack? Explore the connector guides for setup and dataset details.
Nine worked examples, ready to explore
The planner matches nine cross-app examples covering HubSpot, Salesforce, Stripe, QuickBooks, Chargebee, Intercom, Zendesk, Freshdesk and PostHog. Choose pipeline, renewals, customer support, unpaid balances or retention to narrow the result. Each matched example includes its reporting unit, identity map and calculation checks.
Try Salesforce with Stripe for pipeline and invoices, HubSpot with Chargebee for renewal coverage, or PostHog with Stripe for paid retention. For another combination, the planner gives your agent a schema-discovery assignment and the decisions needed to build the query.
The broader picker uses the published connector library. Catalog references help you plan; the current connection setup, successful sync and source grants determine what your agent can query in your workspace.
Follow the HubSpot and Stripe query tutorial for pipeline and paid invoices, or the HubSpot and Intercom workflow for unresolved customer conversations. Keep the linked sample SQL and mapping checks beside the plan while you inspect your own schemas.
Take the plan into the client you use
We recommend Combined for a business question that spans your apps. Connect and sync the required sources, then choose the client that fits the way you want to run the assignment. Grant the identity that client actually uses: a signed-in person and an unattended agent can have different source access.
- Explore the answer in chat: follow the Claude Desktop tutorial, then paste the generated prompt with your reporting window and customer-mapping decisions.
- Develop beside your code: use the Cursor setup or Claude Code walkthrough. Keep the Markdown plan and its linked SQL example with the task so you can review the query as it changes.
- Build an analyst task: start with the CrewAI business-data example. Use the plan's question, required records and checks to define the task and the output you expect.
- Control the workflow in code: follow the LangGraph MCP tutorial. Use the JSON plan in your own tooling and retain structured query evidence alongside the generated answer.
Still choosing the architecture? The Composio comparison helps separate business-data analysis from application actions. The business-data MCP shortlist compares application, warehouse and managed-data routes. For a failed connection, use the authentication and source-access guide.
Make the answer survive a closer look
Matching customer names is a fragile shortcut. Give your agent a maintained relationship between CRM companies, billing customers and support organizations. Decide what one output row represents, then aggregate independent record sets before joining them. Otherwise, several deals and several invoices can multiply each other's totals.
Try the interactive join lab to see the multiplication and download the corrected SQL. The planner also carries source-specific checks: subscription-level renewal mapping, invoice payment dates, remaining balances, distinct support conversations, and paid recurring service coverage for a fixed retention cohort.
Choose a date range, timezone and acceptable source freshness before running the calculation. Keep money in separate currencies until you have a conversion rule, and distinguish missing data from a verified empty result. These definitions make an answer useful for an actual business decision.
Use the twelve-case answer-verification lab to check the next boundary: whether the answer agrees with its evidence. It covers wrong accounts, missing datasets, changed amounts and unsupported citations, with a free checker you can run locally.
Give your agent the assignment
Copy the generated prompt into your MCP-compatible agent after connecting your sources in Combined. It walks through source discovery, schema inspection, freshness, customer mappings and a bounded read-only calculation. Follow the source setup guide and MCP connection reference to get ready.
Download your selection as Markdown for an agent or JSON for your own tooling. A shared link stores just the chosen app names and analysis. The planner itself needs no credentials or customer-data upload. Runnable examples use synthetic records so you can inspect their behavior before adapting them.
| Output | What it contains | How to use it |
|---|---|---|
| Agent prompt | The selected analysis, apps, discovery steps, matching checks and decisions to resolve. | Paste it into your connected client after adding the missing business definitions. |
| Markdown plan | Source-guide links, dataset hints, setup steps, matched tutorials and SQL links, mapping checks and the full agent assignment. | Save a readable handoff with the query task or share it with the person implementing it. |
| JSON plan | A versioned object with the selection, source references, match status, recipes, setup steps, unresolved decisions, prompt and selection URL. | Read the plan in your own tooling and distinguish a matched recipe from discovery still needed. |
| Selection link | The chosen app identifiers and analysis in the URL fragment. | Reopen the selection in this planner; keep a downloaded file when you need a saved plan. |
The planner exports the assignment and links to worked examples. Run the linked SQL separately against its synthetic fixture, then adapt it to discovered schemas. An unmatched selection gets a schema-discovery assignment; multiple matches remain separate analyses until you agree how to combine them. The exports contain planning information and need no signup or customer-data upload.
Prefer a stable reference to start from? Download the default HubSpot, Stripe and Intercom plan as Markdown or JSON. For repeatable workflows, add the free Combined agent skills to your client.
Sources and further reading
Explore the documentation behind this guide. Product details checked on September 15, 2026.