# PracticePanther MCP

> PracticePanther MCP Server connects your AI agent directly to your entire legal practice management system. You can manage cases, log billable time against specific matters, track client contacts, generate reports on outstanding bills, and manage deadlines—all through natural language commands.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** case-management, time-tracking, legal-billing, client-portal, document-management, practice-management

## Description

Listen up. This PracticePanther MCP Server connects your AI agent directly to every part of your legal practice management system. You don't gotta jump through hoops or export data into spreadsheets just to get an answer or log a few hours. Your agent handles the whole lifecycle—cases, contacts, billing, deadlines—using nothing but natural language commands.

**Managing Cases and Matters**

The `create_practicepanther_matter` tool lets you open a brand-new legal case file instantly, giving it a name and linking it to an existing client. If you need to review what's happening with any existing case, your agent uses `get_practicepanther_matter` to pull up all the detailed history and status updates for that specific matter ID. For general overviews, the `list_practicepanther_matters` tool shows every open or closed case in the firm; you can filter this list by practice area or status. If you're hunting down a specific file, use `search_practicepanther_matters` to run deep searches across your entire case base using keywords or criteria like 'Status eq Open.' You can also modify key details of any matter with `update_practicepanther_matter`, say changing its description or status.

**Handling Contacts and Clients**

The agent manages all the people in your system. If you meet someone new—a client, a witness, or opposing counsel—`create_practicepanther_contact` adds them to your database right away. To review a person's full file, `get_practicepanther_contact` pulls up every detail for one specific contact record. For an overview of everyone you work with, the agent can use `list_practicepanther_contacts`, letting you filter by type or name. It also knows your custom fields; `list_practicepanther_custom_fields` shows you what extra data points you've configured for matters and contacts. You never lose track of interactions either: `list_practicepanther_activities` pulls a full, chronological list of every call, email, meeting, or note attached to the practice.

**Time Tracking and Tasks**

Logging time is simple with this server. The `create_practicepanther_time_entry` tool records billable or non-billable hours, making sure they're linked to a specific matter ID and added straight to the client’s ledger. If you need to check all the recorded time for auditing purposes, `list_practicepanther_time_entries` shows every entry in the system, letting you filter by date range or matter ID. For workflow management, `list_practicepanther_tasks` provides a status list of every open task assigned to matters or contacts. You'll always know what’s coming up because `list_practicepanther_calendar_events` shows all upcoming court dates, hearings, and scheduled meetings. The system also keeps track of expenses; use `list_practicepanther_expenses` to pull a report listing every expense logged against your client matters.

**Billing and Financial Audit**

When it comes to money, the agent handles everything from logging time to collecting payments. To create a billable record, you can fetch all detailed information for one specific invoice number using `get_practicepanther_bill`. For an overview of outstanding debt, `list_practicepanther_bills` lists every invoice in your system, showing who owes what and when it's due. You can track money coming in with `list_practicepanther_payments`, which shows a list of all payments received from clients. The agent gives you full visibility into the firm’s finances by connecting these billing tools to matter details.

**The Bottom Line**

This server makes your AI client a dedicated legal assistant that works directly inside PracticePanther. It handles complex workflows—from initiating a case to logging hours and generating an invoice—all through simple, conversational prompts.

## Tools

### create_practicepanther_contact
Adds a new person or organization record (Client, Witness, Opposing Party) to your contact database.

### create_practicepanther_matter
Opens and initializes a brand-new legal case file within PracticePanther.

### create_practicepanther_time_entry
Records billable or non-billable time spent on a specific matter, adding it to the client's ledger.

### get_practicepanther_bill
Fetches all detailed information for one specific invoice number.

### get_practicepanther_contact
Retrieves the full profile and details for a single client or contact record.

### get_practicepanther_matter
Gets all detailed information, status updates, and history for one specific legal matter/case.

### list_practicepanther_activities
Retrieves a chronological list of calls, emails, meetings, and notes associated with the practice.

### list_practicepanther_bills
Lists all invoices in your system, showing status, amount due, and date.

### list_practicepanther_calendar_events
Shows a list of upcoming court dates, hearings, and scheduled meetings.

### list_practicepanther_contacts
Lists all contacts in your system, allowing filtering by type or name for quick review.

### list_practicepanther_custom_fields
Displays the list of custom data fields you have configured for matters and contacts.

### list_practicepanther_expenses
Retrieves a report listing all logged expenses associated with your client matters.

### list_practicepanther_matters
Lists all open and closed cases in the firm, allowing filtering by status or practice area.

### list_practicepanther_payments
Shows a list of payments that have been received from your clients.

### list_practicepanther_tasks
Provides an overview and status list of all open tasks assigned to matters or contacts.

### list_practicepanther_time_entries
Lists every recorded time entry in the system, supporting filtering by date range or matter ID.

### search_practicepanther_matters
Searches your entire case file base using specific keywords or complex criteria like 'Status eq Open'.

### update_practicepanther_matter
Modifies key details of an existing legal matter, such as changing its status or description.

## Prompt Examples

**Prompt:** 
```
List all my open matters in PracticePanther.
```

**Response:** 
```
I found 5 open matters in your PracticePanther account: 1) Smith Divorce [Open] — John Smith, Family Law, 2) State v. Johnson [Open] — Robert Johnson, Criminal Defense, 3) Estate of Williams [Open] — Mary Williams, Estate Planning, 4) ABC Corp Contract Dispute [Open] — ABC Corporation, Business Litigation, 5) Jones Personal Injury [Open] — Sarah Jones, Personal Injury.
```

**Prompt:** 
```
Create a new time entry for 2 hours of legal research on the Smith Divorce matter.
```

**Response:** 
```
Time entry created successfully! Logged 120 minutes of 'Legal research' on matter 'Smith Divorce'. Entry is marked as billable. Running total for this matter: 8.5 hours this month.
```

**Prompt:** 
```
Show me all contacts for client John Smith.
```

**Response:** 
```
Found 3 contacts associated with John Smith: 1) John Smith (Client) — john.smith@email.com, 555-0123, 2) Jane Smith (Spouse) — jane.smith@email.com, 555-0124, 3) Robert Williams (Opposing Counsel) — robert@williamslaw.com, 555-0456.
```

## Capabilities

### Create Client Records
The AI can create new contacts, identifying them as clients, opposing parties, or witnesses in the system.

### Open New Cases
You can initiate a new legal matter by providing the case name and optionally linking it to an existing client ID.

### Log Time Against Matters
The agent records billable or non-billable time entries, specifying the duration and description for a given matter ID.

### Retrieve Specific Case Data
You can fetch detailed information on any specific legal matter or case ID to review its history and status.

### Audit Billing Records
The agent retrieves lists of outstanding bills, payments received, and general expenses associated with your practice.

### Search & List Contacts
You can list all contacts or search the database using filters like email address or type (Client/Opposing Party).

## Use Cases

### Client onboarding needs a full case file.
A new client calls. Instead of making three separate manual entries, your agent runs: 1) `create_practicepanther_contact` for the client; 2) `create_practicepanther_matter` with the appropriate case name and status; and finally, 3) logs initial tasks using `list_practicepanther_tasks`. The entire file is ready to go.

### Preparing a monthly invoice for review.
The partner needs an accurate bill. They ask the agent: 'Show me all activity and time entries for the Johnson matter in March.' The agent runs `list_practicepanther_time_entries` filtered by date/matter, then uses `list_practicepanther_expenses`, giving a complete picture for billing.

### A paralegal needs to update a case status and note.
The matter transitioned from 'Discovery' to 'Settlement'. The agent runs `update_practicepanther_matter` to change the status, then uses `list_practicepanther_activities` to log a detailed memo about the meeting that changed the status.

### Finding all related parties for litigation.
You need everyone involved in a dispute. The agent runs `get_practicepanther_matter` for the case, which pulls the GUID. Then it uses that GUID to run `list_practicepanther_contacts`, instantly giving you every connected party (client, opposing counsel, etc.).

## Benefits

- **Never forget a deadline.** Use `list_practicepanther_calendar_events` to instantly see all court dates, hearings, or meeting deadlines across your entire caseload. It keeps you proactive instead of reactive.
- **Audit billing in seconds.** Instead of jumping between tabs and exporting CSVs, ask the agent to run `list_practicepanther_bills` and then follow up with 'What is outstanding on Smith?' The system gives you immediate financial status.
- **Track time without effort.** Logging hours shouldn't be manual. Use `create_practicepanther_time_entry` by simply telling the agent, 'Log 45 minutes of document review for Matter X.' It handles the matter ID and duration automatically.
- **Find clients instantly.** If you can’t remember a GUID or client name, use `list_practicepanther_contacts` with filters to pull up all records—be it an opposing party or a referral source. This is faster than any search bar.
- **Manage the entire case lifecycle.** You don't need separate tools for creation and updates. The AI can handle opening cases (`create_practicepanther_matter`) and later updating their status using `update_practicepanther_matter` in one flow.

## How It Works

The bottom line is your AI client talks directly to PracticePanther's backend, running specific functions using tools instead of relying on a graphical user interface.

1. First, subscribe to this server and provide your PracticePanther OAuth 2 access token. This authorizes your AI client.
2. Next, tell your agent the task: for example, 'Log two hours of research time on the Smith Divorce case.'
3. The agent identifies that it needs `create_practicepanther_time_entry`, pulls the necessary matter ID, and executes the call to log the billable entry.

## Frequently Asked Questions

**How do I use create_practicepanther_time_entry?**
You must provide three things: the `matter_id`, a description, and the duration in minutes. Example: 'Create time entry for 90 minutes of drafting legal document on matter ABC-123.' The agent handles the rest.

**Can I search for matters using search_practicepanther_matters?**
Yes, you can. Instead of listing all cases and manually filtering them, you ask the agent to 'Find all open personal injury cases.' The agent runs `search_practicepanther_matters` with the necessary filter expression.

**What is the difference between list_practicepanther_contacts and get_practicepanther_contact?**
`list_practicepanther_contacts` shows you a directory of multiple people or organizations. `get_practicepanther_contact` fetches every single piece of detail for just one specific person, given their ID.

**Can I see all my billing information with list_practicepanther_bills?**
Yes. Running `list_practicepanther_bills` gives you a summary of every invoice. If you want deep details on one bill, follow up by asking for the specific bill ID to use `get_practicepanther_bill`.

**How do I update an existing case using update_practicepanther_matter?**
You provide the matter's GUID and tell the agent what needs changing (e.g., 'Change status to Settled'). The agent executes `update_practicepanther_matter` directly.

**How do I handle authentication before running tools like `list_practicepanther_matters`?**
You must use an OAuth 2 access token specific to your PracticePanther account. The agent uses this token to authorize every API call, ensuring you only manage data associated with your subscribed firm. If the token expires or lacks scope, all tool calls will fail.

**What kind of details does `list_practicepanther_activities` track?**
This tool tracks every interaction related to a matter or contact—calls, emails sent, meetings held, and notes. It provides a chronological log that helps you build a complete timeline for any case without manually reviewing separate records.

**How can I access non-standard data points using `list_practicepanther_custom_fields`?**
The tool allows your agent to list and reference custom fields defined within PracticePanther. This means you don't have to rely only on standard matter or contact attributes; the AI can pull specific, niche details configured by your firm.

**What features of PracticePanther are available through this API?**
The API provides access to: Matters/Cases (CRUD operations), Contacts/Clients (create and list), Time Entries (list and create), Bills/Invoices (list and get), Payments (list), Tasks (list), Calendar Events (list), Custom Fields (list), Activities (list), and Expenses (list). The API supports OData filtering, ordering, and pagination for flexible queries across all resources.

**How do I get a PracticePanther API access token?**
PracticePanther uses OAuth 2 authentication. Visit the PracticePanther OAuth authorization endpoint to authorize your application, then exchange the authorization code for an access token at the token endpoint. The access token is a Bearer token used in the Authorization header for all API requests. Contact PracticePanther support if you need help setting up API access for your firm.

**Can I filter and order results using OData?**
Yes! PracticePanther's API supports full OData query options. Use $filter for filtering (e.g. "Status eq 'Open'"), $orderby for ordering (e.g. "CreatedDate desc"), $top for limiting results, and $skip for pagination. These parameters are available on all list tools. For example, to find open matters ordered by creation date: use filter="Status eq 'Open'" and orderby="CreatedDate desc".

**How do I track billable time with PracticePanther API?**
Use `create_practicepanther_time_entry` to log time against any matter. Provide the matter GUID, description of work, and duration in minutes. You can specify whether the entry is billable and set a custom hourly rate. Use `list_practicepanther_time_entries` to view all time logged against a specific matter or across all matters.