# Usefulapi Codat MCP server

Source: https://glimind.com/server/mcp-registry%2Fio.usefulapi%2Fcodat
Registry id: `mcp-registry/io.usefulapi/codat`
Status: auth-required (checked 2026-10-27T03:28:53.519Z)

## Verdict

Usefulapi Codat MCP server answered 100% of Glimind's liveness checks over 30 days, better than 42% of MCP servers, with 65 ms median handshake and 0 outages in 90 days. Its agent-readiness grade is A (96/100) across 28 tools, costing an agent about 6,230 tokens to load. Checked every few minutes; no tool is ever called.

## Measurements (30 days)

| Metric | Value | Better than |
|---|---|---|
| Uptime, 30 days | 100% | 42% of MCP servers |
| Median handshake latency | 65 ms | 88% of MCP servers |
| p95 handshake latency | 242 ms | — |
| Checks in 30 days | 216 | — |
| Outages, 90 days | 0 | — |
| Median recovery | — | — |
| Agent-readiness score | 96/100 (A) | 82% of MCP servers |
| Tools | 28 | — |
| Tool-list size for an agent | ~6,230 tokens | 36% of MCP servers |
| Days observed | 28 | — |

## Install

```json
{
  "mcpServers": {
    "usefulapi-codat-mcp-server": {
      "type": "http",
      "url": "https://codat.usefulapi.io/mcp"
    }
  }
}
```

Claude Code:

```sh
claude mcp add --transport http usefulapi-codat-mcp-server https://codat.usefulapi.io/mcp
```

## Tools (28)

- `codat_create_company`: MUTATES Codat data — create a new company (a container for a customer's data connections). Provide a name; optionally a description, tags, or other attributes v
- `codat_create_connection`: MUTATES Codat data — create a new data connection on a company for a given source platform. Provide the platformKey (from codat_list_integrations, e.g. "gbol" f
- `codat_get_balance_sheet`: Get a company's balance sheet, broken into periods. periodLength (months per period) and periodsToCompare are BOTH required by Codat. Codat API: GET /companies/
- `codat_get_cash_flow_statement`: Get a company's cash flow statement, broken into periods. periodLength and periodsToCompare are BOTH required by Codat. Codat API: GET /companies/{companyId}/da
- `codat_get_company`: Fetch a single company by id (name, platform, dataConnections, created/lastSync). Codat API: GET /companies/{companyId}.
- `codat_get_connection`: Fetch a single data connection by id (platformKey, status, sourceType, lastSync). Codat API: GET /companies/{companyId}/connections/{connectionId}.
- `codat_get_data_info`: Get a company's accounting metadata (base currency, supported data types, etc.). Codat API: GET /companies/{companyId}/data/info.
- `codat_get_data_status`: Get the freshness/status of each accounting data type for a company (lastSuccessfulSync, currentStatus, dataType). Use this to check whether a dataset has been 
- `codat_get_invoice`: Fetch a single AR invoice by id (full object incl. lineItems, paymentAllocations). Codat API: GET /companies/{companyId}/data/invoices/{invoiceId}.
- `codat_get_profile`: Fetch the authenticated Codat account's profile (organization name, redirect URLs, features) — a quick way to verify the API key works. Codat API: GET /profile.
- `codat_get_profit_and_loss`: Get a company's profit and loss (income statement), broken into periods. periodLength and periodsToCompare are BOTH required by Codat. Codat API: GET /companies
- `codat_list_account_transactions`: List a company's account transactions (bank/GL transactions) for a data connection. NOTE: this endpoint is CONNECTION-scoped. Codat API: GET /companies/{company
- `codat_list_accounts`: List a company's chart of accounts (id, name, nominalCode, type, status, currency, currentBalance). Codat API: GET /companies/{companyId}/data/accounts. Returns
- `codat_list_bill_payments`: List a company's bill payments (money paid out to suppliers) — id, supplierRef, date, currency, totalAmount, lines. Codat API: GET /companies/{companyId}/data/b
- `codat_list_bills`: List a company's accounts-payable bills (id, reference, supplierRef, issueDate, dueDate, currency, totalAmount, amountDue, status, lineItems). Codat API: GET /c
- `codat_list_companies`: List the companies in your Codat account. A company represents one of your customers' businesses and holds its data connections. Codat API: GET /companies. Retu
- `codat_list_connections`: List a company's data connections (each links the company to one source platform, e.g. QuickBooks, Xero). Codat API: GET /companies/{companyId}/connections. Ret
- `codat_list_credit_notes`: List a company's credit notes (id, creditNoteNumber, customerRef, issueDate, currency, totalAmount, remainingCredit, status). Codat API: GET /companies/{company
- `codat_list_customers`: List a company's customers (id, customerName, contactName, emailAddress, addresses, status, defaultCurrency). Codat API: GET /companies/{companyId}/data/custome
- `codat_list_direct_costs`: List a company's direct costs (point-of-sale purchases: card/cash spend, refunds) for a data connection. NOTE: this endpoint is CONNECTION-scoped. Codat API: GE
- `codat_list_integrations`: List the accounting/commerce/banking platforms (integrations) Codat supports, with their platformKey. Codat API: GET /integrations. Returns the paged envelope.
- `codat_list_invoices`: List a company's accounts-receivable invoices (id, invoiceNumber, customerRef, issueDate, dueDate, currency, totalAmount, amountDue, status, lineItems). Codat A
- `codat_list_journal_entries`: List a company's journal entries (id, postedOn, createdOn, journalLines with accountRef/netAmount/currency). Codat API: GET /companies/{companyId}/data/journalE
- `codat_list_payments`: List a company's payments received (money in against invoices) — id, customerRef, date, currency, totalAmount, lines/allocations. Codat API: GET /companies/{com
- `codat_list_suppliers`: List a company's suppliers/vendors (id, supplierName, contactName, emailAddress, addresses, status, defaultCurrency). Codat API: GET /companies/{companyId}/data
- `codat_refresh_all_data`: MUTATES Codat state — queue a refresh of ALL data types for a company (Codat re-pulls from the connected source platforms). Asynchronous: it enqueues pulls, it 
- `codat_refresh_data_type`: MUTATES Codat state — queue a refresh of ONE data type for a company (e.g. "invoices", "bills", "chartOfAccounts", "balanceSheet"). Asynchronous: it enqueues a 
- `codat_request`: Power-user escape hatch: GET any Codat API path not wrapped by a dedicated tool. READ-ONLY — only GET is allowed. Path starts with a slash (e.g. "/companies/{id

Measured by Glimind (https://glimind.com): MCP handshake + tool list only, no tool is ever called. CC BY 4.0.
