# MCP tools for contacts, calendar and tasks

Contacts, calendar and tasks tools are read-only. An assistant can find people with `search_contacts`, see your day with `get_agenda`, list events with `list_events`, find free slots with `find_free_time` and list pending invitations with `list_invitations`. It can also read your tasks, signature and out-of-office. It cannot create events, edit contacts or answer invitations.

## When to use it

> Rohit asks, "When am I free for an hour on Thursday? Draft a mail to Priya offering two slots." The assistant calls `find_free_time`, then `search_contacts` for Priya's address, then `create_draft`.

## Contacts (Search email permission)

| Tool | Arguments | Notes |
|---|---|---|
| `search_contacts` | `query` (required), `limit` (up to 25), `scope` (all, personal or directory) | Your contacts, plus company directory colleagues when your domain allows it |
| `get_contact` | `contact_id` (required) | Emails, phones, addresses, company, job title, birthday, notes, groups |
| `list_contacts` | `group_id`, `page_size` (up to 100), `cursor` | Page through your contacts |
| `list_contact_groups` | None | Groups with member counts |
| `get_frequent_contacts` | `days` (default 90, up to 365), `limit` | People you email most, from Sent mail |

## Calendar, tasks and settings (Read email permission)

| Tool | Arguments | Notes |
|---|---|---|
| `list_calendars` | None | Your calendars and those shared with you |
| `list_events` | `start`, `end`, `calendar_id`, `limit` | Next 7 days by default, up to 62 days; repeating events listed one by one |
| `get_event` | `event_id` (required) | Description, location, organiser, attendee responses, reminder, repeat pattern |
| `get_agenda` | `day` (default today) | All-day items, events, tasks due and out-of-office |
| `find_free_time` | `duration_minutes`, `start`, `end`, `work_start`, `work_end`, `include_weekends`, `attendees` | Default 09:00 to 18:00 on weekdays, next 5 days, up to 14 days; books nothing |
| `list_invitations` | `days` (default 30), `status` (pending or all), `limit` | Invitations in your inbox and your response |
| `list_tasks` | `status` (open, completed or all), `due_before`, `limit` | Soonest due first |
| `get_signature` | None | Your signatures and whether webmail adds them automatically |
| `get_out_of_office` | None | Whether your auto-reply is on, with its message and dates |

## Good to know

- Times are in your own time zone.
- To accept or decline an invitation, create or change an event, or edit a contact, use XgenPlus webmail.

## Common questions

**Can the assistant book a meeting for me?**

No. find_free_time finds free slots but books nothing. The assistant can draft a mail offering the slots, and you create the event in webmail.

**Can it see my colleagues' calendars?**

find_free_time can include colleagues from your domain, showing busy times only, when your administrator has enabled it.


Source: https://docs.xgenplus.com/developers/mcp-tools-contacts-calendar-tasks/
