FreeAgent MCP by usefulapi
Server Details
Read FreeAgent contacts, invoices, bills, banking and reports; add contacts, draft invoices, time.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- m190/usefulapi-mcp
- GitHub Stars
- 0
TDQS
Score is being calculated.
Available Tools
20 toolsfreeagent_create_contactCreate a contactDestructiveInspect
Create a client or supplier contact. Give either organisation_name, or first_name and last_name. FreeAgent: POST /v2/contacts.
| Name | Required | Description | Default |
|---|---|---|---|
| town | No | Town or city. | |
| No | Email address. | ||
| locale | No | Invoice language locale, e.g. en. | |
| mobile | No | Mobile number. | |
| region | No | Region / county. | |
| country | No | Country name, e.g. United Kingdom. | |
| address1 | No | Address line 1. | |
| address2 | No | Address line 2. | |
| address3 | No | Address line 3. | |
| postcode | No | Postcode. | |
| last_name | No | Contact last name. | |
| first_name | No | Contact first name. | |
| phone_number | No | Phone number. | |
| billing_email | No | Email address invoices are sent to. | |
| charge_sales_tax | No | Whether to charge VAT/sales tax. | |
| organisation_name | No | Organisation / company name. | |
| contact_name_on_invoices | No | Show the contact's name on invoices. | |
| default_payment_terms_in_days | No | Default payment terms for invoices to this contact. | |
| sales_tax_registration_number | No | The contact's VAT registration number. |
freeagent_create_draft_invoiceCreate a draft invoiceDestructiveInspect
Create a sales invoice in DRAFT status. Nothing is sent to the customer and nothing is posted as income until it is marked sent in FreeAgent; a draft can be edited or discarded there. FreeAgent: POST /v2/invoices.
| Name | Required | Description | Default |
|---|---|---|---|
| due_on | No | Explicit due date, if not derived from payment terms (YYYY-MM-DD). | |
| contact | Yes | The contact being invoiced's numeric id or full FreeAgent URL. | |
| project | No | The project's numeric id or full FreeAgent URL. | |
| comments | No | Comments printed on the invoice. | |
| currency | No | ISO currency code, e.g. GBP (defaults to the company currency). | |
| dated_on | Yes | Invoice date (YYYY-MM-DD). | |
| reference | No | Invoice reference/number; omit to use the next in sequence. | |
| po_reference | No | The customer's purchase-order reference. | |
| exchange_rate | No | Exchange rate for a foreign-currency invoice. | |
| invoice_items | Yes | The invoice lines. | |
| discount_percent | No | Whole-invoice discount percentage. | |
| payment_terms_in_days | Yes | Payment terms in days; 0 = due on receipt. |
freeagent_create_timeslipLog a timeslipDestructiveInspect
Log time against a project task for a user. Get the user from freeagent_get_current_user and the task from freeagent_list_tasks. Editable or removable in FreeAgent afterwards. FreeAgent: POST /v2/timeslips.
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | The task's numeric id or full FreeAgent URL. | |
| user | Yes | The user's numeric id or full FreeAgent URL. | |
| hours | Yes | Hours worked, e.g. 1.5. | |
| comment | No | What the time was spent on. | |
| project | Yes | The project's numeric id or full FreeAgent URL. | |
| dated_on | Yes | Day the work was done (YYYY-MM-DD). |
freeagent_get_balance_sheetGet the balance sheetRead-onlyInspect
Balance sheet — capital and current assets, liabilities and owners' equity — as at a date (default today). FreeAgent: GET /v2/accounting/balance_sheet.
| Name | Required | Description | Default |
|---|---|---|---|
| as_at_date | No | Balance sheet date (YYYY-MM-DD). |
freeagent_get_companyGet the companyRead-onlyInspect
Fetch the FreeAgent company these credentials belong to — name, type (e.g. UkLimitedCompany), currency, start date and VAT registration status. A cheap way to confirm the setup works. FreeAgent: GET /v2/company.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
freeagent_get_contactGet one contactRead-onlyInspect
Fetch a single contact by id or URL. FreeAgent: GET /v2/contacts/:id.
| Name | Required | Description | Default |
|---|---|---|---|
| contact | Yes | The contact's numeric id or full FreeAgent URL. |
freeagent_get_current_userGet the current userRead-onlyInspect
Fetch the FreeAgent user the token acts as, including their URL (needed for freeagent_create_timeslip) and permission level. FreeAgent: GET /v2/users/me.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
freeagent_get_invoiceGet one invoiceRead-onlyInspect
Fetch a single invoice by id or URL, with its line items, totals, due and paid values. FreeAgent: GET /v2/invoices/:id.
| Name | Required | Description | Default |
|---|---|---|---|
| invoice | Yes | The invoice's numeric id or full FreeAgent URL. |
freeagent_get_profit_and_lossGet profit and lossRead-onlyInspect
Profit and loss summary — income, expenses, operating and retained profit — for a date range or an accounting period (defaults to the current year to date). FreeAgent: GET /v2/accounting/profit_and_loss/summary.
| Name | Required | Description | Default |
|---|---|---|---|
| to_date | No | Period end (YYYY-MM-DD). | |
| from_date | No | Period start (YYYY-MM-DD). | |
| accounting_period | No | An accounting year instead of dates, e.g. 2025/26. |
freeagent_get_tax_timelineGet the tax timelineRead-onlyInspect
List upcoming tax deadlines and amounts due — VAT returns, corporation tax, self assessment and so on. FreeAgent: GET /v2/company/tax_timeline.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
freeagent_list_bank_accountsList bank accountsRead-onlyInspect
List bank, credit-card and PayPal accounts with their current balances. Use an account's URL with freeagent_list_bank_transactions. FreeAgent: GET /v2/bank_accounts.
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | Only one kind of account. |
freeagent_list_bank_transactionsList bank transactionsRead-onlyInspect
List the transactions on one bank account, e.g. view=unexplained for what still needs reconciling. FreeAgent: GET /v2/bank_transactions?bank_account=….
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, starting at 1. | |
| view | No | Filter (default all). unexplained = not yet reconciled. | |
| to_date | No | Transactions dated on or before (YYYY-MM-DD). | |
| per_page | No | Items per page, 1-100 (default 25). | |
| from_date | No | Transactions dated on or after (YYYY-MM-DD). | |
| bank_account | Yes | The bank account's numeric id or full FreeAgent URL. | |
| last_uploaded | No | Only transactions from the latest statement upload. | |
| updated_since | No | Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z. |
freeagent_list_billsList billsRead-onlyInspect
List supplier bills (purchases), optionally by date range, contact or project, filtered by status. FreeAgent: GET /v2/bills.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, starting at 1. | |
| view | No | Filter by status. | |
| contact | No | Only for this contact — its numeric id or full FreeAgent URL. | |
| project | No | Only for this project — its numeric id or full FreeAgent URL. | |
| to_date | No | Bills dated on or before (YYYY-MM-DD). | |
| per_page | No | Items per page, 1-100 (default 25). | |
| from_date | No | Bills dated on or after (YYYY-MM-DD). | |
| updated_since | No | Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z. | |
| nested_bill_items | No | Include each bill's line items. |
freeagent_list_contactsList contactsRead-onlyInspect
List contacts (clients and suppliers), with their account balance. FreeAgent: GET /v2/contacts.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, starting at 1. | |
| sort | No | Sort order; a leading - means descending. | |
| view | No | Filter (default active). open_clients = clients with unpaid invoices. | |
| per_page | No | Items per page, 1-100 (default 25). | |
| updated_since | No | Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z. |
freeagent_list_expensesList expensesRead-onlyInspect
List expense claims (out-of-pocket spending and mileage), optionally by date range or project. FreeAgent: GET /v2/expenses.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, starting at 1. | |
| view | No | recent or recurring expenses. | |
| project | No | Only for this project — its numeric id or full FreeAgent URL. | |
| to_date | No | Expenses dated on or before (YYYY-MM-DD). | |
| per_page | No | Items per page, 1-100 (default 25). | |
| from_date | No | Expenses dated on or after (YYYY-MM-DD). | |
| updated_since | No | Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z. |
freeagent_list_invoicesList invoicesRead-onlyInspect
List sales invoices, optionally for one contact or project, filtered by status. FreeAgent: GET /v2/invoices.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, starting at 1. | |
| sort | No | Sort order (default created_at); a leading - means descending. | |
| view | No | Filter: all, recent_open_or_overdue, open, overdue, open_or_overdue, draft, paid, scheduled_to_email, thank_you_emails, reminder_emails, or last_N_months (e.g. last_3_months). | |
| contact | No | Only for this contact — its numeric id or full FreeAgent URL. | |
| project | No | Only for this project — its numeric id or full FreeAgent URL. | |
| per_page | No | Items per page, 1-100 (default 25). | |
| updated_since | No | Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z. | |
| nested_invoice_items | No | Include each invoice's line items. |
freeagent_list_projectsList projectsRead-onlyInspect
List projects, optionally for one contact. FreeAgent: GET /v2/projects.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, starting at 1. | |
| sort | No | Sort order; a leading - means descending. | |
| view | No | Filter by status. | |
| nested | No | Embed the related contact instead of its URL. | |
| contact | No | Only for this contact — its numeric id or full FreeAgent URL. | |
| per_page | No | Items per page, 1-100 (default 25). |
freeagent_list_tasksList tasksRead-onlyInspect
List project tasks with their billing rates, optionally for one project. A task's URL is needed for freeagent_create_timeslip. FreeAgent: GET /v2/tasks.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, starting at 1. | |
| sort | No | Sort order (default name). | |
| view | No | Filter by status (default all). | |
| project | No | Only for this project — its numeric id or full FreeAgent URL. | |
| per_page | No | Items per page, 1-100 (default 25). | |
| updated_since | No | Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z. |
freeagent_list_timeslipsList timeslipsRead-onlyInspect
List logged time, optionally by date range, user, task or project; view=unbilled for time not yet invoiced. FreeAgent: GET /v2/timeslips.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, starting at 1. | |
| task | No | Only for this task — its numeric id or full FreeAgent URL. | |
| user | No | Only for this user — its numeric id or full FreeAgent URL. | |
| view | No | Filter (default all). | |
| nested | No | Embed related user, task and project instead of URLs. | |
| project | No | Only for this project — its numeric id or full FreeAgent URL. | |
| to_date | No | Timeslips dated on or before (YYYY-MM-DD). | |
| per_page | No | Items per page, 1-100 (default 25). | |
| from_date | No | Timeslips dated on or after (YYYY-MM-DD). | |
| updated_since | No | Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z. |
freeagent_update_contactUpdate a contactDestructiveInspect
Update fields on an existing contact; only the fields you pass change. status=Hidden hides it (reversible with Active). FreeAgent: PUT /v2/contacts/:id.
| Name | Required | Description | Default |
|---|---|---|---|
| town | No | Town or city. | |
| No | Email address. | ||
| locale | No | Invoice language locale, e.g. en. | |
| mobile | No | Mobile number. | |
| region | No | Region / county. | |
| status | No | Hide or unhide the contact. | |
| contact | Yes | The contact's numeric id or full FreeAgent URL. | |
| country | No | Country name, e.g. United Kingdom. | |
| address1 | No | Address line 1. | |
| address2 | No | Address line 2. | |
| address3 | No | Address line 3. | |
| postcode | No | Postcode. | |
| last_name | No | Contact last name. | |
| first_name | No | Contact first name. | |
| phone_number | No | Phone number. | |
| billing_email | No | Email address invoices are sent to. | |
| charge_sales_tax | No | Whether to charge VAT/sales tax. | |
| organisation_name | No | Organisation / company name. | |
| contact_name_on_invoices | No | Show the contact's name on invoices. | |
| default_payment_terms_in_days | No | Default payment terms for invoices to this contact. | |
| sales_tax_registration_number | No | The contact's VAT registration number. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
20 tool updates
- First observed
freeagent_create_contact - First observed
freeagent_create_draft_invoice - First observed
freeagent_create_timeslip - First observed
freeagent_get_balance_sheet - First observed
freeagent_get_company - First observed
freeagent_get_contact - First observed
freeagent_get_current_user - First observed
freeagent_get_invoice - First observed
freeagent_get_profit_and_loss - First observed
freeagent_get_tax_timeline - First observed
freeagent_list_bank_accounts - First observed
freeagent_list_bank_transactions - First observed
freeagent_list_bills - First observed
freeagent_list_contacts - First observed
freeagent_list_expenses - First observed
freeagent_list_invoices - First observed
freeagent_list_projects - First observed
freeagent_list_tasks - First observed
freeagent_list_timeslips - First observed
freeagent_update_contact
Related MCP Connectors
Read time entries, projects, clients, tasks and invoices; log and update tracked time.
Read teams, spaces, lists and tasks; create, update and comment on tasks and track time.
Read and write Less Annoying CRM contacts, notes, tasks, events, pipelines and groups.
Read and write Insightly contacts, organisations, leads, opportunities, tasks and notes.
Related MCP Servers
- AlicenseAqualityAmaintenanceEnables Claude to manage FreeAgent accounting tasks such as listing bank transactions, explaining and approving them with receipts, creating expenses, and logging mileage.2880 npm1MIT
- AlicenseNot gradedqualityBmaintenanceA Model Context Protocol server for the FreeAgent accounting API, enabling LLMs to manage contacts, invoices, estimates, bills, expenses, timeslips, projects, tasks, bank accounts, and more.51 npm10MIT
- AlicenseNot gradedqualityCmaintenanceMCP server for the FreeAgent accounting API, enabling LLMs to securely access and manage accounting data including contacts, invoices, bills, bank transactions, and more.5 npm1MIT
- FlicenseBqualityBmaintenanceEnables interaction with the Bokio accounting API for managing journal entries, invoices, customers, items, and more, with read-only mode by default for safety.18-
Glama MCP Gateway
Add one secure layer between your agents and this server.