PluginBench
MCP Server
Active
MIT

io.github.oktopeak/lawmatics-mcp MCP Server

io.github.oktopeak/lawmatics-mcp

What is the io.github.oktopeak/lawmatics-mcp MCP server?

Connect Claude to Lawmatics: matters, contacts, pipelines, tasks, forms, custom fields, invoices.

How to install io.github.oktopeak/lawmatics-mcp

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • LAWMATICS_ACCESS_TOKEN
    required
    secret

    Lawmatics OAuth access token (never expires). Obtain once with `npx @oktopeak/lawmatics-mcp auth`.

  • LAWMATICS_READ_ONLY

    Set to '1' to disable all write tools (create/update/tag/submit). Read-only mode for cautious firms.

  • LAWMATICS_EXPERIMENTAL_TOOLS

    Set to '1' to enable experimental tools (set-matter-custom-fields) whose API request shape is not fully documented by Lawmatics.

  • LAWMATICS_RATE_LIMIT_PER_MIN

    Client-side request throttle per minute (default: 50, the conservative documented per-firm limit; newer docs say 150).

  • LAWMATICS_AUDIT_LOG

    Set to '0' to disable the local JSONL audit log (default path: ~/.lawmatics-mcp/audit.log).

  • LAWMATICS_AUDIT_LOG_PATH

    Override the audit log file location (default: ~/.lawmatics-mcp/audit.log). The log contains tool arguments, which can include client data.

  • LAWMATICS_CLIENT_ID

    Only needed for the one-time `auth` command: your Lawmatics developer app client ID.

  • LAWMATICS_CLIENT_SECRET
    secret

    Only needed for the one-time `auth` command: your Lawmatics developer app client secret.

  • LAWMATICS_REDIRECT_PORT

    Local port for the one-time OAuth callback (default: 5678). Must match the app's Callback URL.

  • LAWMATICS_API_BASE

    Override the Lawmatics API base URL (default: https://api.lawmatics.com/v1).

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "lawmatics-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@oktopeak/lawmatics-mcp"
      ],
      "env": {
        "LAWMATICS_ACCESS_TOKEN": "<YOUR_LAWMATICS_ACCESS_TOKEN>",
        "LAWMATICS_READ_ONLY": "<YOUR_LAWMATICS_READ_ONLY>",
        "LAWMATICS_EXPERIMENTAL_TOOLS": "<YOUR_LAWMATICS_EXPERIMENTAL_TOOLS>",
        "LAWMATICS_RATE_LIMIT_PER_MIN": "<YOUR_LAWMATICS_RATE_LIMIT_PER_MIN>",
        "LAWMATICS_AUDIT_LOG": "<YOUR_LAWMATICS_AUDIT_LOG>",
        "LAWMATICS_AUDIT_LOG_PATH": "<YOUR_LAWMATICS_AUDIT_LOG_PATH>",
        "LAWMATICS_CLIENT_ID": "<YOUR_LAWMATICS_CLIENT_ID>",
        "LAWMATICS_CLIENT_SECRET": "<YOUR_LAWMATICS_CLIENT_SECRET>",
        "LAWMATICS_REDIRECT_PORT": "<YOUR_LAWMATICS_REDIRECT_PORT>",
        "LAWMATICS_API_BASE": "<YOUR_LAWMATICS_API_BASE>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "lawmatics-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@oktopeak/lawmatics-mcp"
      ],
      "env": {
        "LAWMATICS_ACCESS_TOKEN": "<YOUR_LAWMATICS_ACCESS_TOKEN>",
        "LAWMATICS_READ_ONLY": "<YOUR_LAWMATICS_READ_ONLY>",
        "LAWMATICS_EXPERIMENTAL_TOOLS": "<YOUR_LAWMATICS_EXPERIMENTAL_TOOLS>",
        "LAWMATICS_RATE_LIMIT_PER_MIN": "<YOUR_LAWMATICS_RATE_LIMIT_PER_MIN>",
        "LAWMATICS_AUDIT_LOG": "<YOUR_LAWMATICS_AUDIT_LOG>",
        "LAWMATICS_AUDIT_LOG_PATH": "<YOUR_LAWMATICS_AUDIT_LOG_PATH>",
        "LAWMATICS_CLIENT_ID": "<YOUR_LAWMATICS_CLIENT_ID>",
        "LAWMATICS_CLIENT_SECRET": "<YOUR_LAWMATICS_CLIENT_SECRET>",
        "LAWMATICS_REDIRECT_PORT": "<YOUR_LAWMATICS_REDIRECT_PORT>",
        "LAWMATICS_API_BASE": "<YOUR_LAWMATICS_API_BASE>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "lawmatics-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@oktopeak/lawmatics-mcp"
      ],
      "env": {
        "LAWMATICS_ACCESS_TOKEN": "<YOUR_LAWMATICS_ACCESS_TOKEN>",
        "LAWMATICS_READ_ONLY": "<YOUR_LAWMATICS_READ_ONLY>",
        "LAWMATICS_EXPERIMENTAL_TOOLS": "<YOUR_LAWMATICS_EXPERIMENTAL_TOOLS>",
        "LAWMATICS_RATE_LIMIT_PER_MIN": "<YOUR_LAWMATICS_RATE_LIMIT_PER_MIN>",
        "LAWMATICS_AUDIT_LOG": "<YOUR_LAWMATICS_AUDIT_LOG>",
        "LAWMATICS_AUDIT_LOG_PATH": "<YOUR_LAWMATICS_AUDIT_LOG_PATH>",
        "LAWMATICS_CLIENT_ID": "<YOUR_LAWMATICS_CLIENT_ID>",
        "LAWMATICS_CLIENT_SECRET": "<YOUR_LAWMATICS_CLIENT_SECRET>",
        "LAWMATICS_REDIRECT_PORT": "<YOUR_LAWMATICS_REDIRECT_PORT>",
        "LAWMATICS_API_BASE": "<YOUR_LAWMATICS_API_BASE>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "lawmatics-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@oktopeak/lawmatics-mcp"
      ],
      "env": {
        "LAWMATICS_ACCESS_TOKEN": "<YOUR_LAWMATICS_ACCESS_TOKEN>",
        "LAWMATICS_READ_ONLY": "<YOUR_LAWMATICS_READ_ONLY>",
        "LAWMATICS_EXPERIMENTAL_TOOLS": "<YOUR_LAWMATICS_EXPERIMENTAL_TOOLS>",
        "LAWMATICS_RATE_LIMIT_PER_MIN": "<YOUR_LAWMATICS_RATE_LIMIT_PER_MIN>",
        "LAWMATICS_AUDIT_LOG": "<YOUR_LAWMATICS_AUDIT_LOG>",
        "LAWMATICS_AUDIT_LOG_PATH": "<YOUR_LAWMATICS_AUDIT_LOG_PATH>",
        "LAWMATICS_CLIENT_ID": "<YOUR_LAWMATICS_CLIENT_ID>",
        "LAWMATICS_CLIENT_SECRET": "<YOUR_LAWMATICS_CLIENT_SECRET>",
        "LAWMATICS_REDIRECT_PORT": "<YOUR_LAWMATICS_REDIRECT_PORT>",
        "LAWMATICS_API_BASE": "<YOUR_LAWMATICS_API_BASE>"
      }
    }
  }
}
Claude Code
claude mcp add lawmatics-mcp --env LAWMATICS_ACCESS_TOKEN=<YOUR_LAWMATICS_ACCESS_TOKEN> --env LAWMATICS_READ_ONLY=<YOUR_LAWMATICS_READ_ONLY> --env LAWMATICS_EXPERIMENTAL_TOOLS=<YOUR_LAWMATICS_EXPERIMENTAL_TOOLS> --env LAWMATICS_RATE_LIMIT_PER_MIN=<YOUR_LAWMATICS_RATE_LIMIT_PER_MIN> --env LAWMATICS_AUDIT_LOG=<YOUR_LAWMATICS_AUDIT_LOG> --env LAWMATICS_AUDIT_LOG_PATH=<YOUR_LAWMATICS_AUDIT_LOG_PATH> --env LAWMATICS_CLIENT_ID=<YOUR_LAWMATICS_CLIENT_ID> --env LAWMATICS_CLIENT_SECRET=<YOUR_LAWMATICS_CLIENT_SECRET> --env LAWMATICS_REDIRECT_PORT=<YOUR_LAWMATICS_REDIRECT_PORT> --env LAWMATICS_API_BASE=<YOUR_LAWMATICS_API_BASE> -- npx -y @oktopeak/lawmatics-mcp

Related MCP servers

Connect Claude to Clio: 26 tools for matters, contacts, documents, tasks, billing, audit logs.

21
TypeScript
MIT
View repository →

Connect Claude to MyCase: cases, contacts, documents, tasks, calendar, calls, time, billing, staff.

3
TypeScript
MIT
View repository →

Open-source MCP server connecting Claude to Filevine practice management. Built by Oktopeak.

1
TypeScript
MIT
View repository →

IntakeQ/PracticeQ MCP connector with HIPAA §164.312(b) audit logging on every PHI read/write

0
TypeScript
View repository →