Skip to main content
Glama
nate-raubenheimer

LawPracticeZA MCP

LawPracticeZA MCP

CI

MCP (Model Context Protocol) server for LawPracticeZA, South African legal practice software. It exposes curated tools for clients, matters, WIP fees, billing, and accounting — not a 1:1 dump of every undocumented object/method.

The typed HTTP client (src/lpza/) and write tools for clients, matters, transfers, and WIP are implemented with fixture-backed tests. Live LawPracticeZA calls require credentials (LPZA_DATABASE, LPZA_LOGIN_CODE, LPZA_PASSWORD); without them, write tools return a configuration error.

Requirements

  • Node.js 20 or later

  • npm

Related MCP server: lawruler-mcp

Run

npm install
npx tsx src/index.ts

Or npm start. The server waits on stdin. Logs go to stderr; stdout is the MCP JSON-RPC channel.

Exercise it without a host:

npx @modelcontextprotocol/inspector npx tsx src/index.ts

Environment variables

Variable

Required

Description

LPZA_DATABASE

yes (for live tools)

LawPracticeZA firm database name

LPZA_LOGIN_CODE

yes (for live tools)

API login code

LPZA_PASSWORD

yes (for live tools)

API password

LPZA_BASE_URL

no

Defaults to https://lawpracticeza.com/api

Copy .env.example to .env for local values. Never commit credentials.

Cloud Agent / CI secrets

For live verification in Cursor Cloud Agents, add these as environment secrets (not committed files):

Secret name

Value

LPZA_DATABASE

MS&B Inc firm code / database name

LPZA_LOGIN_CODE

Bookkeeper API user login code

LPZA_PASSWORD

API password

Once secrets are configured, run:

npm run verify:login

The script calls access.login and access.status and prints only non-sensitive fields (database name, login name). It exits non-zero when credentials are missing or login fails.

MCP tools

Tool

API

Notes

lpza_ping

Confirms stdio process is alive; does not call LawPracticeZA

lpza_create_client

customer.insert

Requires customer_name, customer_code, department_id

lpza_create_matter

matter.insert

Creates a matter under a client

lpza_update_matter

matter.detail + matter.update

Fetch-merge-full-update (not partial)

lpza_create_transfer

matterset.createtransfer

Buyer/seller matters for conveyancing

lpza_list_unbilled

matterdraftlineitem.childlist

WIP draft fees for a matter

lpza_upsert_draft_fee

matterdraftlineitem.upsert

Caller supplies unitprice / tax / trantotal

lpza_delete_draft_fee

matterdraftlineitem.quickdelete

Requires confirm: true

Planned (not in this release): session/lookup reads, billing with confirm gates, accounting reads, and lpza_api_call.

Development

npm run typecheck
npm test
npm run verify:login   # requires LPZA_* env; see README

CI runs typecheck and tests on push and pull request to main.

HTTP client (src/lpza/)

Module

Role

client.ts

LpzaClient.call() — form-urlencoded POST to {base}/{object}/{method}/{positional…}

auth.ts

access.login, in-memory token, X-token header, access.status()

errors.ts

Typed errors for HTTP 200 / 403 / 406 / 500

types.ts

Schema types: customer, matter, matterdraftlineitem, product, etc.

Fixture tests in tests/lpza-client.test.ts and tests/write-tools.test.ts mock HTTP — no live credentials required.

Limits

  • Without env credentials, write tools refuse with a configuration error (no live session).

  • Trust/investment write operations are out of scope unless the official guide documents them. Do not invent them.

  • Do not hardcode VAT at 14% (2017 examples) or 15%. Callers supply amounts.

  • Remote / HTTP MCP hosting is out of scope for v1 (stdio only: Cursor, Claude Desktop).

License

GNU General Public License v3.0 only.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • MCP server for the PDFGate API. Generate PDFs, manage documents and handle e-signatures.

  • A MCP server built for developers enabling Git based project management with project and personal…

  • MCP server for generating rough-draft project plans from natural-language prompts.

View all MCP Connectors

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/nate-raubenheimer/lawpracticeza-mcp'

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