current-rms
What this MCP does
Manages Current RMS rental opportunities, products, inventory, availability, customers, activities, invoices and quotes.
Tools
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['product_id', 'starts_at', 'days_period'], 'properties': {'starts_at': {'type': 'string', 'description': 'Start date, ISO 8601, e.g. 2026-10-01.'}, 'store_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these stores.'}, 'product_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The product id.', 'exclusiveMinimum': 0}, 'days_period': {'type': 'integer', 'maximum': 366, 'minimum': 1, 'description': 'Number of days to report on.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['subject'], 'properties': {'ends_at': {'type': 'string', 'description': 'End (UTC).'}, 'subject': {'type': 'string', 'minLength': 1, 'description': "The activity's subject."}, 'type_id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Activity type list-value id.'}, 'location': {'type': 'string', 'description': 'Where it takes place.'}, 'owned_by': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'User member id of the owner.', 'exclusiveMinimum': 0}, 'priority': {'type': 'integer', 'maximum': 5, 'minimum': 1, 'description': 'Priority, 1-5.'}, 'completed': {'type': 'boolean', 'description': 'Mark as already completed.'}, 'starts_at': {'type': 'string', 'description': 'Start (UTC).'}, 'status_id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Activity status list-value id.'}, 'description': {'type': 'string', 'description': 'Details.'}, 'time_status': {'anyOf': [{'type': 'number', 'const': 0}, {'type': 'number', 'const': 1}], 'description': '0 = Free, 1 = Busy.'}, 'regarding_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The id of that record.', 'exclusiveMinimum': 0}, 'regarding_type': {'type': 'string', 'description': 'The kind of record it concerns, e.g. "Opportunity", "Member" or "Project".'}, 'participant_member_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Member ids to add as participants.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name', 'membership_type'], 'properties': {'name': {'type': 'string', 'minLength': 1, 'description': "The member's name."}, 'title': {'type': 'string', 'description': 'Job title (Contacts only).'}, 'emails': {'type': 'array', 'items': {'type': 'object', 'required': ['address'], 'properties': {'address': {'type': 'string', 'description': 'Email address.'}, 'type_id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Email type list-value id (4001 = Work in a default setup).'}}}, 'description': 'Email addresses to add.'}, 'phones': {'type': 'array', 'items': {'type': 'object', 'required': ['number'], 'properties': {'number': {'type': 'string', 'description': 'Phone number.'}, 'type_id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Phone type list-value id (6001 = Work in a default setup).'}}}, 'description': 'Phone numbers to add.'}, 'tag_list': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Tags.'}, 'department': {'type': 'string', 'description': 'Department (Contacts only).'}, 'description': {'type': 'string', 'description': 'Notes about the member.'}, 'custom_fields': {'type': 'object', 'description': 'Custom field values by field name.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'membership_type': {'enum': ['Organisation', 'Contact', 'Venue'], 'type': 'string', 'description': 'The kind of member.'}, 'parent_member_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Organisation (or Venue) member id to link this Contact to.', 'exclusiveMinimum': 0}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['store_id'], 'properties': {'state': {'anyOf': [{'type': 'number', 'const': 0}, {'type': 'number', 'const': 1}, {'type': 'number', 'const': 2}], 'description': '0 = Enquiry, 1 = Draft, 2 = Quotation. Converting to an Order is left to Current RMS.'}, 'rating': {'type': 'integer', 'maximum': 5, 'minimum': 0, 'description': 'Rating, 0-5.'}, 'ends_at': {'type': 'string', 'description': 'Overall end / collection date-time (UTC).'}, 'subject': {'type': 'string', 'description': "The opportunity's subject (title)."}, 'owned_by': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'User member id of the owner.', 'exclusiveMinimum': 0}, 'store_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The store the job is served from.', 'exclusiveMinimum': 0}, 'tag_list': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Tags.'}, 'venue_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The Venue member id.', 'exclusiveMinimum': 0}, 'member_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The customer (Organisation/Contact member) id.', 'exclusiveMinimum': 0}, 'reference': {'type': 'string', 'description': 'Customer reference, e.g. their PO number.'}, 'starts_at': {'type': 'string', 'description': 'Overall start / delivery date-time (UTC).'}, 'project_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The project this opportunity belongs to.', 'exclusiveMinimum': 0}, 'description': {'type': 'string', 'description': 'Internal description.'}, 'custom_fields': {'type': 'object', 'description': 'Custom field values by field name.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'charge_ends_at': {'type': 'string', 'description': 'Charging period end (UTC).'}, 'charge_starts_at': {'type': 'string', 'description': 'Charging period start (UTC).'}, 'billing_address_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': "The member's address id used for billing.", 'exclusiveMinimum': 0}, 'customer_returning': {'type': 'boolean', 'description': 'The customer returns the goods themselves.'}, 'customer_collecting': {'type': 'boolean', 'description': 'The customer collects the goods themselves.'}, 'external_description': {'type': 'string', 'description': 'Description shown on customer documents.'}, 'delivery_instructions': {'type': 'string', 'description': 'Delivery instructions.'}, 'collection_instructions': {'type': 'string', 'description': 'Collection instructions.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['invoice_id'], 'properties': {'include': {'type': 'array', 'items': {'enum': ['owner', 'member', 'billing_address', 'destination', 'venue', 'invoice_taxes', 'tax_class', 'invoice_items'], 'type': 'string'}, 'description': 'Associations to embed, e.g. ["invoice_items"].'}, 'invoice_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The invoice id.', 'exclusiveMinimum': 0}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['member_id'], 'properties': {'member_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The member id.', 'exclusiveMinimum': 0}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['opportunity_id'], 'properties': {'include': {'type': 'array', 'items': {'enum': ['owner', 'member', 'billing_address', 'destination', 'collection', 'venue', 'opportunity_surcharges', 'participants', 'opportunity_items', 'item_assets', 'return_item_assets'], 'type': 'string'}, 'description': 'Associations to embed, e.g. ["member", "venue", "opportunity_items"].'}, 'opportunity_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The opportunity id.', 'exclusiveMinimum': 0}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['product_id'], 'properties': {'include': {'type': 'array', 'items': {'enum': ['accessories', 'icon', 'product_group'], 'type': 'string'}, 'description': 'Associations to embed.'}, 'product_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The product id.', 'exclusiveMinimum': 0}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number, starting at 1.'}, 'sort': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+ (asc|desc)$'}, 'description': 'Sort order, e.g. ["name asc"] or ["updated_at desc", "id asc"]. Add "id asc" when paging so the order is deterministic.'}, 'search': {'type': 'string', 'description': 'Free-text search on subject, description, location or tags.'}, 'filters': {'type': 'object', 'description': 'Extra Current RMS query-engine predicates, sent as q[<key>]=<value> (arrays become q[<key>][]). Examples: {"updated_at_gt": "2026-01-01T00:00:00.000Z"}, {"number_eq": "003664"}, {"status_not_eq": 40}, {"work_email_address_eq": "abc@test.com"}, {"asset_number_eq": "ABC-1"}. Unknown predicates are silently ignored by the API.', 'propertyNames': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+$'}, 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'array', 'items': {'type': ['string', 'number']}}]}}, 'include': {'type': 'array', 'items': {'enum': ['regarding', 'owner', 'opportunity_item_asset', 'participants'], 'type': 'string'}, 'description': 'Associations to embed.'}, 'view_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Record id of a saved custom view to apply.', 'exclusiveMinimum': 0}, 'per_page': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Records per page, 1-100 (default 20).'}, 'filtermode': {'enum': ['pending', 'completed', 'all'], 'type': 'string', 'description': 'Which activities to return.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number, starting at 1.'}, 'sort': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+ (asc|desc)$'}, 'description': 'Sort order, e.g. ["name asc"] or ["updated_at desc", "id asc"]. Add "id asc" when paging so the order is deterministic.'}, 'search': {'type': 'string', 'description': 'Free-text search on subject, number, description, customer name or tags.'}, 'filters': {'type': 'object', 'description': 'Extra Current RMS query-engine predicates, sent as q[<key>]=<value> (arrays become q[<key>][]). Examples: {"updated_at_gt": "2026-01-01T00:00:00.000Z"}, {"number_eq": "003664"}, {"status_not_eq": 40}, {"work_email_address_eq": "abc@test.com"}, {"asset_number_eq": "ABC-1"}. Unknown predicates are silently ignored by the API.', 'propertyNames': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+$'}, 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'array', 'items': {'type': ['string', 'number']}}]}}, 'include': {'type': 'array', 'items': {'enum': ['owner', 'member', 'billing_address', 'destination', 'venue', 'invoice_taxes', 'tax_class', 'invoice_items'], 'type': 'string'}, 'description': 'Associations to embed.'}, 'view_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Record id of a saved custom view to apply.', 'exclusiveMinimum': 0}, 'per_page': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Records per page, 1-100 (default 20).'}, 'filtermode': {'type': 'string', 'description': 'Built-in filter: live, inactive, all, invoices, credits.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number, starting at 1.'}, 'sort': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+ (asc|desc)$'}, 'description': 'Sort order, e.g. ["name asc"] or ["updated_at desc", "id asc"]. Add "id asc" when paging so the order is deterministic.'}, 'search': {'type': 'string', 'description': 'Free-text search on name, street, work phone, work email, user email or tags.'}, 'filters': {'type': 'object', 'description': 'Extra Current RMS query-engine predicates, sent as q[<key>]=<value> (arrays become q[<key>][]). Examples: {"updated_at_gt": "2026-01-01T00:00:00.000Z"}, {"number_eq": "003664"}, {"status_not_eq": 40}, {"work_email_address_eq": "abc@test.com"}, {"asset_number_eq": "ABC-1"}. Unknown predicates are silently ignored by the API.', 'propertyNames': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+$'}, 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'array', 'items': {'type': ['string', 'number']}}]}}, 'view_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Record id of a saved custom view to apply.', 'exclusiveMinimum': 0}, 'per_page': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Records per page, 1-100 (default 20).'}, 'filtermode': {'type': 'string', 'description': 'Built-in filter, e.g. all, organisation, contact, venue, user, inactive.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number, starting at 1.'}, 'sort': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+ (asc|desc)$'}, 'description': 'Sort order, e.g. ["name asc"] or ["updated_at desc", "id asc"]. Add "id asc" when paging so the order is deterministic.'}, 'search': {'type': 'string', 'description': 'Free-text search on subject, description, number, customer name or tags.'}, 'filters': {'type': 'object', 'description': 'Extra Current RMS query-engine predicates, sent as q[<key>]=<value> (arrays become q[<key>][]). Examples: {"updated_at_gt": "2026-01-01T00:00:00.000Z"}, {"number_eq": "003664"}, {"status_not_eq": 40}, {"work_email_address_eq": "abc@test.com"}, {"asset_number_eq": "ABC-1"}. Unknown predicates are silently ignored by the API.', 'propertyNames': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+$'}, 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'array', 'items': {'type': ['string', 'number']}}]}}, 'include': {'type': 'array', 'items': {'enum': ['owner', 'member', 'billing_address', 'destination', 'collection', 'venue', 'opportunity_surcharges'], 'type': 'string'}, 'description': 'Associations to embed in each record.'}, 'view_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Record id of a saved custom view to apply.', 'exclusiveMinimum': 0}, 'per_page': {'type': 'integer', 'maximum': 25, 'minimum': 1, 'description': 'Records per page, 1-25.'}, 'filtermode': {'type': 'string', 'description': 'Built-in filter, e.g. live, all, quotations, orders, not_invoiced.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['opportunity_id'], 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number, starting at 1.'}, 'include': {'type': 'array', 'items': {'enum': ['item', 'item_assets', 'rate_definition', 'item_surcharges'], 'type': 'string'}, 'description': 'Associations to embed on each line.'}, 'per_page': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Records per page, 1-100 (default 20).'}, 'opportunity_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The opportunity id.', 'exclusiveMinimum': 0}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number, starting at 1.'}, 'sort': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+ (asc|desc)$'}, 'description': 'Sort order, e.g. ["name asc"] or ["updated_at desc", "id asc"]. Add "id asc" when paging so the order is deterministic.'}, 'search': {'type': 'string', 'description': 'Free-text search on name, product group name or tags.'}, 'ends_at': {'type': 'string', 'description': 'End of the period to compute rental availability for (UTC).'}, 'filters': {'type': 'object', 'description': 'Extra Current RMS query-engine predicates, sent as q[<key>]=<value> (arrays become q[<key>][]). Examples: {"updated_at_gt": "2026-01-01T00:00:00.000Z"}, {"number_eq": "003664"}, {"status_not_eq": 40}, {"work_email_address_eq": "abc@test.com"}, {"asset_number_eq": "ABC-1"}. Unknown predicates are silently ignored by the API.', 'propertyNames': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+$'}, 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'array', 'items': {'type': ['string', 'number']}}]}}, 'view_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Record id of a saved custom view to apply.', 'exclusiveMinimum': 0}, 'per_page': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Records per page, 1-100 (default 20).'}, 'store_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Only this store.', 'exclusiveMinimum': 0}, 'starts_at': {'type': 'string', 'description': 'Start of the period to compute rental availability for (UTC).'}, 'filtermode': {'type': 'string', 'description': 'Built-in filter, e.g. rental, sale, all.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number, starting at 1.'}, 'sort': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+ (asc|desc)$'}, 'description': 'Sort order, e.g. ["name asc"] or ["updated_at desc", "id asc"]. Add "id asc" when paging so the order is deterministic.'}, 'search': {'type': 'string', 'description': 'Free-text search on name, product group name or tags.'}, 'filters': {'type': 'object', 'description': 'Extra Current RMS query-engine predicates, sent as q[<key>]=<value> (arrays become q[<key>][]). Examples: {"updated_at_gt": "2026-01-01T00:00:00.000Z"}, {"number_eq": "003664"}, {"status_not_eq": 40}, {"work_email_address_eq": "abc@test.com"}, {"asset_number_eq": "ABC-1"}. Unknown predicates are silently ignored by the API.', 'propertyNames': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+$'}, 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'array', 'items': {'type': ['string', 'number']}}]}}, 'include': {'type': 'array', 'items': {'enum': ['accessories'], 'type': 'string'}, 'description': 'Associations to embed.'}, 'per_page': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Records per page, 1-100 (default 20).'}, 'filtermode': {'enum': ['active', 'inactive', 'all'], 'type': 'string', 'description': 'Which products to return.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number, starting at 1.'}, 'sort': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+ (asc|desc)$'}, 'description': 'Sort order, e.g. ["name asc"] or ["updated_at desc", "id asc"]. Add "id asc" when paging so the order is deterministic.'}, 'search': {'type': 'string', 'description': 'Free-text search on name, customer name or tags.'}, 'filters': {'type': 'object', 'description': 'Extra Current RMS query-engine predicates, sent as q[<key>]=<value> (arrays become q[<key>][]). Examples: {"updated_at_gt": "2026-01-01T00:00:00.000Z"}, {"number_eq": "003664"}, {"status_not_eq": 40}, {"work_email_address_eq": "abc@test.com"}, {"asset_number_eq": "ABC-1"}. Unknown predicates are silently ignored by the API.', 'propertyNames': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+$'}, 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'array', 'items': {'type': ['string', 'number']}}]}}, 'view_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Record id of a saved custom view to apply.', 'exclusiveMinimum': 0}, 'per_page': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Records per page, 1-100 (default 20).'}, 'filtermode': {'enum': ['active', 'inactive', 'all'], 'type': 'string', 'description': 'Which projects to return.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number, starting at 1.'}, 'sort': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+ (asc|desc)$'}, 'description': 'Sort order, e.g. ["name asc"] or ["updated_at desc", "id asc"]. Add "id asc" when paging so the order is deterministic.'}, 'filters': {'type': 'object', 'description': 'Extra Current RMS query-engine predicates, sent as q[<key>]=<value> (arrays become q[<key>][]). Examples: {"updated_at_gt": "2026-01-01T00:00:00.000Z"}, {"number_eq": "003664"}, {"status_not_eq": 40}, {"work_email_address_eq": "abc@test.com"}, {"asset_number_eq": "ABC-1"}. Unknown predicates are silently ignored by the API.', 'propertyNames': {'type': 'string', 'pattern': '^[A-Za-z0-9_]+$'}, 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'array', 'items': {'type': ['string', 'number']}}]}}, 'include': {'type': 'array', 'items': {'enum': ['item', 'icon'], 'type': 'string'}, 'description': 'Associations to embed.'}, 'per_page': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Records per page, 1-100 (default 20).'}, 'product_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': "Only this product's stock levels.", 'exclusiveMinimum': 0}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['member_id'], 'properties': {'name': {'type': 'string', 'minLength': 1, 'description': 'New name.'}, 'active': {'type': 'boolean', 'description': 'Set false to make the member inactive (reversible).'}, 'emails': {'type': 'array', 'items': {'type': 'object', 'required': ['address'], 'properties': {'address': {'type': 'string', 'description': 'Email address.'}, 'type_id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Email type list-value id (4001 = Work in a default setup).'}}}, 'description': 'Email addresses to add.'}, 'phones': {'type': 'array', 'items': {'type': 'object', 'required': ['number'], 'properties': {'number': {'type': 'string', 'description': 'Phone number.'}, 'type_id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Phone type list-value id (6001 = Work in a default setup).'}}}, 'description': 'Phone numbers to add.'}, 'tag_list': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Replacement tag list.'}, 'member_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The member id.', 'exclusiveMinimum': 0}, 'description': {'type': 'string', 'description': 'Notes about the member.'}, 'custom_fields': {'type': 'object', 'description': 'Custom field values by field name.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'membership_type': {'enum': ['Organisation', 'Contact', 'Venue', 'User'], 'type': 'string', 'description': "The member's EXISTING type — required by the API when updating custom_fields."}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['opportunity_id'], 'properties': {'rating': {'type': 'integer', 'maximum': 5, 'minimum': 0, 'description': 'Rating, 0-5.'}, 'ends_at': {'type': 'string', 'description': 'Overall end / collection date-time (UTC).'}, 'subject': {'type': 'string', 'description': "The opportunity's subject (title)."}, 'owned_by': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'User member id of the owner.', 'exclusiveMinimum': 0}, 'store_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Move the job to another store.', 'exclusiveMinimum': 0}, 'tag_list': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Tags.'}, 'venue_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The Venue member id.', 'exclusiveMinimum': 0}, 'member_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The customer (Organisation/Contact member) id.', 'exclusiveMinimum': 0}, 'reference': {'type': 'string', 'description': 'Customer reference, e.g. their PO number.'}, 'starts_at': {'type': 'string', 'description': 'Overall start / delivery date-time (UTC).'}, 'project_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The project this opportunity belongs to.', 'exclusiveMinimum': 0}, 'description': {'type': 'string', 'description': 'Internal description.'}, 'custom_fields': {'type': 'object', 'description': 'Custom field values by field name.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'charge_ends_at': {'type': 'string', 'description': 'Charging period end (UTC).'}, 'opportunity_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The opportunity id.', 'exclusiveMinimum': 0}, 'charge_starts_at': {'type': 'string', 'description': 'Charging period start (UTC).'}, 'billing_address_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': "The member's address id used for billing.", 'exclusiveMinimum': 0}, 'customer_returning': {'type': 'boolean', 'description': 'The customer returns the goods themselves.'}, 'customer_collecting': {'type': 'boolean', 'description': 'The customer collects the goods themselves.'}, 'external_description': {'type': 'string', 'description': 'Description shown on customer documents.'}, 'delivery_instructions': {'type': 'string', 'description': 'Delivery instructions.'}, 'collection_instructions': {'type': 'string', 'description': 'Collection instructions.'}}}
Recent tool changes
Similar MCP servers
AgentLot Marketplace
Enables agents and users to discover, bid on, purchase, deliver, and settle paid digital services and compute work.
zobrx
Provides read-only ecommerce operations and analytics for orders, inventory, marketplace performance, advertising, settlements, t…
SupplySlate
Supports component sourcing, fabrication requests, supplier RFQs, catalog imports, quotes, purchase planning, checkout handoffs, …
Obriym CRM
Manages CRM records, sales pipelines, activities, orders, products, inventory, and marketplace catalog operations.
velora
Provides Argentine commerce operations including catalog and inventory, customer and supplier management, cash register tracking,…
Shopify
Provides read access to Shopify Admin data for store operations through the Shopify REST API.
Woocommerce
Provides access to WooCommerce store data through the WooCommerce REST API.
Troostwijk
Searches European industrial and insolvency liquidation auctions and retrieves auction lot details.