FreeAgent MCP by usefulapi
io.usefulapi/freeagent · v1.3.1
Read FreeAgent contacts, invoices, bills, banking and reports; add contacts, draft invoices, time.
MCPremoteno credentialsFinanceTasks & projects
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 20 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
B 88/100
What it does: 20 tools · 16 read, 4 write (incl. delete/pay) · Finance, Tasks & projects
Test call freeagent_get_company: needs a key: HTTP 401 (1,033 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +10
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +10
- Read/write annotations: +5
- Safe test call: +8
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://freeagent.usefulapi.io/mcpTools
20 tools listed at last check
freeagent_get_companyFetch 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.freeagent_get_current_userFetch the FreeAgent user the token acts as, including their URL (needed for freeagent_create_timeslip) and permission level. FreeAgent: GET /v2/users/me.freeagent_get_tax_timelineList upcoming tax deadlines and amounts due — VAT returns, corporation tax, self assessment and so on. FreeAgent: GET /v2/company/tax_timeline.freeagent_list_contactsList contacts (clients and suppliers), with their account balance. FreeAgent: GET /v2/contacts.freeagent_get_contactFetch a single contact by id or URL. FreeAgent: GET /v2/contacts/:id.freeagent_list_invoicesList sales invoices, optionally for one contact or project, filtered by status. FreeAgent: GET /v2/invoices.freeagent_get_invoiceFetch a single invoice by id or URL, with its line items, totals, due and paid values. FreeAgent: GET /v2/invoices/:id.freeagent_list_billsList supplier bills (purchases), optionally by date range, contact or project, filtered by status. FreeAgent: GET /v2/bills.freeagent_list_expensesList expense claims (out-of-pocket spending and mileage), optionally by date range or project. FreeAgent: GET /v2/expenses.freeagent_list_bank_accountsList 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.freeagent_list_bank_transactionsList the transactions on one bank account, e.g. view=unexplained for what still needs reconciling. FreeAgent: GET /v2/bank_transactions?bank_account=….freeagent_list_projectsList projects, optionally for one contact. FreeAgent: GET /v2/projects.freeagent_list_tasksList project tasks with their billing rates, optionally for one project. A task's URL is needed for freeagent_create_timeslip. FreeAgent: GET /v2/tasks.freeagent_list_timeslipsList logged time, optionally by date range, user, task or project; view=unbilled for time not yet invoiced. FreeAgent: GET /v2/timeslips.freeagent_get_profit_and_lossProfit 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.freeagent_get_balance_sheetBalance sheet — capital and current assets, liabilities and owners' equity — as at a date (default today). FreeAgent: GET /v2/accounting/balance_sheet.freeagent_create_contactCreate a client or supplier contact. Give either organisation_name, or first_name and last_name. FreeAgent: POST /v2/contacts.freeagent_update_contactUpdate fields on an existing contact; only the fields you pass change. status=Hidden hides it (reversible with Active). FreeAgent: PUT /v2/contacts/:id.freeagent_create_draft_invoiceCreate 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.freeagent_create_timeslipLog 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.
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/io.usefulapi/freeagent)