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.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

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