View as .md ↗
Lawmatics

Lawmatics

MCP server · Practice Management · lawmatics.com · 40 categories · 177 tools

Lawmatics is a legal CRM, client intake, and marketing automation platform for law firms. This integration exposes contacts, companies, matters, billing (invoices, transactions, expenses, time entries), tasks, documents, events, and marketing data as governed MCP tools, scoped per member by access level.

Update Expense (lawmatics_update-expense)

Update an existing expense in Lawmatics by ID. Supports changing the description and billable flag. Lawmatics requires the matter/contact association on every update, so exactly one of matterId/contactId must be provided — pass the expense's current owner (from get-expense) to keep it unchanged, or a different one to re-target. Note: for contact-attached updates Lawmatics may report a temporary error even though the update WAS applied — verify with get-expense before retrying.

Tool Input

expenseIdstringrequired— ID of the expense to update; a numeric string(pattern: ^\d+$)
descriptionstring— New description of the expense
billableboolean— Whether the expense is billable
matterIdstring— ID of the matter to attach this expense to. Lawmatics requires the matter/contact association on every update — pass the current owner to keep it unchanged
contactIdstring— ID of the contact to attach this expense to. Lawmatics requires the matter/contact association on every update — pass the current owner to keep it unchanged

Tool Output

idstringrequired— Unique ID of the updated expense
descriptionstringnullrequired— Description of the expense; null if unset
costCentsnumbernullrequired— Expense cost in integer cents (e.g. 50000 = $500.00); null if not reported
billablebooleannullrequired— Whether the expense is billable; null if not reported
rateFlatFeebooleannullrequired— Whether the expense is billed as a flat fee; null if not reported
rateCentsnumbernullrequired— Billing rate in integer cents; null if not reported
rateCurrencystringnullrequired— ISO currency code of the billing rate (e.g. USD); null if not reported
durationnumbernullrequired— Duration value as returned by the API (expenses share Lawmatics' time-entry storage model); null if not reported
durationRoundednumbernullrequired— Duration rounded to the firm's billing increment; null if not reported
startedAtstringnullrequired— ISO 8601 timestamp the expense timer started; null if unset or omitted
completedAtstringnullrequired— ISO 8601 timestamp the expense timer completed; null if unset or omitted
createdAtstringnullrequired— When the expense was created, as an ISO 8601 timestamp; null if unknown
updatedAtstringnullrequired— When the expense was last updated, as an ISO 8601 timestamp; null if unknown
relationshipsobjectrequired— JSON:API relationship pointers to related records as {id,type} stubs. Not materialized — follow a pointer by calling that resource's own get/find tool (e.g. type 'user' -> get-user, type 'prospect' -> get-matter, type 'contact' -> get-contact, type 'invoice' -> get-invoice).
staffobjectnullrequired— Pointer to the firm user the expense is attributed to; null when unattributed
idstringrequired— ID of the referenced Lawmatics record
typestringrequired— JSON:API record class of the reference (e.g. "user", "contact", "prospect", "firm"); resolve it by calling that resource's own get/find tool — this pointer is not materialized
createdByobjectnullrequired— Pointer to the firm user who created the record; null when unattributed
idstringrequired— ID of the referenced Lawmatics record
typestringrequired— JSON:API record class of the reference (e.g. "user", "contact", "prospect", "firm"); resolve it by calling that resource's own get/find tool — this pointer is not materialized
expenseTypeobjectnullrequired— Pointer to the billing expense type categorizing this expense; null when uncategorized
idstringrequired— ID of the referenced Lawmatics record
typestringrequired— JSON:API record class of the reference (e.g. "user", "contact", "prospect", "firm"); resolve it by calling that resource's own get/find tool — this pointer is not materialized
contactableobjectnullrequired— Pointer to the record the expense is attached to; type is "prospect" for a matter or "contact" for a contact; null when unattached
idstringrequired— ID of the referenced Lawmatics record
typestringrequired— JSON:API record class of the reference (e.g. "user", "contact", "prospect", "firm"); resolve it by calling that resource's own get/find tool — this pointer is not materialized
invoiceobjectnullrequired— Pointer to the invoice this expense is billed on; null when uninvoiced
idstringrequired— ID of the referenced Lawmatics record
typestringrequired— JSON:API record class of the reference (e.g. "user", "contact", "prospect", "firm"); resolve it by calling that resource's own get/find tool — this pointer is not materialized

Related Tools