Codat MCP by usefulapi

MCP server for Codat — companies, connections, invoices, bills and financial statements.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
97%
Naming quality
79%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'codat_list_account_transactions' name length outside 3-30 rangein codat_list_account_transactions

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~6,001Tokens (tool definitions)
~1.5 KBTypical response size
Significant attention impact (4.69% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "codat": {
      "url": "https://codat.usefulapi.io/mcp"
    }
  }
}

Remote endpoints

https://codat.usefulapi.io/mcpstreamable-http

What it can do

Tool inventory

Tools (28)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢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.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_companies(query, orderBy, page, pageSize)

List the companies in your Codat account. A company represents one of your customers' businesses and holds its data connections. Codat API: GET /companies. Returns the paged envelope { results, pageNumber, pageSize, totalResults, _links }.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_get_company(companyId)

Fetch a single company by id (name, platform, dataConnections, created/lastSync). Codat API: GET /companies/{companyId}.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_connections(companyId, query, orderBy, page, pageSize)

List a company's data connections (each links the company to one source platform, e.g. QuickBooks, Xero). Codat API: GET /companies/{companyId}/connections. Returns the paged envelope.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_get_connection(companyId, connectionId)

Fetch a single data connection by id (platformKey, status, sourceType, lastSync). Codat API: GET /companies/{companyId}/connections/{connectionId}.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "connectionId": {
      "type": "string",
      "description": "The Codat connectionId (data connection UUID) within the company."
    }
  },
  "required": [
    "companyId",
    "connectionId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_get_data_status(companyId)

Get the freshness/status of each accounting data type for a company (lastSuccessfulSync, currentStatus, dataType). Use this to check whether a dataset has been pulled before reading it. Codat API: GET /companies/{companyId}/dataStatus.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_get_data_info(companyId)

Get a company's accounting metadata (base currency, supported data types, etc.). Codat API: GET /companies/{companyId}/data/info.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_integrations(query, orderBy, page, pageSize)

List the accounting/commerce/banking platforms (integrations) Codat supports, with their platformKey. Codat API: GET /integrations. Returns the paged envelope.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_accounts(companyId, query, orderBy, page, pageSize)

List a company's chart of accounts (id, name, nominalCode, type, status, currency, currentBalance). Codat API: GET /companies/{companyId}/data/accounts. Returns the paged envelope.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_invoices(companyId, query, orderBy, page, pageSize)

List a company's accounts-receivable invoices (id, invoiceNumber, customerRef, issueDate, dueDate, currency, totalAmount, amountDue, status, lineItems). Codat API: GET /companies/{companyId}/data/invoices. Returns the paged envelope. Tip: filter with query, e.g. "status=Submitted&&amountDue>0".

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_get_invoice(companyId, invoiceId)

Fetch a single AR invoice by id (full object incl. lineItems, paymentAllocations). Codat API: GET /companies/{companyId}/data/invoices/{invoiceId}.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "invoiceId": {
      "type": "string",
      "description": "The invoice id."
    }
  },
  "required": [
    "companyId",
    "invoiceId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_bills(companyId, query, orderBy, page, pageSize)

List a company's accounts-payable bills (id, reference, supplierRef, issueDate, dueDate, currency, totalAmount, amountDue, status, lineItems). Codat API: GET /companies/{companyId}/data/bills. Returns the paged envelope.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_bill_payments(companyId, query, orderBy, page, pageSize)

List a company's bill payments (money paid out to suppliers) — id, supplierRef, date, currency, totalAmount, lines. Codat API: GET /companies/{companyId}/data/billPayments. Returns the paged envelope.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_credit_notes(companyId, query, orderBy, page, pageSize)

List a company's credit notes (id, creditNoteNumber, customerRef, issueDate, currency, totalAmount, remainingCredit, status). Codat API: GET /companies/{companyId}/data/creditNotes. Returns the paged envelope.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_customers(companyId, query, orderBy, page, pageSize)

List a company's customers (id, customerName, contactName, emailAddress, addresses, status, defaultCurrency). Codat API: GET /companies/{companyId}/data/customers. Returns the paged envelope.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_suppliers(companyId, query, orderBy, page, pageSize)

List a company's suppliers/vendors (id, supplierName, contactName, emailAddress, addresses, status, defaultCurrency). Codat API: GET /companies/{companyId}/data/suppliers. Returns the paged envelope.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_payments(companyId, query, orderBy, page, pageSize)

List a company's payments received (money in against invoices) — id, customerRef, date, currency, totalAmount, lines/allocations. Codat API: GET /companies/{companyId}/data/payments. Returns the paged envelope.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_journal_entries(companyId, query, orderBy, page, pageSize)

List a company's journal entries (id, postedOn, createdOn, journalLines with accountRef/netAmount/currency). Codat API: GET /companies/{companyId}/data/journalEntries. Returns the paged envelope.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_get_balance_sheet(companyId, periodLength, periodsToCompare, startMonth)

Get a company's balance sheet, broken into periods. periodLength (months per period) and periodsToCompare are BOTH required by Codat. Codat API: GET /companies/{companyId}/data/financials/balanceSheet.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "periodLength": {
      "type": "integer",
      "minimum": 1,
      "maximum": 12,
      "description": "Number of months per period (1-12). Required."
    },
    "periodsToCompare": {
      "type": "integer",
      "minimum": 1,
      "maximum": 12,
      "description": "How many periods to return (1-12). Required."
    },
    "startMonth": {
      "description": "First month of the earliest period (YYYY-MM-DD); defaults to the most recent.",
      "type": "string"
    }
  },
  "required": [
    "companyId",
    "periodLength",
    "periodsToCompare"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_get_profit_and_loss(companyId, periodLength, periodsToCompare, startMonth)

Get a company's profit and loss (income statement), broken into periods. periodLength and periodsToCompare are BOTH required by Codat. Codat API: GET /companies/{companyId}/data/financials/profitAndLoss.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "periodLength": {
      "type": "integer",
      "minimum": 1,
      "maximum": 12,
      "description": "Number of months per period (1-12). Required."
    },
    "periodsToCompare": {
      "type": "integer",
      "minimum": 1,
      "maximum": 12,
      "description": "How many periods to return (1-12). Required."
    },
    "startMonth": {
      "description": "First month of the earliest period (YYYY-MM-DD); defaults to the most recent.",
      "type": "string"
    }
  },
  "required": [
    "companyId",
    "periodLength",
    "periodsToCompare"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_get_cash_flow_statement(companyId, periodLength, periodsToCompare, startMonth)

Get a company's cash flow statement, broken into periods. periodLength and periodsToCompare are BOTH required by Codat. Codat API: GET /companies/{companyId}/data/financials/cashFlowStatement.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "periodLength": {
      "type": "integer",
      "minimum": 1,
      "maximum": 12,
      "description": "Number of months per period (1-12). Required."
    },
    "periodsToCompare": {
      "type": "integer",
      "minimum": 1,
      "maximum": 12,
      "description": "How many periods to return (1-12). Required."
    },
    "startMonth": {
      "description": "First month of the earliest period (YYYY-MM-DD); defaults to the most recent.",
      "type": "string"
    }
  },
  "required": [
    "companyId",
    "periodLength",
    "periodsToCompare"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_direct_costs(companyId, connectionId, query, orderBy, page, ...)

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: GET /companies/{companyId}/connections/{connectionId}/data/directCosts. Returns the paged envelope.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "connectionId": {
      "type": "string",
      "description": "The Codat connectionId (data connection UUID) within the company."
    },
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "required": [
    "companyId",
    "connectionId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_list_account_transactions(companyId, connectionId, query, orderBy, page, ...)

List a company's account transactions (bank/GL transactions) for a data connection. NOTE: this endpoint is CONNECTION-scoped. Codat API: GET /companies/{companyId}/connections/{connectionId}/data/accountTransactions. Returns the paged envelope.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "connectionId": {
      "type": "string",
      "description": "The Codat connectionId (data connection UUID) within the company."
    },
    "query": {
      "description": "Codat query filter string, e.g. \"status=Paid\" or \"modifiedDate>2026-01-01\". See docs.codat.io/using-the-api/querying.",
      "type": "string"
    },
    "orderBy": {
      "description": "Field to order results by, e.g. \"-modifiedDate\" (leading \"-\" for descending).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Records per page (1-2000, default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 2000
    }
  },
  "required": [
    "companyId",
    "connectionId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢codat_request(path, query)

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}/data/taxRates", "/companies/{id}/reports/agedDebtor"). Codat API: GET {path}.

Input Schema

{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "description": "API path starting with a slash, e.g. \"/companies/{id}/data/items\"."
    },
    "query": {
      "description": "Optional query params object.",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    }
  },
  "required": [
    "path"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴codat_create_company(name, description, fields)

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 via `fields`. Codat API: POST /companies. Returns the created company (incl. its id).

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "A human-readable name for the company (usually your customer's business name)."
    },
    "description": {
      "description": "Optional description / notes for the company.",
      "type": "string"
    },
    "fields": {
      "description": "Additional raw Codat fields merged into the request body (escape hatch for any field not typed above).",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    }
  },
  "required": [
    "name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴codat_create_connection(companyId, platformKey, fields)

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" for QuickBooks Online sandbox). The connection is created in a PendingAuth state; the customer completes authorization via the returned linkUrl. Codat API: POST /companies/{companyId}/connections. Returns the created connection.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "platformKey": {
      "type": "string",
      "description": "The integration platformKey to connect (from codat_list_integrations)."
    },
    "fields": {
      "description": "Additional raw Codat fields merged into the request body (escape hatch for any field not typed above).",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    }
  },
  "required": [
    "companyId",
    "platformKey"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴codat_refresh_all_data(companyId)

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 does not return the data. Use codat_get_data_status to track progress. Codat API: POST /companies/{companyId}/data/all.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    }
  },
  "required": [
    "companyId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴codat_refresh_data_type(companyId, dataType)

MUTATES Codat state — queue a refresh of ONE data type for a company (e.g. "invoices", "bills", "chartOfAccounts", "balanceSheet"). Asynchronous: it enqueues a pull, it does not return the data. Codat API: POST /companies/{companyId}/data/queue/{dataType}.

Input Schema

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "description": "The Codat companyId (UUID)."
    },
    "dataType": {
      "type": "string",
      "description": "The Codat data type key to refresh, e.g. \"invoices\", \"bills\", \"customers\", \"chartOfAccounts\", \"balanceSheet\"."
    }
  },
  "required": [
    "companyId",
    "dataType"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded28 tools
verifiedversion not recorded28 tools
verifiedversion not recorded28 tools
failed observationversion not recorded—
failed observationversion not recorded—