# Amilia MCP

> Amilia MCP handles professional recreation and community management through natural conversation. Use your AI agent to manage everything from programs and class schedules to family accounts, registrations, and real-time attendance tracking. This connector lets you audit program data and track participant records without leaving your chat interface.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** recreation-management, registration, attendance-tracking, community-operations, activity-scheduling

## Description

Need to run reports on community operations? Connect Amilia via Vinkius to get a full view of your recreational programs right through your AI client. Instead of logging into multiple dashboards, your agent handles the heavy lifting when you ask questions in plain language. You can start by getting an overview of all available activities and classes. Need to check on participants? Your agent retrieves detailed family profiles and lists contacts associated with a single account ID. Want to know who showed up today? It pulls current rosters and attendance status for specific events, or it checks historical sign-ups for any given period. This central access point means you can pull operational insights—like which classes are the most popular—directly into your chat window.

## Tools

### list_accounts
Lists all active family accounts within your organization.

### get_account_details
Fetches a full profile for a specified household or family account.

### list_contacts
Retrieves a list of individual contacts associated with a given family account ID.

### list_programs
Lists all defined recreational programs, such as 'Summer Camp' or 'Fall Fitness'.

### get_program_details
Gets detailed metadata about an entire recreational program or category of activities.

### list_activities
Retrieves a list of available program activities, like 'Swimming' or 'Yoga'.

### list_activity_occurrences
Lists all scheduled dates and times for specific activities.

### list_registrations
Provides a list of account registrations, showing what is enrolled and when.

### get_attendance
Retrieves the roster and current check-in status for a specific event occurrence.

## Prompt Examples

**Prompt:** 
```
List all active programs in my organization.
```

**Response:** 
```
I've retrieved your programs. You have 3 active programs: 'Summer Camp 2026', 'Fall Swimming Lessons', and 'Adult Fitness'. Would you like to see the activities scheduled under the Summer Camp program?
```

**Prompt:** 
```
Show me the contacts associated with account ID 'acc_12345'.
```

**Response:** 
```
I've retrieved the contacts for the Smith Household (Account acc_12345). There are 3 contacts: John Smith (Parent), Mary Smith (Parent), and Timmy Smith (Child). Would you like to check their recent registration history?
```

**Prompt:** 
```
Get the attendance roster for occurrence ID 'occ_98765'.
```

**Response:** 
```
I've retrieved the roster for the 'Beginner Yoga' session scheduled for today at 10:00 AM. There are 15 registered participants, and currently, 12 have checked in. I've listed the names of the missing participants for you.
```

## Capabilities

### Manage Program Catalogs
List and get metadata on all recreational programs, activities, and specific class occurrences.

### Audit Family Records
Retrieve detailed profiles for household accounts, including associated family members and contacts.

### Track Enrollment History
Review current registrations or pull historical sign-up records for specific user accounts.

### Process Daily Check-ins
Get a roster and check the real-time attendance status for any scheduled event.

### List Community Members
View all connected family accounts or list specific contacts within an organization.

## Use Cases

### The Program Audit
A Recreation Director needs to know if 'Adult Fitness' is offered in the spring, but they only remember seeing it last fall. They ask their agent, and the MCP uses list_programs and get_program_details to confirm the program exists and what its typical activities are.

### The Missing Roster
A Facility Manager needs the attendance roster for a class happening right now. They simply ask, and the agent uses list_activity_occurrences first, then calls get_attendance to provide the real-time check-in status.

### The New Parent Inquiry
A Customer Support Agent receives a call about an enrollment discrepancy. They use their AI agent to list_accounts and then retrieve the specific contacts using list_contacts, immediately providing all necessary names and parent details to the caller.

### Year-Over-Year Planning
An Administrator needs to compare sign-ups this year versus last year. They use the agent to gather historical data by listing account registrations for specific groups, allowing them to spot trends instantly.

## Benefits

- Audit program structure instantly. Use the list_programs and get_program_details tools to see all offerings without navigating complex web menus.
- Resolve parent issues faster. Check family records by using get_account_details or listing contacts, giving agents immediate answers during calls.
- Manage capacity on the fly. You can use list_activity_occurrences to find schedules and then get_attendance to know how many spots are available for a specific date.
- Simplify reporting. Instead of running multiple queries, your agent pulls together registration data using list_registrations and account details in one chat command.
- See everything connected. The MCP lets you query every core function—from listing accounts to checking attendance—through simple conversation.

## How It Works

The bottom line is you talk to the MCP, and it pulls structured data from Amilia directly into your chat.

1. Subscribe to this MCP and input your Amilia Organization Identifier, Username, and Password.
2. Connect the MCP to your preferred AI client (Cursor, Claude, Windsurf, etc.).
3. Ask your agent a question in natural language—for example, 'Show me all fall programs' or 'What was attendance for Yoga last week?'

## Frequently Asked Questions

**How does the get_account_details tool work with list_accounts?**
The agent first uses list_accounts to find the correct family ID, then feeds that ID into get_account_details. This ensures it retrieves the profile data for the exact household you're looking at.

**Can I use list_contacts and list_accounts together?**
Yes. You can list all family accounts first, then narrow down by asking to list_contacts associated with a specific account ID to get individual member names.

**What is the difference between listing programs and getting program details?**
list_programs gives you the high-level titles (e.g., 'Summer Camp'). get_program_details pulls the actual metadata, like the duration or required age range, for that specific program.

**How do I check if a class happened?**
Use list_activity_occurrences to pull all scheduled dates for an activity. Then, use get_attendance with the correct occurrence ID to see who actually checked in on that day.

**How can I use list_registrations to find sign-ups within a specific timeframe?**
The tool accepts start and end dates, allowing you to filter records by date range. This lets you audit registrations for a specific season or school year without having to manually sort through years of data.

**What should I do if get_attendance fails because the occurrence ID is wrong?**
The tool will return an error indicating invalid IDs. Before calling it, run list_activity_occurrences to confirm the specific scheduling ID for that class; then use that verified ID.

**What permissions does my AI client need to run get_account_details?**
It requires read-only access specifically scoped to 'Household' data. This setup ensures your agent can pull profile details without having the ability to modify any account records.

**If I have thousands of people, how do I get all contacts using list_contacts?**
The tool uses pagination for large datasets. After the first call, you'll receive a page token in the response; pass that token back to request the next batch until it confirms there are no more results.

**How do I find my Amilia Organization Identifier?**
The Organization Identifier (formerly Rewrite URL) is the unique slug found in your Amilia store URL (e.g., `forest-explorers`). You can also use your numeric Organization ID.

**How does authentication work?**
Your agent uses your Username and Password to authenticate with the `/api/V3/authenticate` endpoint, retrieving a JWT token that is valid for 1 year to authorize subsequent requests.

**Can I get an attendance roster for a specific class?**
Yes! First, use `list_activity_occurrences` to find the specific date/time ID. Then, use `get_attendance` to retrieve the roster and check-in statuses for that occurrence.