Workbooks New
Turn a folder of Excel files into live tables — for Sheets, AI, REST and Excel itself
Query a folder of Excel workbooks as tables — every sheet becomes queryable, and repeat exports of the same report stack into one table you can trend.
One connection, every surface
Where your Excel Folder data can go
- 1 outbound connection
- 0 inbound ports
- read-only · files stay put
runs on
- For your team, vendors and partners
-
Excel add-in · refresh on demand
-
Google Sheets add-on · refresh on demand
-
Nova AI ask in plain English · text to SQL
-
Data Viewer share live results · team, vendors, partners · any device
- For apps and systems
-
REST API JSON endpoint · OpenAPI 3.1
-
Power BI Power Query M
-
Scheduled syncs Google Sheets · Airtable · Baserow · SeaTable · Smartsheet · Anvil
- For AI tools
-
AI assistants Claude · Cursor · MCP server
- Delivered to people
-
Alerts & reports Slack · Discord · Email · Webhook
Query Streams turns a folder of Excel workbooks into live SQL tables readable from Microsoft Excel itself, Google Sheets, AI assistants over MCP, the REST API and Power BI. Each sheet becomes its own table and every workbook holding that sheet stacks into it, so twelve monthly exports answer one trend query. The self-hosted agent opens each .xlsx read-only and never writes to it; the workbooks stay on your machine and only query results leave the network.
One of 9 File Set drivers on one folder engine — the inventory tables, change trail and refusal rules under features are shared by the family Excel Folder File System CSV Folder Parquet Folder SQLite Folder JSONL Folder Multi-record CSV Machine Logs Web Server Logs
- For your team, vendors and partners
-
Excel Folder to Excel Microsoft Excel · Excel add-in
Pull live Excel Folder results straight into a worksheet and refresh them on demand — desktop Excel, Excel Online, Microsoft 365.
How Excel works -
Excel Folder to Google Sheets Sheets add-on
Run a saved Excel Folder query from the sidebar and drop the rows into the sheet. Shared collaborators can refresh it themselves.
How Google Sheets works -
Ask Nova about Excel Folder Nova AI · text to SQL
Ask a question in plain English. Nova already knows your Excel Folder tables, writes and runs the SQL, explains the answer and charts it — no query to write, no credentials to hand over.
How Nova works -
Excel Folder to Data Viewer result sharing · team, vendors, partners · phone, tablet, desktop
Share a live Excel Folder result with anyone — a colleague, a vendor, a partner — as a bookmarkable grid that re-runs fresh when opened, on a phone, a tablet or a desktop. They see the results, never the SQL or the files.
How the Data Viewer works - For apps and systems
-
Excel Folder REST API HTTP endpoint
Publish an Excel Folder query as an authenticated JSON endpoint any application can call, with an OpenAPI 3.1 spec and ready-made Postman, Insomnia and Hoppscotch collections. No database port is opened.
How REST API works -
Excel Folder to Power BI Power Query M
Paste the generated Power Query M into the Power BI Advanced Editor and the report reads live Excel Folder results over HTTPS — no ODBC driver, no database port opened.
How Power BI works -
Excel Folder to Airtable Automation platform
Sync Excel Folder rows into an Airtable base on a schedule, or fetch them inside an Airtable automation script.
How Airtable works -
Excel Folder to Baserow Automation platform
Feed a Baserow table from Excel Folder over the REST endpoint — self-hosted or Baserow cloud.
How Baserow works -
Excel Folder to SeaTable Automation platform
Keep a SeaTable base current with Excel Folder data without exporting a file or exposing the database.
How SeaTable works -
Excel Folder to Smartsheet Automation platform
Push Excel Folder results into a Smartsheet grid so plans and reports read from the source system, not last week's export.
How Smartsheet works -
Excel Folder to Anvil Anvil Works · App platform
Back an Anvil Python app with Excel Folder through the REST endpoint instead of embedding database credentials in the app.
How Anvil works - For AI tools
-
Excel Folder MCP server Claude, Cursor and MCP clients
Give an AI assistant read-only access to Excel Folder with the schema it needs to write correct SQL — no credentials in the chat.
How MCP works - Delivered to people
-
Excel Folder alerts and reports Slack · Discord · Email · Webhook
Put an Excel Folder query on a schedule and have the rows delivered to Slack, Discord, email or a signed webhook — or hold the message until a row count, threshold or percentage change crosses the line you set.
How alerts and reports work
How it works
5 steps, no inbound firewall change
Install the Network Agent on a machine that can see the folder the workbooks land in — a finance drop, a vendor share, or a synced OneDrive or SharePoint folder that machine has mounted.
Point the connector at it; every .xlsx is matched. You can restrict it to named sheets if a workbook has tabs you do not want.
The agent lists the sheets in each workbook and reads them. By default each sheet becomes its own table, and every workbook that has that sheet stacks into it.
Rows carry a _source_file column, so you always know which workbook a number came from — useful when one branch's file is the odd one out.
Query it from Excel itself, from Google Sheets, from the Query Builder or from Nova. The workbook is opened read-only and never written to.
Feature deep-dive
What Excel Folder gives you
Two very different kinds of Excel folder
- Recurring exports — the same report every week or month. One table per sheet, all workbooks stacked, twelve months of files ready to trend in a single query.
- Human-made workbooks — a folder where every file is a little different. Per-layout mode groups them by their actual column layout, so one person's improvised spreadsheet becomes its own table instead of polluting the rest. Up to 25 layouts.
-- Twelve monthly workbooks, one trend
SELECT _source_file AS workbook, SUM(amount) AS spend
FROM data_summary
GROUP BY workbook
ORDER BY workbook
What it will not guess
If a workbook is missing a sheet the connector expects, or a sheet's columns have changed shape, that workbook is held back and named in files_events rather than being force-fitted into the wrong columns. A corrupt or password-protected file is skipped during setup so the rest of the folder can still be pinned.
Shared by the whole File Set family
Every folder connector also gives you
- files_current — a live inventory: every file the connector can see right now, with its path, size and modified date.
- files_events — the audit trail: what appeared, what changed, what vanished, and anything held back, with the filename and the reason.
- directories and volumes — per-folder totals, daily growth history, and how much room is left on the drive.
- Only files that actually changed are re-read on each sync, so a folder of 50,000 files is not re-parsed because one new export landed.
Good to know
- Read-only, enforced — one statement at a time, SELECT and friends only. Your files are never written, moved or renamed.
- Nothing is uploaded — the data is cached, encrypted, on your own machine beside the agent. Only the result of a query leaves your network.
- Sensible defaults — up to 250,000 files, 16 folders deep, 512 MB per file, all adjustable. Recycle bins, .git and node_modules are always skipped.
- The SQL dialect is DuckDB — the same SQL you would write against any other connector.
Cross-source SQL
Join Excel Folder to the rest of your data
A folder of files is a set of SQL tables like any other, so one statement can join it to a database and an API at once. Each source runs only the part it can, streams the result back, and the join happens centrally — the sources never talk to each other and nothing is copied anywhere.
3 connections · 3 agents
One statement
-- nothing copied, nothing merged, nothing scheduled
SELECT c.region, COUNT(*) AS orders, SUM(i.amount_due) AS invoiced
FROM finance_xlsx.fileset.data_summary1 f
JOIN pg_crm.public.customers2 c ON c.id = f.customer_id
JOIN billing.stripe.invoices3 i ON i.customer = c.stripe_id
GROUP BY c.region
ORDER BY invoiced DESC;
The three parts are connection, schema and table — and the connection name is whatever you called it. Illustrative columns; your tables will be your tables. Read-only applies to every piece: SELECT, WITH and EXPLAIN only, with a ceiling on how much any one source may hand over for a single query. How federated queries work
Connection details
What Excel Folder needs
- Folder
- One or more roots — local disk, a network share typed as \\server\share (never a mapped drive letter; on Linux or a Mac, mounted first), or a synced OneDrive or SharePoint folder kept on the machine; every .xlsx is matched
- Tables
- One per sheet name by default — every workbook holding that sheet stacks into it, each row carrying a _source_file column naming its workbook
- Sheets
- All sheets are read unless you name the ones you want
- Per-layout mode
- For folders where every workbook is a little different, workbooks are clustered by their actual column layout and each cluster gets its own table — up to 25
- Access
- Each workbook is opened read-only and never written to
- Money columns
- A column that always holds decimals is stored as exact DECIMAL, never floating point
- Limits
- Up to 250,000 files, 16 folder levels deep, 512 MB per file — all adjustable
- Credentials
- None — there is no server; the agent reads the workbooks in place
- SQL dialect
- DuckDB — standard SQL, nothing spreadsheet-specific to learn
There is no database server in this picture. The agent reads the .xlsx files where they already live, caches the rows in an encrypted DuckDB store on the same machine, and re-reads only workbooks that actually changed — a folder of ten years of monthly reports is not re-parsed because one new file landed. Nothing is uploaded to Query Streams; the only thing that ever leaves your network is the result of a query.
Two very different folders end up on this card, and the setting that separates them is table mode. Recurring exports of the same report want the default: one table per sheet, every workbook stacked, ready to trend. A folder where each file is somebody's own spreadsheet wants per-layout mode, which groups workbooks by the columns they actually have so one improvised file becomes its own table instead of polluting the rest.
Vendor documentation: www.microsoft.com
FAQ
Questions about Excel Folder
Which tools can read Excel Folder data through Query Streams?
All of them, from one connection: Excel, Google Sheets, MCP, REST API, Airtable, Baserow, SeaTable, Smartsheet, Anvil, Power BI, scheduled alerts and reports. Connect the folder once and every surface reads the same read-only connection — there is no per-tool setup and no second copy of the data.
Do my files get uploaded to Query Streams?
No. The Network Agent reads the files in place and caches rows in an encrypted store on the same machine. The files themselves never leave your network — only the result rows of a query do, over a single outbound encrypted connection with no inbound firewall port.
Can Query Streams change, move or rename my files?
No. Files are opened strictly read-only and are never written, moved or renamed. Queries are enforced read-only at the point of execution — one statement at a time, SELECT and friends only.
What does Query Streams need to connect to Excel Folder?
A folder path the agent machine can see — no server, no credentials, no drivers to install. Folder: One or more roots — local disk, a network share typed as \\server\share (never a mapped drive letter; on Linux or a Mac, mounted first), or a synced OneDrive or SharePoint folder kept on the machine; every .xlsx is matched. Tables: One per sheet name by default — every workbook holding that sheet stacks into it, each row carrying a _source_file column naming its workbook. Sheets: All sheets are read unless you name the ones you want. Per-layout mode: For folders where every workbook is a little different, workbooks are clustered by their actual column layout and each cluster gets its own table — up to 25.
Can I join a folder of files to a database in the same query?
Yes — that is a federated query. One statement can reference Excel Folder and your other connections at once, written as connection.schema.table. Each source runs only the part it can and streams the result back; the join happens centrally, so the sources never connect to each other and nothing is copied or scheduled. Read-only applies to every piece — SELECT, WITH and EXPLAIN only — and there is a ceiling on how much any one source may hand over for a single query. Federated queries are a plan feature; the federated queries page carries the current source and size limits.
Put Excel Folder where the work happens
Install the agent, point it at your folder, and pick a destination.
Read-only Outbound only Credentials stay on the agent

