Connect FreeAgent to your AI agents.
Connect FreeAgent data to AI agents with Combined. Explore Users, Admin Expenses Categories, Cost of Sales Categories, source setup, MCP access and read-only business queries.
Put FreeAgent records to work in the agent you already use. Combined syncs business data into a managed data layer and exposes scoped, read-only queries through MCP.
Start with 5 million MAR without a card; usage after the trial is $5 per million MAR, with no monthly minimum. Combined offers 1,125 connectors across catalog sources and connectors generated through desktop automation.
How to connect FreeAgent to Combined
- Add your source. Open Connected Apps in Combined and select FreeAgent. Use the account or workspace that contains the records you want to analyze.
- Authorize access. Complete the connection flow and choose the required permissions. The setup reference below shows the upstream source's configurable fields; the Combined flow may handle some of them for you.
- Select datasets and sync. Choose the relevant data, set any available history filters, and wait for the first successful sync.
- Grant your agent access. Use the Set up or Access workspace to connect your agent through MCP and scope it to the sources it needs.
- Ask a first question. Discover the synced schema, check freshness, and run a bounded read-only query. Then add another source for a cross-app analysis.
The onboarding guide covers the workspace flow. Prepare these FreeAgent settings before connecting:
| Setting | When needed | Input |
|---|---|---|
| Client ID | Required by source schema | Credential entered in the connection flow |
| Refresh token | Required by source schema | Credential entered in the connection flow |
| Client secret | Required by source schema | Credential entered in the connection flow |
| Payroll Year | Optional | number |
| Updated Since | Optional | string |
Authentication choices are alternatives. Supply the settings for your selected method; enter credentials in the connection flow, rather than in an agent prompt.
FreeAgent datasets you can evaluate
This reference comes from the upstream source catalog and connector definition, version 0.1.22. Your account permissions, selected streams and successful sync determine what your agent can query. Discover the actual table and field names in Combined before writing SQL.
| Dataset | Record key | Update field | Example fields |
|---|---|---|---|
Users | url | Inspect sync configuration | created_at, current_payroll_profile, email, first_name, hidden (13 fields in reference) |
Admin Expenses Categories | url | Inspect sync configuration | description, allowable_for_tax, auto_sales_tax_rate, group_description, nominal_code (7 fields in reference) |
Cost of Sales Categories | url | Inspect sync configuration | description, allowable_for_tax, auto_sales_tax_rate, group_description, nominal_code (7 fields in reference) |
Income Categories | url | Inspect sync configuration | description, auto_sales_tax_rate, group_description, nominal_code, url |
General Categories | url | Inspect sync configuration | description, nominal_code, tax_reporting_name, url |
Balance Sheet | Inspect schema | Inspect sync configuration | accounting_period_start_date, as_at_date, capital_assets, currency, current_assets (10 fields in reference) |
Bank Accounts | url | Inspect sync configuration | type, account_number, bank_code, bank_name, bic (22 fields in reference) |
Bank Transaction Explanations | url | dated_on | type, description, attachment, bank_account, bank_transaction (33 fields in reference) |
Bank Transactions | url | created_at | description, amount, bank_account, bank_transaction_explanations, created_at (13 fields in reference) |
Bills | url | created_at | attachment, bill_items, comments, contact, contact_name (27 fields in reference) |
Company Tax Timeline | Inspect schema | Inspect sync configuration | description, amount_due, dated_on, is_personal, nature (6 fields in reference) |
Contacts | url | Inspect sync configuration | account_balance, active_projects_count, address1, address2, address3 (30 fields in reference) |
Corporation Tax Returns | url | Inspect sync configuration | amount_due, filing_due_on, filing_status, payment_due_on, payment_status (8 fields in reference) |
Credit Note Reconciliations | Inspect schema | created_at | created_at, credit_note, currency, dated_on, exchange_rate (9 fields in reference) |
Credit Notes | Inspect schema | updated_at | bank_account, client_contact_name, comments, contact, contact_name (32 fields in reference) |
Estimates | url | created_at | client_contact_name, contact, contact_name, created_at, currency (23 fields in reference) |
Expenses | url | updated_at | description, attachment, category, contact_name, created_at (40 fields in reference) |
Final Accounts Reports | url | Inspect sync configuration | filing_due_on, filing_status, period_ends_on, period_starts_on, url |
Hire Purchases | url | Inspect sync configuration | description, bill, liabilities_over_one_year_category, liabilities_under_one_year_category, url |
Invoices | url | updated_at | always_show_bic_and_iban, bank_account, client_contact_name, comments, contact (41 fields in reference) |
Journal Sets | url | Inspect sync configuration | description, dated_on, journal_entries, tag, updated_at (6 fields in reference) |
Contact Notes | Inspect schema | Inspect sync configuration | author, created_at, note, parent_url, updated_at (6 fields in reference) |
Payroll Periods | url | Inspect sync configuration | construction_industry_scheme_deduction, created_at, dated_on, employment_allowance_amount, employment_allowance_claimed (10 fields in reference) |
Company | url | Inspect sync configuration | type, address1, annual_accounting_periods, cis_enabled, company_registration_number (38 fields in reference) |
Annual Accounting Periods | Inspect schema | Inspect sync configuration | ends_on, starts_on |
Payslips | Inspect schema | Inspect sync configuration | absence_payments, additional_statutory_paternity_pay, allowance, attachments, basic_pay (42 fields in reference) |
Price List Items | url | Inspect sync configuration | description, category, code, created_at, item_type (12 fields in reference) |
Profit & Loss Summary | Inspect schema | Inspect sync configuration | expenses, from, income, less, operating_profit (9 fields in reference) |
Projects | url | updated_at | billing_period, budget, budget_units, contact, contract_po_reference (18 fields in reference) |
Tasks | url | updated_at | billing_period, billing_rate, created_at, is_billable, name (9 fields in reference) |
Timeslips | url | created_at | billed_on_invoice, comment, created_at, dated_on, hours (10 fields in reference) |
Project Notes | Inspect schema | Inspect sync configuration | author, created_at, note, parent_url, updated_at (6 fields in reference) |
A cursor tracks changes for a source stream. It is not automatically the right date for a business metric: invoice date, close date and record-update date can answer different questions.
Useful FreeAgent questions for your AI agent
Start with the datasets you have granted. These prompts turn the referenced schema into checks and summaries; the agent should verify each field against your synced data.
- Count distinct Users using url and check for duplicate keys.
- Count distinct Admin Expenses Categories using url and check for duplicate keys.
- Count distinct Cost of Sales Categories using url and check for duplicate keys.
- Count distinct Income Categories using url and check for duplicate keys.
Combine FreeAgent with another business app
Connect the second source, identify a maintained customer, account or project mapping, and aggregate each dataset before joining. Keep unmatched records visible and define the reporting window. The CRM-and-billing worked example includes runnable SQL demonstrating how a many-to-many join can double the result.
Use FreeAgent data in Claude Code, Cursor or another MCP client
Once the source is synced, the agent connects to Combined's MCP interface. Use the generated account-specific configuration from your workspace, keep credentials local, and grant only the sources needed for the task. Follow the Claude Code walkthrough or the MCP setup reference.
Use Combined to analyze my FreeAgent data.
List my granted sources, discover the datasets and describe their fields.
Look for datasets corresponding to Users, Admin Expenses Categories, Cost of Sales Categories, Income Categories, General Categories, Balance Sheet.
Check the last successful sync and report the available date coverage.
Propose three useful questions based on the fields actually available.
For the question I choose, run read-only SQL over the complete matching dataset.
Use a bounded result; include source names, time window and query receipt.
Ask for a missing join key or metric definition instead of inventing one.Download this FreeAgent guide as Markdown to use alongside your agent instructions.
Which FreeAgent connection fits the task?
Managed data for complete questions across apps
Choose Combined when you want to analyze synced records, calculate totals, or join FreeAgent with other business data without operating a separate ingestion and query stack. The agent works with your source grants and read-only SQL access.
Application tools for live operations
For a task that must change FreeAgent immediately, evaluate its available API, native agent tools or desktop workflow. Keep application-action permissions separate from read-only analytics access. A live lookup and an aggregate over synced history solve different jobs.
Desktop-generated connectors for workflows beyond the catalog
Combined's 1,125-connector coverage includes connections generated through computer use. Choose this route when the workflow depends on an application's desktop or browser interface, and establish the fields, access and refresh behavior for that connection.
Read the direct MCP versus managed data comparison and compare business-data MCP options.
Troubleshoot your FreeAgent connection
- Authorization fails: check the selected authentication method, credential validity, source permissions and target account.
- History is missing: check the source's start-date or history filter and allow the initial sync to finish before comparing totals.
- A dataset is absent: check whether it is enabled and permitted for your account, then inspect discovery and sync status.
- The agent cannot query it: confirm the source is included in the agent's grant and that its sync succeeded.
- A total looks wrong: inspect record keys, duplicate rows, time zones, currencies and join fanout before changing the prompt.
Source details reviewed September 10, 2026. FreeAgent upstream connector documentation · Versioned connector definition. See also Combined Sources and data freshness for AI agents.