Wild Apricot MCP by usefulapi
io.usefulapi/wild-apricot · v1.11.1
Look up members, events, registrations, invoices and payments, and add contacts or check in guests.
MCPremoteno credentialsFinance
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 21 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
B 88/100
What it does: 21 tools · 17 read, 4 write (incl. delete/pay) · Finance
Test call wildapricot_list_accounts: needs a key: HTTP 401 (1,242 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +10
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +10
- Read/write annotations: +5
- Safe test call: +8
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://wild-apricot.usefulapi.io/mcpTools
21 tools listed at last check
wildapricot_list_accountsList the Wild Apricot accounts this API key can reach — id, name, primary domain, currency, contact limit. A cheap way to confirm the key works. Wild Apricot: GET /accounts.wildapricot_get_accountFetch the current account's details (name, primary domain, time zone, currency, billing plan, contact limit). Wild Apricot: GET /accounts/{accountId}.wildapricot_list_contactsSearch contacts and members. Use simple_query for a substring match on name, organization, email or phone, or filter for an OData-style expression over field names/system codes (e.g. "'Membership status' eq 'Active'", "'Profile last updated' gt 2026-01-01"). Runs synchronously ($async=false). Wild Awildapricot_get_contactFetch one contact or member with all field values, membership level and status. Set extended_membership_info for the pending membership order, its invoice and allowed actions. Wild Apricot: GET /accounts/{accountId}/contacts/{contactId}.wildapricot_list_contact_fieldsList the contact and membership field definitions — names, system codes, types, allowed values, whether each is searchable ($filter) and editable. Use it to build filters and field_values. Wild Apricot: GET /accounts/{accountId}/contactfields.wildapricot_list_membership_levelsList membership levels — name, fee, renewal period, individual vs bundle, whether the public can apply. Wild Apricot: GET /accounts/{accountId}/membershiplevels.wildapricot_list_member_groupsList ad hoc member groups (id, name, description). Wild Apricot: GET /accounts/{accountId}/membergroups.wildapricot_list_saved_searchesList the contact saved searches defined by admins (id, name, description). Wild Apricot: GET /accounts/{accountId}/savedsearches.wildapricot_get_saved_searchRun one saved search and return the ids of the contacts it currently matches. Wild Apricot: GET /accounts/{accountId}/savedsearches/{savedSearchId}.wildapricot_list_eventsList events. filter supports e.g. "IsUpcoming eq true", "StartDate gt 2026-01-01", "RegistrationEnabled eq true", "Tags in [workshop]", "Id in [1,2]". Wild Apricot: GET /accounts/{accountId}/events.wildapricot_get_eventFetch one event with its details — description, registration types, registration fields, sessions, registration counts and totals paid/due. Wild Apricot: GET /accounts/{accountId}/events/{eventId}.wildapricot_list_event_registration_typesList an event's registration types (ticket types) — price, availability, limits, waitlist. You need a type id to register someone. Wild Apricot: GET /accounts/{accountId}/EventRegistrationTypes?eventId=.wildapricot_list_event_registrationsList registrations for an event (attendee list) or for a contact (what they signed up for) — registration type, fee, paid, checked in, waitlist. Wild Apricot: GET /accounts/{accountId}/eventregistrations.wildapricot_list_invoicesList invoices, optionally for one contact, event or event registration, paid/unpaid only, or within a created-date range. Wild Apricot: GET /accounts/{accountId}/invoices.wildapricot_list_paymentsList payments received, optionally for one contact or event, unsettled only, or within a created-date range. Wild Apricot: GET /accounts/{accountId}/payments.wildapricot_list_donationsList donations — donor, amount, date, comments and donation field values — optionally within a date range. Wild Apricot: GET /accounts/{accountId}/donations.wildapricot_list_audit_logList audit log items (membership changes, payments, invoices and other admin/member activity) within a date range. Wild Apricot: GET /accounts/{accountId}/auditLogItems.wildapricot_create_contactCreate a contact. To make them a member set membership_enabled=true and membership_level_id (Wild Apricot may create a membership invoice unless recreate_invoice=false). Custom fields go in field_values. Wild Apricot: POST /accounts/{accountId}/contacts.wildapricot_update_contactUpdate an existing contact: names, email, membership level/status, or custom field values. Only the fields you pass are sent. Wild Apricot: PUT /accounts/{accountId}/contacts/{contactId}.wildapricot_create_event_registrationRegister an existing contact for an event under one registration type (from wildapricot_list_event_registration_types). Can add to the waitlist instead. Wild Apricot: POST /accounts/{accountId}/eventregistrations.wildapricot_check_in_attendeeMark an event registration as checked in (checked_in=true) or undo it (false); for anonymous guests, set how many are checked in. Wild Apricot: POST /rpc/{accountId}/CheckInEventAttendee.
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/io.usefulapi/wild-apricot)