# Answer BigQuery questions in Microsoft Teams with Claude: n8n workflow

> Started by an event in a connected app. It calls services over plain HTTP rather than through connectors.

Source: https://millionrounds.com/workflow/answer-bigquery-questions-in-microsoft-teams-with-claude (Millionrounds; every figure on the page links to its filing or article)

[Automation library](https://millionrounds.com/workflows) · [Customer support](https://millionrounds.com/workflows?category=Customer+support#library)

# Answer BigQuery questions in Microsoft Teams with Claude

Started by an event in a connected app. It calls services over plain HTTP rather than through connectors. 27 steps, 2 branches: large, and worth reading before you trust it with anything live.

Large

[Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fanswer-bigquery-questions-in-microsoft-teams-with-claude)

**27 steps** Large: read it before trusting it with anything live

**2** Branches: places the flow splits

**0** Loops or waits

**0** Services by connector: it calls them over plain HTTP

## The flow

Starts it 2 Model 3 Logic 17 Service 5

The steps in the order they run, from what starts it.

- 1 **When Teams Message Received** Microsoft Teams trigger *Starts it*
- 2 **On Workflow Error Occurrence** Error trigger *Starts it*
- 3 **Validate Teams Message** Code *Logic*
- 4 **Format Error Message** Code *Logic*
- 5 **Configure Variables** Code *Logic*
- 6 **Send Error Notification to Teams** Microsoft Teams *Service*
- 7 **Check Schema Cache Validity** Code *Logic*
- 8 **If Cache Hit** If *Logic*
- 9 **Ensure Schema Availability** Code *Logic*
- 10 **Create Schema Query Statement** Code *Logic*
- 11 **Build Main Agent Query Prompt** Code *Logic*
- 12 **Fetch Schema from BigQuery** Google Big Query *Service*
- 13 **Claude Conversational Agent** Anthropic *Model*
- 14 **Compile Schema Data for LLM** Code *Logic*
- 15 **Parse Claude Agent Output** Code *Logic*
- 16 **If Analytical Intent Detected** If *Logic*
- 17 **Build SQL Agent Prompt** Code *Logic*
- 18 **Generate Non-Analytical Response** Code *Logic*
- 19 **Claude SQL Sub-Agent** Anthropic *Model*
- 20 **Share Non-Analytical Reply to Teams** Microsoft Teams *Service*
- 21 **Extract and Validate SQL Code** Code *Logic*
- 22 **Run BigQuery SQL Query** Google Big Query *Service*
- 23 **Gather SQL Query Results** Code *Logic*
- 24 **Formulate Response Prompt** Code *Logic*
- 25 **Claude Generates Response** Anthropic *Model*
- 26 **Create Teams Adaptive Card** Code *Logic*
- 27 **Send Answer to Teams Channel** Microsoft Teams *Service*

## How it's built

- **Starts on:** An event in a connected app
- **Steps:** 27, with 2 branches
- **Size:** Large: read it before trusting it with anything live
- **Connects to:** Nothing by connector; it calls services over plain HTTP
- **Model:** None. This is plumbing, not judgement

## Questions

What does it need to run?

An n8n account. You connect your own accounts after importing it; none are included.

What starts it?

It starts on an event in a connected app.

Does it use AI?

No. Every step is fixed logic or a call to a service, so it does the same thing every time.

How long does it take to set up?

Take your time. At 27 steps it is large: read it before trusting it with anything live.

How do I import it?

Copy the workflow, open a new workflow in n8n and paste. The steps appear on the canvas, ready for your own accounts.

**Before you run it**

Nothing here has been tested by us. It is somebody's working automation, read and described from its own steps. Treat the connections it wants as a list of accounts it will touch, and read the 27 steps before you point it at anything that matters.

## Run it in n8n

- **Create your n8n account** Free to start. n8n is where the workflow runs. [Create an n8n account ↗](https://millionrounds.com/n8n)
- **Download the workflow** Free with a Millionrounds account. [Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fanswer-bigquery-questions-in-microsoft-teams-with-claude)
- **Paste it into n8n** Open a new workflow in n8n and paste. Then connect your own accounts.

Stored with the author's traces removed: canvas notes, instance identifiers, saved credential names and any live document they had left behind.

## Workflows like it

Also customer support, with the same services where possible, closest in size first.

- [**Automate customer support with Slack and CRM** 27 steps · calls a model · Gmail, Google Sheets](https://millionrounds.com/workflow/automate-customer-support-with-slack-and-crm)
- [**Answer HR questions with OpenAI and PostgreSQL** 26 steps · calls a model · Pinecone, Postgres](https://millionrounds.com/workflow/answer-hr-questions-with-openai-and-postgresql)
- [**Auto-assign support tickets with Jira and Supabase** 28 steps · calls a model · Jira, Supabase vectors](https://millionrounds.com/workflow/auto-assign-support-tickets-with-jira-and-supabase)
- [**Build an AI IT support agent with Azure Search and Entra ID** 26 steps · calls a model](https://millionrounds.com/workflow/build-an-ai-it-support-agent-with-azure-search-and-entra-id)
- [**Email sorting & drafting for customer support with Gemini** 26 steps · calls a model · Gmail, Google Sheets](https://millionrounds.com/workflow/email-sorting-and-drafting-for-customer-support-with-gemini)
- [**Handle customer support queries with Redis and LangCache** 28 steps · calls a model](https://millionrounds.com/workflow/handle-customer-support-queries-with-redis-and-langcache)
