Skip to main content
Glama
oktopeak

lawmatics-mcp

by oktopeak

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
LAWMATICS_API_BASENoAPI base override (default https://api.lawmatics.com/v1).
LAWMATICS_AUDIT_LOGNo0 = disable the local audit log.
LAWMATICS_CLIENT_IDNoOnly for the one-time auth command.
LAWMATICS_READ_ONLYNo1 = disable all write tools.
LAWMATICS_ACCESS_TOKENYesRequired. Your OAuth access token (never expires).
LAWMATICS_CLIENT_SECRETNoOnly for the one-time auth command.
LAWMATICS_REDIRECT_PORTNoOAuth callback port (default 5678).
LAWMATICS_AUDIT_LOG_PATHNoAudit log location (default ~/.lawmatics-mcp/audit.log).
LAWMATICS_EXPERIMENTAL_TOOLSNo1 = enable tools whose API shape Lawmatics hasn't fully documented.
LAWMATICS_RATE_LIMIT_PER_MINNoClient-side throttle. Default 50.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list-mattersA

List matters (leads/prospects/clients) with optional filter, sort, and pagination. Matter status is 'pnc' (potential new client), 'hired', or 'lost'. Useful filters: status, practice_area_id, stage_id, source_id, sub_status_id, created_at, estimated_value_cents, actual_value_cents. For pipeline reporting, combine filter_by with fields and fetch_all, then aggregate the result.

get-matterA

Get full details for a single matter by ID, including custom fields and related records (contact, stage, practice area, tasks, notes, events, invoices as {id, type} references).

find-matterA

Find a single matter by exact email, phone, or name. Returns the best match or not_found. For fuzzy or multi-result searches use list-matters with filter_with: 'ilike' and % wildcards.

create-matterA

Create a new matter (lead). By default this also creates a contact from first/last name. Pass contact_id to attach an existing contact, or match_contact_by to reuse a contact matched on email/name/phone (falls back to creating one). Pass company_id or company_name for a company matter. Tags that don't exist yet are created automatically.

update-matterA

Update a matter. Only the provided fields change. Note: the public API has no documented way to move a matter between pipeline stages — sub_status_id is the closest control.

list-contactsA

List contacts (people) with optional filter, sort, and pagination. A contact is the person; the matter (prospect) is the case/lead attached to them.

get-contactA

Get full details for a single contact by ID, including custom fields.

find-contactA

Find a single contact by exact email, phone, or name. Returns the best match or not_found. For fuzzy searches use list-contacts with filter_with: 'ilike' and % wildcards.

create-contactA

Create a new contact (person) without a matter. To create a lead with a case, use create-matter.

update-contactC

Update a contact. Only the provided fields change.

list-companiesB

List companies with optional filter, sort, and pagination.

get-companyA

Get full details for a single company by ID.

find-companyA

Find a single company by exact email, phone, or name. Returns the best match or not_found.

list-pipelinesA

List the firm's pipelines with matter counts, estimated value, and stage references. Use with list-stages to build a full pipeline board view.

list-stagesA

List all pipeline stages. Each stage references its pipeline. To count matters per stage, use list-matters with filter_by: 'stage_id'.

list-practice-areasB

List the firm's practice areas (id, name, color).

list-sourcesA

List marketing sources (where leads come from: Google, referrals, etc.). For source ROI reporting, use list-matters with filter_by: 'source_id'.

list-sub-statusesA

List matter sub-statuses. Each belongs to a top-level status: pnc (potential new client), hired, or lost. Use the IDs with create-matter / update-matter.

list-usersA

List the firm's Lawmatics users (staff). Use the IDs for task/event assignment.

get-current-userA

Get the user the access token belongs to. Also the cheapest way to verify the connection works.

list-tasksA

List tasks with optional filter, sort, and pagination. Useful filters: done (true/false), due_date (with <, >= operators), priority, matter_id, contact_id.

create-taskA

Create a task, optionally attached to a matter/contact/company and assigned to users.

update-taskB

Update a task — e.g. mark it done, change the due date, or reassign it.

list-eventsA

List events (appointments) with optional filter, sort, and pagination. For a date range, filter_by: 'start_date' with filter_with: '>=' (one filter per request; sort by start_date and paginate for windows).

create-eventA

Create an event (appointment), optionally attached to a matter or contact and with user hosts. Set send_invites: false to avoid emailing attendees.

list-notesA

List notes with optional filter, sort, and pagination. To get one matter's notes, use filter_by: 'matter_id' with the matter ID as filter_on.

create-noteA

Create a note on a matter, contact, or company.

list-activitiesA

List timeline activities (audit trail of everything that happened: notes, emails, stage moves...). The Lawmatics API REQUIRES a filter here — pass filter_by ('matter_id' or 'contact_id') and filter_on.

list-tagsC

List the firm's tags.

attach-tagsA

Attach tags to a matter, contact, company, or task. Tags that don't exist yet are created.

detach-tagsB

Detach tags from a matter, contact, company, or task.

list-custom-fieldsA

List the firm's custom field definitions (id, name, field_type, owner type, list options). Read a record's custom field VALUES by adding 'custom_fields' to the fields parameter of get-matter / get-contact / list-matters.

list-formsA

List the firm's custom forms (intake forms). Form IDs are UUIDs. Use get-form to see a form's field structure.

get-formA

Get one custom form including its field layout (field IDs, labels, types, required flags).

get-form-entriesA

List submissions for a custom form, each with label/value pairs and the matter it created.

submit-formA

Submit an entry to a custom form — creates a matter/contact and fires the form's automations, exactly like a website submission. Standard keys: first_name, last_name, email, phone. Custom fields use the key form 'custom_field_' (IDs from get-form or list-custom-fields). utm_source/utm_campaign/utm_medium/utm_term are also accepted.

list-invoicesA

List invoices (read-only in the Lawmatics API). Amounts are integer cents. Useful filters: status, due_at, matter_id. Fields include amount_cents, amount_paid_cents, outstanding_amount_cents, due_at, pdf_url.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
auth-status

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/oktopeak/lawmatics-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server