Kept up to date

Connect Claude and ChatGPT to Filetable (MCP)

Filetable is your AI finance and admin specialist: it reads every invoice, receipt, contract and bank statement you send it, scans and phone photos included, puts the amounts and dates into linked tables, files the document and matches it to the others and to your bank lines. Its MCP connector brings all of that into Claude or ChatGPT: ask in plain words what is left to pay, which contract to cancel or what a receipt says, and your assistant answers from your own figures, with your rights and nothing more. Here is why to connect it, how in each app, what the assistant can do, and five finance and admin examples, call by call.

· 14 min read
Share

In short

  • The address to paste into the assistant is https://filetable.com/api/mcp. You sign in to Filetable and approve: no token to copy.
  • When you approve, you choose read only or read and write (pre-selected when the app asks to write), and which workspaces the assistant may reach.
  • The assistant acts as you, with your rights: it goes through the same checks as the app and can never do more than you can.
  • 40 tools: find an invoice, a contract or a bank line, read a document with its lines, filter and total, correct a value, create a table and its columns, tidy the drive, run a playbook such as Record the payment.
  • An attachment reaches Filetable straight from ChatGPT, which passes it on; from Claude, through an upload link the assistant gives you, or by Claude itself once you allow filetable.com in its settings; from Claude Code, through a single-use address.
  • Pause or revoke a connection at any time in your workspace's Settings → MCP.

Good to know. Claude's and ChatGPT's menus change often. This guide describes them as of the date above; when in doubt, the maker's help page, linked under the sources, is the reference.

On this page
  1. Why connect an assistant to Filetable
  2. Before you start
  3. In Claude (web, desktop and mobile)
  4. Claude Team and Enterprise
  5. Claude Code
  6. In ChatGPT
  7. What you grant when you approve
  8. The assistant's 40 tools
  9. Sending a document to Filetable
  10. Examples, call by call
  11. What is left to pay
  12. A receipt from a phone photo
  13. A bank line matched to its invoice
  14. The contracts to cancel before year end
  15. A table for a new kind of document
  16. More requests that work
  17. Security and control
  18. What the assistant cannot do
  19. If something goes wrong
  20. Frequently asked questions
  21. Official sources

Why connect an assistant to Filetable

An AI assistant is good at understanding a question and writing an answer, but it has never seen your invoices, receipts, contracts or bank statements. Filetable has: it is the finance and admin specialist that reads every document you send it, scans and photos included, extracts the figures into linked tables, files it in the right folder and matches it to the others: an invoice to its supplier and its lines, a bank line to the invoice it pays. The connector lets your assistant work on all of that. You ask where you already work, and the answer comes from your own figures instead of a guess.

  • Answers from your figures. A total is computed by Filetable over every matching row, not added up in the model's head.
  • The document behind every value. The assistant finds a contract by its content, reads what Filetable extracted from it, and can read the document's own text to check.
  • The admin done, not just explained. Record a payment, link a bank line to its invoice, correct a value, file a document: the assistant does it with your playbooks and under the same rules as you in the app.
  • Your accountant stays your accountant. Filetable prepares and checks the data; bookkeeping, tax returns and year-end closing stay with your accounting software and your accountant, who can work from that data.
  • One conversation for several tools. The assistant can combine Filetable with your other connectors (your mail, your calendar) in the same request.
Your assistant
ClaudeChatGPTClaude Code

It understands the question and picks the tools to call.

Your approval, once
  • Read only, or read and write
  • All your workspaces, or the ones you pick
  • Paused or revoked at any time
Your Filetable workspace
  • Invoices, receipts, contracts
  • Bank lines and their matches
  • Playbooks and their steps
  • Acts as you
  • Your rights, nothing more
  • Every call checked
  • Rate limited
The connector creates no new access: it lends your rights to the assistant, within the limits you set when you approve.

Before you start

  • A Filetable account, member of at least one workspace. The connector is open in every workspace; the MCP tab of Settings lists your connections.
  • An app that accepts a remote MCP server: Claude (web, desktop, mobile), Claude Code, or ChatGPT depending on your plan (see below).
  • Two minutes. There is nothing to install and no token to copy for Claude and ChatGPT.

In Claude (web, desktop and mobile)

On the Free, Pro and Max plans you add the connector yourself. The Free plan takes one custom connector. Add it from the web or the desktop app: it is then available on mobile the next time you sign in.

  1. 1Open the connectors

    In Claude, Customize → Connectors, then + and Add custom connector.

  2. 2Name it and paste the URL

    Name: Filetable. URL: the connector's address, above. Leave the authentication settings as they are, then Add.

  3. 3Approve in Filetable

    Claude opens Filetable: sign in, choose the permission and the workspaces, then Authorize.

  4. 4Turn it on in the chat

    In a conversation, + then Connectors: switch Filetable on. Claude asks before each tool, or Always allow.

Claude Team and Enterprise

In an organization, an owner first adds the connector for everyone, in Organization settings → Connectors, with the same URL. Each member then finds it in Customize → Connectors, labelled Custom, and clicks Connect: the approval in Filetable stays personal, so each person lends only their own rights.

Claude Code

In a terminal, one command adds Filetable; the first use of /mcp opens the same approval page in your browser.

bash
claude mcp add --transport http filetable https://filetable.com/api/mcp# then, inside Claude Code:/mcp

For a script, a CI job or a client without a browser sign-in, create a personal token instead in Settings → MCP → New connection: you choose its name, expiry and workspaces, and Filetable shows the token once with the command ready to copy. Only its hash is kept; a lost token is revoked and replaced.

bash
claude mcp add --transport http filetable https://filetable.com/api/mcp \  --header "Authorization: Bearer ftmcp_…"

In ChatGPT

ChatGPT takes a custom MCP server from its settings. OpenAI renamed that part several times in 2026 (connectors, apps, developer mode, plugins), but the flow stays the same: declare a server, then approve it in Filetable.

  1. 1Open the apps

    In ChatGPT's Settings, the apps section: turn on developer mode if your plan asks for it.

  2. 2Create the server

    Create or Add MCP server: name Filetable, URL: the connector's address, authentication OAuth.

  3. 3Approve in Filetable

    ChatGPT opens Filetable: sign in, choose the permission and the workspaces, then Authorize.

  4. 4Pick it in the chat

    From a conversation's + menu, select Filetable. ChatGPT may ask you to confirm before a write.

The only moment any access is given is Filetable's approval screen. The assistant sees none of it: it receives a one-hour key, renewed while the connection lives, worth exactly what you ticked. Read only, the write tools are not even offered to it.

Find tables, files and folders
Read only
✓
Read and write
✓
Read, filter and total rows
Read only
✓
Read and write
✓
See where a row stands and its playbooks
Read only
✓
Read and write
✓
Add, change and delete rows
Read only
–
Read and write
✓
Create and change tables and columns
Read only
–
Read and write
✓
Tidy the drive, pass a playbook step
Read only
–
Read and write
✓
Read and write is pre-selected when the assistant asks to write; pick read only if you would rather start there, and widen it later in **Settings → MCP**.

You also choose the workspaces: all of them, including those you join later, or only the ones you tick. Whatever you tick, the connection never goes past your role: a read-only member of a workspace does not write there, and a table or folder closed to you is closed to the assistant too.

The assistant's 40 tools

A connected assistant sees a list of tools, each with a description telling it when to call it. You do not have to name them: ask in plain words and it picks. Here they are, grouped by what they are for.

ReadWrite (when you granted it)
Find your way
  • list_workspaces
  • get_workspace_map
  • list_tables
  • describe_table
  • list_views
  • get_guide
Read rows
  • query_table
  • aggregate_table
  • get_row
  • get_row_relation
Write rows
  • add_rows
  • update_cells
  • delete_rows
  • link_rows
  • link_file_to_row
Tables and columns
  • create_table
  • update_table
  • delete_table
  • add_column
  • add_columns
  • update_column
Drive and documents
  • search_files
  • list_folder
  • get_file
  • get_processing_status
  • get_upload_link
  • list_trash
  • upload_file
  • create_upload_url
  • create_folder
  • rename_drive_item
  • move_items
  • delete_drive_items
  • restore_from_trash
Dashboards, alerts, playbooks
  • list_spaces
  • get_space
  • list_alerts
  • list_playbooks
  • get_row_workflow
  • run_playbook
"What is in this workspace?"
The assistant calls
get_workspace_map, then describe_table on the table that matters
"Supplier invoices over CHF 5,000 this quarter"
The assistant calls
describe_table to learn the columns, then query_table with filters on Total Due and Issue Date
"How much did I spend with each supplier this year?"
The assistant calls
aggregate_table, grouped by issuer
"Show me invoice INV-2041 with all its lines"
The assistant calls
query_table to find it, get_row to read it, get_row_relation to open its lines
"The lease with Alpenlicht Immobilier SA"
The assistant calls
query_table on Recurring Contracts with a search, or search_files for the document itself
"Which bank lines are not matched to anything?"
The assistant calls
describe_table, then query_table on Bank Lines, Matching Status equals Unmatched
"Here is a receipt I just photographed, add it"
The assistant calls
In ChatGPT, upload_file with the attached file; in Claude, get_upload_link: a link where you drop it, or create_upload_url once you allowed filetable.com
"Bring back the folder I deleted this morning"
The assistant calls
list_trash, then restore_from_trash
"Record the payment of this invoice"
The assistant calls
get_row_workflow, then run_playbook with Record the payment
"What needs my attention?"
The assistant calls
list_alerts, then the same tool with one alert to see its rows
What you ask, and what the assistant calls

A few limits, on purpose: query_table returns at most 100 rows a call (so a total goes through aggregate_table, which Filetable computes over every row); get_row shows the first 3 linked rows of each relation and counts the rest, which get_row_relation opens up to 50 at a time; a connection makes at most 120 calls a minute, 40 of them writes, and an account 240 and 80 across all its connections.

Sending a document to Filetable

MCP carries no files: what an assistant sends a tool, it writes, character by character. It reads the attachment you give it, but does not hold its bytes. Three paths spare it from copying out a PDF: ChatGPT hands Filetable the attachment itself, which Filetable downloads; an assistant that runs commands and reaches the internet sends the file to a single-use address; otherwise it gives you a link where you drop it, the path that works everywhere.

A ChatGPT conversation
What works
Attach the file and ask to add it: ChatGPT passes the attachment to upload_file and Filetable downloads it from ChatGPT, up to 50 MB. If ChatGPT does not pass it, the assistant gives you an upload link.
A Claude conversation (web, desktop, mobile)
What works
Claude does not pass an attachment to a connector: it calls get_upload_link and gives you a link to Inbound, a folder or a table. Open it, drop the file, and Filetable reads it like any upload. To have Claude send it itself, allow filetable.com in claude.ai, Settings → Capabilities (on Team or Enterprise, your admin does it), then start a new conversation: Claude then uses the single-use address from its code environment.
Claude Code or a script
What works
create_upload_url gives a single-use address, valid 15 minutes (the assistant asks for a new one after that); the assistant sends the file from your disk to it with curl -T, up to 50 MB, without copying it out. upload_file stays for a small file it writes itself (a CSV, a text).
Every day, without an assistant
How a document reaches Filetable, depending on where you are

Examples, call by call

These five requests are the ones of a freelancer or a small business owner who keeps their own invoices, receipts, contracts and bank. The tables, columns and playbooks they name are the ones a new Filetable workspace is born with; in yours, the assistant reads the names you gave them.

What is left to pay

Claude, with Filetable

What do I have to pay in the next 30 days, and how much is that in all?

  1. list_tablesfinds the Invoices & Receipts table
  2. describe_tablereads its columns: Issuer, Due Date, Total Due, Payment Status
  3. query_tablePayment Status equals To Pay, Due Date within the next 30 days
  4. aggregate_tablesum of Total Due, same filters

Three invoices: Nordwind AG, CHF 4,280.50 by 14 November; Brunner Logistik, CHF 1,960.00 by 20 November; Moulin Bleu Sàrl, CHF 169.80 by 28 November. CHF 6,410.30 in all.

The assistant reads the table's shape first, because a filter names columns that exist. The payment status is not a box someone ticks: Filetable works it out from the invoice and what settles it, a payment date or a bank line. The total comes from aggregate_table: Filetable adds up every row that passes the filter, rather than the model adding up a page of results.

A receipt from a phone photo

ChatGPT, with Filetable

Here is a photo of the receipt from yesterday's business lunch. Add it and tell me what is on it.

  1. upload_filethe attached photo, passed by ChatGPT as `file`
  2. get_processing_statusread, classified into Invoices & Receipts, filed
  3. describe_tableInvoices & Receipts: its columns, the Line Items relation among them
  4. query_tablethe newest row, Issuer equals Café Lumen
  5. get_rowthe receipt: Issuer, Issue Date, Total Due, VAT, and its Line Items previewed (3 of 4)
  6. get_row_relationLine Items: all 4, with Line Title, Quantity, Total Amount

Done. Café Lumen, 28 October, CHF 84.00 including CHF 6.29 VAT at 8.1%: two set lunches (CHF 59.00), two espressos (CHF 9.60), a mineral water (CHF 6.90) and a lemon tart (CHF 8.50).

A photo or a scan is read by OCR, like a PDF: Filetable takes its text, the QR-bill's code included, then the values the table asks for, each linked to where it was read on the document. The assistant waits for the reading to finish with get_processing_status before it answers. In Claude, the same receipt arrives through the upload link the assistant gives you (see above).

A bank line matched to its invoice

Claude, with Filetable

A debit of CHF 2,150.00 went through my account yesterday. Which invoice does it pay? Link them.

  1. describe_tableBank Lines: its columns, Matching Status and the Invoices relation among them
  2. query_tableBank Lines, Matching Status equals Unmatched, Signed Amount equals -2150
  3. describe_tableInvoices & Receipts: Issuer, Total Due, Payment Status
  4. query_tableInvoices & Receipts, Payment Status equals To Pay, Total Due equals 2150
  5. get_row_workflowthe bank line, with the "Link the document" playbook: its step and its field
  6. run_playbook"Link the document": Invoices = INV-3318 from Brunner Logistik

The debit pays Brunner Logistik's invoice INV-3318 (CHF 2,150.00). Linked with your Link the document playbook: the bank line now reads Matched, and the invoice Reconciled.

When a statement comes in, as camt.053 or CSV, Filetable's matching rules link a line to the documents they find on their own. What is left reads Unmatched, and that is where the assistant comes in: it passes the playbook's step as you would in its panel, required fields are checked, and both statuses follow the data. For an invoice paid before the statement arrives, Record the payment on the invoice is enough: one step, the payment date.

The contracts to cancel before year end

ChatGPT, with Filetable

Which contracts do I have to cancel before the end of the year if I do not want them to renew?

  1. list_tablesfinds the Recurring Contracts table
  2. describe_tablereads its columns: Counterparty, Current Term End, Notice Deadline, Annualized Cost
  3. query_tableNotice Deadline before 31 December 2026, Contract Status equals Active, sorted by Notice Deadline

Two. The software subscription with Nordwind AG (CHF 2,400 a year): notice by 30 November 2026. The office lease with Alpenlicht Immobilier SA (CHF 21,600 a year), running to 31 March 2027 with three months' notice: notice by 31 December 2026.

Filetable read each contract when it arrived: the end of the term, the notice period and the amount are in its row, and the notice deadline follows from them. The values are the ones you see in the app; if someone corrected them, the assistant reads the correction.

A table for a new kind of document

Claude, with Filetable

I want to keep the warranties of my equipment: product, seller, purchase date, warranty end and price paid.

  1. list_tablesno warranties table; the Asset Register tracks the equipment, not its warranties
  2. create_tableWarranties, a document table with its description: one row per warranty certificate or proof of purchase under warranty
  3. add_columnsin one call: Product, Seller, Purchase Date, Warranty End and Purchase Price in CHF, each read from the document and described

The Warranties table is ready. Drop your certificates and purchase receipts in it: each becomes a row, and the AI fills these columns from the document, every value linked to where it was read.

The table gets a description, which classification reads to send it the right documents, and each column its own, which extraction reads to know what to look for. The columns are created together or not at all. Relations between tables, computed columns and virtual folders are set up in the app.

More requests that work

  • "Which customers are paying me late, and by how many days?"
  • "How much VAT did I pay on my purchases this quarter?"
  • "Which bank lines are not matched to anything, and which invoice could each one pay?"
  • "What needs my attention right now?"
  • "I deleted the wrong folder this morning, bring it back."
A question, a call to query_table with its filters by column name, and the answer written from the rows it returned: your figures, not an estimate.

Security and control

  • Your rights, no more. Every call goes through the same checks as a click in the app, workspace by workspace, table by table.
  • No secret to keep. Claude and ChatGPT never receive your password; Filetable keeps only the hash of the keys it issues.
  • You stay in control. In Settings → MCP, each connection shows when it was last used; pause it, change its workspaces or revoke it.
  • Careful with deletions. Deleted files and folders go to the trash and can be restored for 30 days. A deleted row does not come back, and the assistant deletes only rows it named one by one; a deleted table is gone for good, with its rows. Read only, none of this is possible.
  • A capped rate. Past 120 calls or 40 writes a minute for a connection, or 240 and 80 for an account, Filetable refuses the next calls and tells the assistant when to try again.
  • A hidden row stays hidden. A row you cannot see in the app (its document sits in a folder closed to you) does not exist for the assistant, to read or to write.

What the assistant cannot do

Some things stay in the app, on purpose, because a connection must never be able to widen its own access or commit the account:

  • Your account: password, email address, two-step verification.
  • Members, invitations, roles and permissions.
  • Billing, plans and credit purchases.
  • Creating or widening a connection, or emptying the trash for good.
  • Deleting every row of a filter in one go: each row has to be named.

If something goes wrong

The approval says there is nothing to connect
What to do
The connector is not open in any of your workspaces: contact us.
The assistant offers no write tool
What to do
The connection is read only: give it write with Edit in Settings → MCP, then reload the tools in the assistant (or reconnect it).
"Access denied" on a table
What to do
Your role does not allow it in that workspace, or the workspace is not ticked for this connection.
The assistant says it cannot send the attachment
What to do
In ChatGPT, attach the file again in the same message. Otherwise, ask for an upload link (get_upload_link) and drop the file there.
Claude says the network is blocked, or that it cannot send the file
What to do
Allow filetable.com in claude.ai, Settings → Capabilities (on Team or Enterprise, your admin does it), then start a new conversation. Or ask for an upload link.
A document stops on "quota exceeded"
What to do
The workspace is out of AI credits, rows or storage. The document waits: it does not resume by itself. Add credits or change plan in Settings → Usage, then resume it in the app (Resume processing on the file, or Restart all on the banner).
An empty answer right after an upload
What to do
The document is still being read: the assistant sees it with get_processing_status.
The connection stopped working
What to do
Paused: switch it back on in Settings → MCP (Claude or ChatGPT then asks you to approve again). Revoked or expired: connect again, or create a new token.

Frequently asked questions

Does the connector cost extra?

No, it is part of every plan. Reading and searching use no AI credits; whatever puts Filetable's AI to work (a document to read, a value to fill) uses them as it does in the app.

Do I need a token or an API key?

Not for Claude or ChatGPT: you paste the URL and approve. A personal token, created in Settings → MCP, is for scripts and clients without a browser sign-in.

Can the assistant see my colleagues' data?

Only what you can see yourself, in the workspaces you ticked. Each colleague who connects lends their own rights, not yours.

Can I connect several assistants?

Yes. Each approval creates a separate connection, with its own permission and workspaces, which you manage on its own in Settings → MCP.

Can the assistant send a file to Filetable?

Yes. In ChatGPT, the attachment goes straight to upload_file, and Filetable downloads it. In Claude, the reliable way is the upload link the assistant gives you (to Inbound, a folder or a table); once filetable.com is allowed in claude.ai's Settings → Capabilities, Claude sends the file itself. Claude Code and scripts send it to a single-use address (create_upload_url), valid 15 minutes. Everywhere, the upload link is the fallback.

What is MCP?

The Model Context Protocol, an open standard that describes how an AI assistant discovers and calls a service's tools. Filetable is a server; Claude and ChatGPT are clients.

Who do I contact if something does not work?

Write to support@filetable.com, or use the contact page. Tell us which assistant you use and what it answered.

Is there a REST API?

Not yet: a public REST API is coming soon. Meanwhile a script can call the same tools over MCP with a personal token.

Does Filetable read scans and photos?

Yes. A scanned PDF or a phone photo (JPEG, PNG, HEIF, TIFF) is read by OCR, QR codes included, then the values your table asks for are extracted from that text. Word, Excel, CSV and camt.053 files already carry their text and are read without OCR. Whatever the format, the assistant sees the extracted values and, with get_file, the text Filetable read.

Does Filetable replace my accountant or my accounting software?

No. Filetable prepares and checks the data: it reads, files, matches and totals your documents, and keeps each value linked to where it was read. Bookkeeping, tax returns and year-end closing stay with your accounting software and your accountant, who can work from Filetable's tables and exports.

Can the assistant pay an invoice?

No. Neither Filetable nor the connector moves money. The assistant can record that an invoice was paid, and link it to the bank line that shows the payment, with your playbooks.

Official sources

Every step in this guide is read from these pages, published by the protocol and by each app's maker. .

In the product

Your company grows. Your back office keeps up.

Give your team a right hand: create your workspace in minutes, invite your team and hand it your first documents. The trial is free.

Invoices
Bank statements
Contracts
Payslips
Receipts
Orders
Delivery notes
Quotes

Your cookies, your choice

We use a few cookies to run the site and, with your consent, Google Analytics (audience measurement) and Google Ads (our ads). No cookie of theirs is set until you choose. Cookie policy