File System logo

Folder metadata New

Connect File System to Excel, Sheets and AI

Make any folder queryable — every file's name, size, dates and change history as rows. Answers "did the file arrive?", "what vanished?" and "what is filling the drive?" in SQL. Reads no file contents.

1connection
0inbound ports
read-onlyenforced

One connection, every surface

Where your File System data can go

Connect File System once and the same read-only connection feeds all of these — no second setup, no second copy of the data.

Supported

File System to Excel

Microsoft Excel · Excel add-in

Pull live File System results straight into a worksheet and refresh them on demand — desktop Excel, Excel Online, Microsoft 365.

How Excel works no File System walkthrough written yet
Supported

File System to Google Sheets

Sheets add-on

Run a saved File System query from the sidebar and drop the rows into the sheet. Shared collaborators can refresh it themselves.

How Google Sheets works no File System walkthrough written yet
Supported

File System MCP server

Claude, Cursor and MCP clients

Give an AI assistant read-only access to File System with the schema it needs to write correct SQL — no credentials in the chat.

How MCP works no File System walkthrough written yet
Supported

File System REST API

HTTP endpoint

Publish a File System 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 no File System walkthrough written yet
Supported

File System to Airtable

Automation platform

Sync File System rows into an Airtable base on a schedule, or fetch them inside an Airtable automation script.

How Airtable works no File System walkthrough written yet
Supported

File System to Baserow

Automation platform

Feed a Baserow table from File System over the REST endpoint — self-hosted or Baserow cloud.

How Baserow works no File System walkthrough written yet
Supported

File System to SeaTable

Automation platform

Keep a SeaTable base current with File System data without exporting a file or exposing the database.

How SeaTable works no File System walkthrough written yet
Supported

File System to Smartsheet

Automation platform

Push File System results into a Smartsheet grid so plans and reports read from the source system, not last week's export.

How Smartsheet works no File System walkthrough written yet
Supported

File System to Anvil

Anvil Works · App platform

Back an Anvil Python app with File System through the REST endpoint instead of embedding database credentials in the app.

How Anvil works no File System walkthrough written yet
Supported

File System to Power BI

Power Query M

Paste the generated Power Query M into the Power BI Advanced Editor and the report reads live File System results over HTTPS — no ODBC driver, no database port opened.

How Power BI works no File System walkthrough written yet
Supported

File System alerts and reports

Slack · Discord · Email · Webhook

Put a File System 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 no File System walkthrough written yet

How it works

5 steps, no inbound firewall change

01

Install the Network Agent on a machine that can see the folder — a file server, a NAS share, or the PC the exports land on.

02

Point it at one or more root folders. Include and exclude patterns are yours to set; recycle bins, .git and node_modules are skipped for you.

03

The agent walks the tree (16 levels deep by default) and records each file's path, size, timestamps and whether it is still there. It never opens the file.

04

Each rescan is compared to the last, so you get a change trail rather than a snapshot: appeared, modified, vanished.

05

Query it like any table, and join it to a database — for example, invoices in your ERP with no matching file in the drop-folder.

Feature deep-dive

What File System gives you

What you can query

  • files_current — one row per file present right now: path, folder, extension, size and modified date.
  • files_events — one row per change. This is how you answer "what landed last night?" or "who deleted the March folder?"
  • directories — per-folder counts and totals, plus a stated reason when a folder could not be read.
  • directory_snapshots — a daily size series per folder, so growth is a chart instead of a guess.
  • volumes — capacity and free space for every drive the roots sit on.

Turn filenames into columns

Exports are almost always named to a convention. Give the connector a filename pattern and each part becomes its own column, so INV_2026-08-24_ACME.csv can be filtered by date and customer without string surgery. Folder names can be captured the same way.

-- Everything that arrived in the last day, biggest first
SELECT   relative_path, size_bytes, modified_utc
FROM     files_current
WHERE    modified_utc > now() - INTERVAL 1 DAY
ORDER BY size_bytes DESC

What it deliberately does not do

File System is an index of the folder, not of the data. It reads no file contents. If you want the rows inside the files, use CSV, Parquet, Excel, SQLite, JSONL or Multi-record CSV Folder — they give you these same inventory tables plus the data itself.

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.
  • Requires Network Agent 2.6 or newer.

Cross-source SQL

Join File System to the rest of your data

A folder index is a set of SQL tables like any other. Your system of record knows which documents should exist and your payment processor knows which were settled — only the folder knows what actually landed, and one statement can ask all three. 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

File System Folder metadata
Microsoft SQL Server Relational engine
Stripe Payments & billing

One statement

-- issued in the ERP, arrived in the folder, settled in Stripe
SELECT    e.invoice_no, e.issued_on, f.first_seen_utc AS arrived, i.status
FROM      erp_sql.dbo.invoices2              e
LEFT JOIN drop_folder.fileset.files_current1 f ON f.invoice_no = e.invoice_no
LEFT JOIN billing.stripe.invoices3           i ON i.number = e.invoice_no
ORDER BY  e.issued_on 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. invoice_no is a filename column: give the connector the naming convention and each part of the file name becomes a column you can join on. A null arrived is a document that never showed up. 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 File System needs

Folder
One or more roots — local disk, mapped drive or UNC share; subfolders included, include and exclude patterns supported
Reads
Names, sizes, dates and paths only — the file itself is never opened, so contents are never parsed
Tables
files_current, files_events, directories, directory_snapshots and volumes — inventory, change trail, per-folder totals, a daily size series and drive capacity
Change history
Every rescan is compared against the last, so appeared, modified and vanished are rows you can query
Filename columns
Give it the naming convention and each part becomes its own column; folder names can be captured the same way
Limits
Up to 250,000 files, 16 folder levels deep — both adjustable
Credentials
None — there is no server; the agent reads the folder in place
SQL dialect
DuckDB — standard SQL, nothing folder-specific to learn
Agent
Network Agent 2.6 or newer

There is no database server in this picture, and there is no file data either — this connector indexes the folder, not what is inside it. The agent walks the tree, records each file's path, size and timestamps in an encrypted DuckDB store on the same machine, and compares every pass against the last. Nothing is uploaded to Query Streams; the only thing that ever leaves your network is the result of a query.

It is the card to reach for when the question is about the files themselves: did last night's export land, what vanished, what is filling the drive, which invoices in the ERP have no matching document in the drop-folder. If you want the rows inside the files, the CSV, Parquet, Excel, SQLite, JSONL and Multi-record CSV cards give you these same inventory tables plus the data.

FAQ

Questions about File System

Which tools can read File System 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 File System?

A folder path the agent machine can see — no server, no credentials, no drivers to install. Folder: One or more roots — local disk, mapped drive or UNC share; subfolders included, include and exclude patterns supported. Reads: Names, sizes, dates and paths only — the file itself is never opened, so contents are never parsed. Tables: files_current, files_events, directories, directory_snapshots and volumes — inventory, change trail, per-folder totals, a daily size series and drive capacity. Change history: Every rescan is compared against the last, so appeared, modified and vanished are rows you can query.

Can I join a folder of files to a database in the same query?

Yes — that is a federated query. One statement can reference File System 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 File System 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