Skip to content
Elaichi Elaichi

crm

EveryAction

Connect EveryAction to Elaichi and hand every teammate a governed MCP endpoint — 29 tools ready to call from Claude, Cursor, or any MCP client, clamped by roles, restrictions, and an audit log.

EveryAction

AI tools

EveryAction tools for your AI agents

29 tools are ready to mint as an MCP endpoint the moment you connect EveryAction — governed by the same roles, restrictions, and audit log as everything else in Elaichi.

list_all_everyaction_api_key_profiles

List API key profiles via the EveryAction introspection endpoint, which returns information about the API key currently in use. Returns: databaseName, hasMyVoters, hasMyCampaign, committeeName, apiKeyTypeName, keyReference, userFirstName, userLastName, username, userId.

everyaction_people_search

Search for a person in EveryAction using a match candidate such as name, date of birth, phone, or email. Returns: vanId, firstName, lastName, middleName, party, employer, occupation, sex, dateOfBirth, person, customProperties. Providing a valid vanId overrides other search criteria.

get_single_everyaction_activist_code_by_id

Get a specific Activist Code in EveryAction by its id. Returns: activistCodeId, type, name, mediumName, shortName, description, scriptQuestion, status. Required: id (either an integer or a VAN encoded identifier such as EID28CG).

create_a_everyaction_bulk_import_job

Create a bulk import job in EveryAction by specifying a zipped, delimited file URL and the actions to perform on its data. Supports creating and/or updating Contacts, Contributions, ActivistCodes, and ContactsActivistCodes. Returns: jobId, file, actions. Required: description, file, actions. The zipped file must be no more than 20 MB and the source URL must use SFTP, FTPS, or HTTPS.

create_a_everyaction_commitment

Create a Recurring Commitment record in EveryAction and process or initiate the first installment contribution with payment details in the request body. Returns: commitmentId, contributionId. Required: contact, designation, gatewayId, startDate, frequency, amount, paymentMethod. Amount must be $0.01–$999,999.99; an Idempotency-Key header is required.

list_all_everyaction_contributions

List recent contributions in EveryAction filtered by vanId. Returns: contactsContributionId, vanId, donorName, donorNameFirstLast, designationId, designationName, dateReceived, amount, amountRemaining, amountRefunded, period, cycle, sourceCodeId, sourceCodeName, sourceCodeDescription, sourceCodeStaticPath, type. Required: vanId.

create_a_everyaction_contribution

Create and process a contribution payment in EveryAction with the provided payment information. Returns the integer ID of the created contribution. Required: contact, designation, gatewayId, amount, paymentMethod. Amount must be between $0.01 and $999,999.99 inclusive.

list_all_everyaction_disbursements

List recent disbursements in EveryAction filtered by vanId. Returns: contactsDisbursementId, vanId, designationId, date, amount, purpose, period, cycle, sourceCodeName, sourceCodeDescription, sourceCodeStaticPath. Required: vanId. Default page size of 6.

list_all_everyaction_early_vote_fields

List early vote fields in EveryAction with optional status filtering. Returns: earlyVoteFieldId, name, type, status, values. The statuses parameter accepts a comma-delimited list of Active and Inactive. Defaults to Active,Inactive.

get_single_everyaction_early_vote_field_by_id

Get a single early vote field by id in EveryAction. Returns: earlyVoteFieldId, name, type, status, values, openapi, info, servers, components, security, paths, x-readme, x-readme-fauxas. Required: id.

delete_a_everyaction_employer_by_id

Delete the relationship or link between an Employer and a BargainingUnit in EveryAction by proxy id. This only removes the relation between them, not the entities themselves. Returns an empty 200 response on success. Required: employer_id, id.

create_a_everyaction_event

Create a new Event in EveryAction. Returns the integer ID of the newly created Event in the response body. Required: event.

create_a_everyaction_file_loading_job

Create a file-loading job in EveryAction by specifying a zipped CSV source file and the action(s) to perform on it. Returns: jobId, listeners, file, actions. Required: description, file (including fileName, sourceUrl, and columns), and actions. Supports Score Load, AV/EV Data File, Saved List Load, and Phones File action types.

list_all_everyaction_folders

List all Map Regions in an EveryAction folder. Returns: mapRegionId, name, description, dateCreated, dateRefreshed, mapRoutes. Required: folder_id.

get_single_everyaction_folder_by_id

Get a specific Map Region in an EveryAction folder by id. Returns: mapRegionId, name, description, dateCreated, dateRefreshed, mapRoutes, openapi, info, servers, components, security, paths, x-readme, x-readme-fauxas. Required: folder_id, id.

everyaction_folders_refresh

Refresh all Map Regions in an EveryAction folder. Returns an empty object on success. Required: folder_id.

everyaction_folders_refresh_item

Refresh a specific Map Region in an EveryAction folder. Returns an empty object on success. Required: folder_id, map_region_id.

list_all_everyaction_minivan_exports

List all available MiniVAN Exports in EveryAction. Returns: minivanExportId, name, dateCreated, createdBy, canvassers, eventSignups, databaseMode.

list_all_everyaction_printed_lists

List all available Printed Lists in EveryAction, with optional filters by generation date, creator, folder, or turf. Returns: number, name, eventSignups, listSize, folders, dateCreated, createdBy.

list_all_everyaction_scores

List committee access details for a specific Score in EveryAction. Returns: scoreId, scoreName, ownerCommittee, committeesWithAccess. Required: score_id.

create_a_everyaction_survey_question

Create a new Survey Question in EveryAction. Returns an empty object on success. Required: type, cycle, name, nameOtherLanguage, mediumName, mediumNameOtherLanguage, shortName, shortNameOtherLanguage, scriptQuestion, scriptQuestionOtherLanguage, status, scope, and responses.

update_a_everyaction_survey_question_by_id

Update an existing Survey Question in EveryAction by id. Returns an empty object on success. Required: id, surveyQuestionId, type, cycle, name, nameOtherLanguage, mediumName, mediumNameOtherLanguage, shortName, shortNameOtherLanguage, scriptQuestion, scriptQuestionOtherLanguage, status, and responses.

create_a_everyaction_voter_registration_batch

Add registrants to a Voter Registration Batch in EveryAction. Returns an array of per-registrant result objects with alternateId, vanId, result, and errors. Required: batch_id. Up to 25 registrants per request; the body must be a bare JSON array without a wrapping key.

update_a_everyaction_worksite_by_id

Update an existing Worksite in EveryAction. Returns: worksiteId, name, isPreferred, address, employer, workAreas, openapi, info, servers, components, security, paths, x-readme, x-readme-fauxas. Required: id, isPreferred.

delete_a_everyaction_worksite_by_id

Delete an existing Worksite in EveryAction by id. Returns an empty 200 response on success. Required: id.

delete_a_everyaction_employer_bargaining_unit_job_class_by_id

Delete the relationship or link between an Employer, BargainingUnit, and JobClass in EveryAction. This removes only the association between the three entities, not the entities themselves. Returns an empty 200 response on success. Required: employer_id, bargaining_unit_id, id.

delete_a_everyaction_employer_shift_type_by_id

Delete the relationship between an Employer and a ShiftType in EveryAction. This removes the link without modifying either the Employer or the ShiftType itself. Returns an empty 200 response on success. Required: employer_id, id.

update_a_everyaction_work_area_by_id

Update an existing WorkArea in EveryAction. Returns: workAreaId, name, openapi, info, servers, components, security, paths, x-readme, x-readme-fauxas. Required: id, worksite_id.

delete_a_everyaction_work_area_by_id

Delete an existing WorkArea in EveryAction. Returns an empty 204 response on success. Required: id, worksite_id.

How it works

From EveryAction account to governed MCP endpoint

Connect

Link a EveryAction account through Elaichi's hosted connect flow. Credentials are vaulted — nobody, including the AI, ever sees them.

Compose

The connection becomes a toolbox instantly. Curate which EveryAction tools are exposed, rename them, or freeze arguments.

Mint

Mint a personal MCP endpoint on that toolbox and paste it into Claude, Cursor, or any MCP client — governed by roles, restrictions, and audit logs.

Give every teammate a governed MCP server

Start a 14-day Gold trial — connect a product, curate a toolbox, and paste an endpoint into Claude or Cursor in minutes.