Table of Contents
← Hide Table of Contents
MIDAS MCP Server: Available Tools
Overview
The MIDAS MCP Server currently provides 51 tools that an AI assistant can use once connected. These are grouped below into read-only tools, which only ever retrieve information from MIDAS, and write tools, which can create or change data. Write tools are further split out where they can permanently delete data.
If your MIDAS MCP Server is configured in read-only mode, only the tools in the first section below will be able to complete successfully; any attempt to use a write tool will be refused. See the Installation page for how to configure this setting.
All tools, whether read-only or not, are also subject to the same user permissions and business rules that apply within MIDAS itself.
Read-only tools (26)
These tools retrieve information from MIDAS and never make any changes.
| Tool | Internal Name | Description |
|---|---|---|
| Get MIDAS Setting | get_ | Retrieve a MIDAS system setting value by name. Special read-only values: version, build_ |
| Check Venue Availability | get_ | Check whether a MIDAS venue is available for booking during a specified time window. Returns available:true if the slot is free, or available:false with a reason string if not. Reason values include "Unavailable" (booking clash), or descriptive messages such as "This will exceed your maximum occupancy level", "Outside operating hours", "Venue unavailable from [date]", or "Unavailable - blocked by [venue name]". |
| Get Booking Type Details | get_ | Returns details of a specific booking type including its color, discount rate, and tentative booking settings. Accepts booking type name or numeric ID. |
| List All Booking Types | get_ | Returns all currently defined booking types and their corresponding internal IDs. |
| Get Email/Notification Template | get_ | Returns the contents of a MIDAS email or notification template by name. Use template name "intro" to retrieve the MIDAS welcome/intro message. Returns content and, where applicable, an additional field. |
| Get Currently Logged-In Users | get_ | Returns a list of users currently logged in to MIDAS, including their name, number of active sessions, and browser information. Returns an empty array if no users are currently logged in. |
| List Venue Groups | get_ | Returns all defined venue groups, each with its name and an array of the venue names assigned to it. |
| List All Venues | get_ | Returns all venues with their names and corresponding internal numeric IDs, in display order. |
| Get Venues in a Group | get_ | Returns the names of all venues in a specified venue group. |
| Convert Epoch Seconds to Date/Time | util_ | Converts epoch seconds to a MIDAS date/time string in YYYYMMDDHHMM format. Set format=1 to return a locale-formatted human-readable string using the MIDAS date/time format instead. |
| Convert Date/Time to Epoch Seconds | util_ | Converts a date/time string in YYYYMMDDHHMM format to epoch seconds. |
| Get Activity Log | get_ | Returns activity log entries within a date range, with optional filtering by user and action codes. Requires can_ |
| Get Booking Details | get_ | Returns full details of a single booking by numeric ID, including venue, client, dates, resources, custom fields, and change history. |
| Get Bookings by Date Range | get_ | Returns bookings within a date/time range with optional filters for venue, booking type, client ID, and status. Defaults to confirmed bookings only. |
| Find Client | get_ | Returns client details matching the supplied name, organisation, or email, including contact information, credit balance, and any custom fields. |
| Get Consumable Stock Levels | get_ | Returns the current stock levels of all consumable resources. |
| Get Invoice Details | get_ | Returns full details of an invoice by reference number, including client, line items, totals, and status history. Requires can_ |
| List Client Invoices | get_ | Returns a list of invoice reference numbers for a specified client, with optional filtering by invoice type or unsent status. Requires can_ |
| Get User Messages | get_ | Returns messages currently addressed to a specified MIDAS user. Requires can_ |
| Get User Reminders | get_ | Returns active reminders currently addressed to a specified MIDAS user. Requires can_ |
| Get Resource Details | get_ | Returns details for a named resource including its category, quantity, charge rate, tax, and the venues it is limited to. |
| Check Resource Availability | get_ | Checks whether a specified quantity of a named resource is available across a given time window. |
| Get User Account Details | get_ | Returns account details, permissions, and preferences for a MIDAS user matching the supplied name or email. |
| Get Venue Details | get_ | Returns full details for a venue including capacity, description, rates per day-of-week, operating hours, closed periods, managers, group membership, and blocking/alternative venues. |
| Get Venues Currently in Use | get_ | Returns the names of venues that have bookings overlapping a given time window. If no window is specified, defaults to venues in use right now. |
| Get User Watch Notifications | get_ | Returns active watch notifications currently set for a specified MIDAS user. Requires can_ |
Write tools (18)
These tools create or modify data in MIDAS. They require write access to be enabled on the MIDAS MCP Server, and in most cases also require the connecting MIDAS user account (where applicable) to hold the relevant permission.
| Tool | Internal Name | Description |
|---|---|---|
| Add Booking | add_ | Creates a new booking. Set status to "request" to submit as a pending booking request (requires approval), or omit for a confirmed booking. Resources are supplied as "qty1|name_ |
| Modify Booking | mod_ | Updates fields on an existing booking. Changing start, end, venue, attendees, pre, or post triggers an availability re-check. Resources are supplied as "qty1|name_ |
| Restore Deleted Booking | restore_ | Restores one or more soft-deleted bookings back to confirmed status, checking availability first. Supply a single numeric booking ID or a comma-separated list. Returns lists of successfully restored and failed IDs. Requires can_ |
| Approve Booking Request | approve_ | Approves a pending booking request, confirming it. Sends an approval email to the client unless silent=1. Requires can_ |
| Create Invoice | add_ | Creates a manual invoice for a client. Supply line items either as a JSON array via "items" ([{item, qty, rate, tax}, ...]) or as numbered parameters (item_ |
| Update Invoice | mod_ | Updates an invoice. Client can only be changed on unsent invoices. Paid/credit/refunded amounts update payment status automatically (status becomes Paid in Full when amounts equal the total). Requires can_ |
| Generate Invoice from Bookings | gen_ | Automatically generates an invoice (or invoices) from confirmed bookings, calculating charges from venue rates with booking type discounts applied. Targets a single booking by ID, or all confirmed bookings in a date range (optionally filtered by client). Returns the reference(s) of created invoices. Requires can_ |
| Update MIDAS Setting | set_ | Updates a MIDAS system setting value. Certain internal settings (version, build_ |
| Update Email/Notification Template | set_ | Updates the content of a MIDAS email or notification template. Use template name "intro" to update the welcome message. Script and style tags are stripped automatically. Requires can_ |
| Add Venue Group | add_ | Creates a new venue group. Requires can_ |
| Modify Venue Group | mod_ | Renames a venue group and/or changes its venue membership. Requires can_ |
| Add Client | add_ | Adds a new client record. Custom client fields defined in your MIDAS installation can be supplied using their field names (lowercased, spaces replaced with underscores). Requires can_ |
| Modify Client | mod_ | Updates fields on one or more matching client records. Identify the client(s) to modify with id, client, org, or email. Supply new_ |
| Add Resource | add_ | Adds a new bookable resource. Type can be "E" (equipment), "S" (service), "C" (consumable), or a category name. Requires can_ |
| Modify Resource | mod_ | Updates fields on a resource record identified by numeric ID. Supply new_ |
| Modify Venue | mod_ | Updates venue properties including name, capacity, rates, operating hours, closure periods, managers, blocking venues, and alternatives. Identify the venue with id or name. Supply new_ |
| Send Notification to User | notify_ | Sends a message or reminder notification to a MIDAS user. The notification appears in the recipient's My Messages screen and is also emailed if the user has email notifications enabled. Requires write access. |
| Email Client | email_ | Sends an email to a client. Optionally attaches an invoice or receipt from the invoicing system. When an invoice reference is supplied the body parameter is not required and the fully formatted invoice is used as the email body instead. Requires can_ |
Destructive tools (7)
These tools permanently delete or reject data in MIDAS. They require write access to be enabled on the MIDAS MCP Server. Most AI assistants will ask for explicit confirmation before calling a tool marked as destructive, but you should always take care when granting write access to an AI assistant.
| Tool | Internal Name | Description |
|---|---|---|
| Delete Booking | del_ | Soft-deletes a booking (sets status to deleted). Set force=1 to permanently remove it and delete any file attachments. Replenishes consumable resources on deletion. Requires can_ |
| Delete Bookings in Date Range | del_ | Deletes all bookings within a date/time range, with optional filters for venue, client, and booking type. Soft-deletes by default; set force=1 for permanent removal. Replenishes consumables. Requires can_ |
| Reject Booking Request | reject_ | Rejects and permanently deletes a pending booking request. Sends a rejection email to the client with an optional reason, unless silent=1. Requires can_ |
| Delete Invoice | del_ | Deletes an invoice by reference number and removes its reference from associated bookings. Will refuse deletion of finalised invoices if the MIDAS "no invoice delete" setting is enabled. Requires can_ |
| Delete Venue Group | del_ | Deletes a venue group. The venues themselves are not affected. Requires can_ |
| Delete Client | del_ | Deletes one or more client records. By default also deletes all associated bookings; set retain_ |
| Delete Resource | del_ | Deletes a resource by numeric ID and removes it from all existing booking records. Requires can_ |
Utility tools
In addition to the tools above, two small utility tools (util_from_epoch and util_to_epoch) are provided to help AI assistants convert between date/time formats. These are listed in the read-only table above, since they do not access MIDAS data.
MIDAS MCP Server: Available Tools