# MPU-Manager MCP

> MPU-Manager MCP Server lets your AI client run full case management for medical and psychological assessments. Use it to programmatically list clients, schedule appointments using `create_appointment`, or pull detailed records of a patient's history through tools like `get_case` and `list_clients`. It handles the entire coordination loop for clinical teams.

## Overview
- **Category:** erp-operations
- **Price:** Free
- **Tags:** medical-assessment, case-management, appointment-scheduling, legal-orchestration, client-records

## Description

This server connects your AI agent directly to MPU Manager's case system, letting you run full client care coordination without clicking through dashboards. You can manage patient files and appointments entirely conversationally.

**System Status & Client Roster**
You gotta check the connection first. Use **`check_mpumanager_status`** to verify that your agent is properly linked to MPU Manager. To start, you'll pull a full roster of everyone registered by running **`list_clients`**, which gives you basic contact details for every client. For specific demographic data on one person, use **`get_client`**. If you need a comprehensive list of every case file that exists in the system, run **`list_cases`**.

**Managing Cases and History**
When you're starting a new patient, you initiate the record using **`create_case`**, which builds the brand-new file inside MPU. To check up on an existing client’s status, use **`get_case`**. This tool pulls all detailed metadata and current standing information for that specific case file. For tracking past care, call **`list_reports`**; this lists every historical assessment report tied to a certain case. You can also review the details of any scheduled session by calling **`get_appointment`**, supplying either its unique ID or the associated client case.

**Scheduling and Coordination**
To book an appointment, you use **`create_appointment`**. This schedules the new visit into the system calendar and logs all necessary data points. If you need to audit the clinic's schedule, run **`list_appointments`**; it generates a list of every upcoming booking. For deep client records, beyond just basic info, if you need specific details about one person, you use **`get_client`**. These tools together let your agent manage the entire clinical coordination loop.

## Tools

### check_mpumanager_status
Verifies the live API connection status between your AI agent and MPU Manager.

### create_appointment
Schedules a new appointment for a client case, logging all necessary details.

### create_case
Initiates and creates a brand new patient case file in the MPU system.

### get_appointment
Retrieves specific details for one scheduled appointment using its ID or associated client case.

### get_case
Pulls all detailed metadata and current status information for a single client case file.

### get_client
Retrieves basic demographic details and core identifying information for any client.

### list_appointments
Generates a list of all upcoming appointments, useful for auditing the clinic schedule.

### list_cases
Retrieves a comprehensive roster of every existing case file in your account.

### list_clients
Provides an exhaustive list of all registered clients and their basic contact information.

### list_reports
Lists available historical reports associated with a specific case, helping track past assessments.

## Prompt Examples

**Prompt:** 
```
Show all active cases in my account.
```

**Response:** 
```
You have 15 active cases. 3 are high-priority with upcoming appointments this week. The most recent is Case #4821 (Maria Santos). Would you like to see details or appointments?
```

**Prompt:** 
```
Schedule an appointment for case #4821 next Monday at 10am.
```

**Response:** 
```
Appointment scheduled for Case #4821, Monday May 5 at 10:00am at your default office location. Confirmation sent. Would you like to add notes?
```

**Prompt:** 
```
List all clients registered in my account.
```

**Response:** 
```
You have 42 registered clients. The most recent is João Oliveira (added 3 days ago, 2 active cases). Would you like to see details or create a new case?
```

## Capabilities

### Get Client Records
Retrieves specific details and history for any registered patient or client.

### Schedule Appointments
Books new appointments into the system calendar and confirms the booking details.

### List All Cases/Clients
Provides a searchable roster of all active or historical patient cases and clients in the database.

### Manage Case Creation
Initiates a brand new client case file within the MPU system.

### Check System Status
Verifies that the API connection between your AI agent and MPU-Manager is active and working.

## Use Cases

### The end-of-day audit.
A clinic manager needs to verify if the three high-priority patients scheduled today have their preliminary assessments logged. They ask their agent: 'Check status for Case #4821, #9002, and #775.' The agent runs `get_case` on all three IDs, summarizing which ones are missing required documents immediately.

### Handling an emergency scheduling conflict.
A client needs to reschedule their assessment from next week. Instead of calling the front desk and manually updating records, they instruct their agent: 'Change Case #123's appointment.' The agent uses `get_appointment` first, then executes `create_appointment` with the new date.

### Client background check for legal review.
A legal consultant needs to prove a client’s full assessment history. They ask the agent to pull all data: 'Get me all reports and details for Jane Smith.' The agent runs `get_client` followed by `list_reports`, delivering a complete, structured history.

### Onboarding a new patient cohort.
A medical admin has 10 patients arriving next week. Instead of manually creating 10 files, they tell the agent: 'Create 10 new cases for this group.' The agent uses `create_case` repeatedly, logging them all instantly.

## Benefits

- Stop manually checking case files. Using `list_cases` gives your agent an instant, searchable roster of every patient file, so you never lose track of a record again.
- Scheduling is immediate. Instead of logging into the portal to book a follow-up, just tell your agent to run `create_appointment`, and it gets logged right away.
- Client data retrieval is fast. Need to know who 'John Doe' is? Running `get_client` pulls all essential identifying details in one shot, skipping the multiple search forms.
- Maintain a perfect audit trail by listing appointments with `list_appointments`. You see every scheduled visit and when it was booked without clicking through calendars.
- Streamline onboarding. When you need to start care for someone new, running `create_case` handles the entire initial file setup instantly.
- Track everything at once. The combination of `get_client`, `get_case`, and `list_reports` lets your agent summarize a client's full journey—from first contact to latest assessment.

## How It Works

The bottom line is, you talk to your AI client like talking to an office coordinator; it runs the backend tasks for you.

1. Subscribe to the server and retrieve your dedicated API Key from MPU-Manager.
2. Provide the key and context (e.g., 'Schedule an appointment for Case #123') to your AI agent.
3. The agent executes the necessary tool call (`create_appointment`, `get_case`, etc.) and delivers a natural language summary of the result.

## Frequently Asked Questions

**How do I list all clients using `list_clients`?**
Running `list_clients` pulls a comprehensive roster of every client in the database. This is useful for getting an overview when you don't have specific IDs, giving you names and basic contact info.

**Can I check if my API key works with `check_mpumanager_status`?**
Yes, that tool verifies the live connection between your AI agent and MPU-Manager. Always run this first before trying to schedule or get case details so you know your setup is active.

**Does `create_appointment` automatically make a new case?**
No. You must usually use `get_client` or `list_clients` first to ensure the client exists and has an associated ID before running `create_appointment`. The tool needs context.

**What is the difference between `get_case` and `get_client`?**
`get_client` gives you core demographic data (name, contact). `get_case` provides the full assessment context—the actual case file metadata, status, and history.

**How do I use `list_reports` to pull all historical documents for a case?**
The tool pulls metadata for every associated report. You pass the client or case ID, and it returns a list of reports along with their dates and document types. Your agent then directs you on which specific file to retrieve.

**What happens if I try to use `create_appointment` for an already booked time slot?**
The tool recognizes the conflict and returns a structured error message detailing the overlapping booking. You can then adjust the date or suggest alternative times directly through your agent.

**Does `list_cases` handle very large databases, or do I need to worry about rate limits?**
The server supports pagination for listing cases. If you query more records than available in a single call, the response includes a cursor or page token so your agent can automatically fetch the next batch.

**What specific data fields do I get when I run `get_client`?**
It returns core client demographics and primary contact details. This includes unique identifiers, associated legal status flags, and a summary of their active case count.

**How do I create a new case via AI?**
Use the `create_case` tool with a client ID and description. The case is opened immediately in your MPU Manager account.

**Can I schedule appointments from my agent?**
Yes. Use `create_appointment` with case ID, date (ISO 8601), and location to schedule a new appointment instantly.

**How do I view reports for a specific case?**
Use `list_reports` with the case ID to retrieve all generated reports including type, date, and current status.