Connectors · CRM & sales
Bonterra EveryAction / NGP VAN MCP server for AI agents.
actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Bonterra EveryAction / NGP VAN and the rest of your systems. It gives your agent 234 Bonterra EveryAction / NGP VAN actions (136 reads, 78 writes and 20 that wait for a confirmation) and holds the Bonterra EveryAction / NGP VAN credential itself, so the agent never does. It paces Bonterra EveryAction / NGP VAN's limits and records every call.
100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.
claude mcp add --transport http actionlake https://connect.actionlake.com/mcpdo { action: "ngpvan_everyaction.activist_codes.list", intent: "check which Bonterra EveryAction / NGP VAN account is connected"}# List activist codes · read · 1 upstream call- 234actionsin one signed file
- 136readlook, never change
- 78writecreate and update
- 20wait for a yesdestructive, confirmed first
Set up
Connect Bonterra EveryAction / NGP VAN in three steps.
- 01
Add actionlake to Claude.
Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
https://connect.actionlake.com/mcp - 02
Connect Bonterra EveryAction / NGP VAN.
Username and secret. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
application_nameNGP VAN Application Name: the short application identifier NGP VAN issued with your API key (e.g. acmeCrmProduct)api_keyNGP VAN / EveryAction API key INCLUDING its database-mode suffix, e.g. 7c9e6679-7425-40de-944b-e07fc1f90ae7|1 (|0 =…
account { op: "connections.requirements", service: "ngpvan_everyaction" } # free: exactly what to paste, and what is found for you - 03
Make the first call. Check before a write.
Ask in plain words; Claude picks the action. Before anything changes,
checkvalidates the call and prices it, for free.do { action: "ngpvan_everyaction.activist_codes.list" }# list activist codes · read · 1 upstream callcheck { action: "ngpvan_everyaction.events.create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent
Bonterra EveryAction / NGP VAN at a glance
- Sign-in
- Username and secret. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
- You provide
application_nameapi_key- Limits we pace to
- 10 calls a second, per connection
- API covered
- VAN CRM API v4 (https://api.securevan.com/v4)
api.securevan.com/v4 - Built from
- Bonterra EveryAction / NGP VAN's documentation, read 23 October 2026docs.ngpvan.com
- Service file
- Version 1.0.0, signed (Ed25519)
- Cached reads
- 132 of 136 reads, for up to 5 minutes; a write clears what it affects
- Shared entities
- 4, so ask can line Bonterra EveryAction / NGP VAN up with your other systems
- Data
- Processed and stored in Sydney, Australia. No US region yet
Capabilities
What an AI agent can do in Bonterra EveryAction / NGP VAN.
234 actions in 105 areas. Every one carries its effect, so a key can allow the reads and hold the rest.
- 136readlook, never change
- 78writecreate and update
- 20destructivewait for a confirmation
People
105 read · 3 write · 2 destructive
List people · Get people · Find people · Delete people
Codes
92 read · 5 write · 2 destructive
Create codes · Create batch codes · List codes · Get codes
Events
62 read · 3 write · 1 destructive
List events · Create events · Get events · Update events
People canvass responses
62 read · 4 write · 0 destructive
Create people canvass responses · Create by id type people canvass responses · Get people canvass responses · Get by id type people canvass responses
Commitments
52 read · 3 write · 0 destructive
Create commitments · Create recurring payment commitments · List commitments · Get commitments
Contributions
53 read · 2 write · 0 destructive
Create contributions · Create payment contributions · List recent contributions · Get contributions
Departments
52 read · 2 write · 1 destructive
Create departments · List departments · Get departments · Update departments
Locations
52 read · 2 write · 1 destructive
List locations · Create locations · Get locations · Delete locations
97 more areas · 183 actions
- Signups 5
- Employers 4
- Folders map regions 4
- Job classes 4
- People codes 4
- People notes 4
- Pledges 4
- Supporter groups 4
- Survey questions 4
- Worksites 4
- Bargaining units 3
- Disbursements 3
- Financial batches 3
- Member statuses 3
- Saved lists 3
- Schedule types 3
- Score updates 3
- Shift types 3
- Users district field values 3
- Voter registration batches 3
- Worksites work areas 3
- Activist codes 2
- Ballot rejection reasons 2
- Ballot request types 2
- Ballot return statuses 2
- Ballot types 2
- Bulk import jobs 2
- Bulk import mapping types 2
- Campaigns 2
- Canvass file requests 2
- Changed entity export jobs 2
- Contributions attributions 2
- Custom fields 2
- Designations 2
- District fields 2
- Early vote fields 2
- Employers bargaining units 2
- Employers bargaining units job classes 2
- Employers shift types 2
- Events types 2
- Export jobs 2
- File loading jobs 2
- Folders 2
- Minivan exports 2
- Notes categories 2
- Online actions forms 2
- People disclosure field values 2
- People my activist flags 2
- Printed lists 2
- Scores 2
- Stories 2
- Supporter groups people 2
- Target export jobs 2
- Targets 2
- API key profiles 1
- Bulk import jobs resources 1
- Bulk import mapping types values 1
- Canvass responses contact types 1
- Canvass responses input types 1
- Canvass responses result codes 1
- Changed entity export jobs change types 1
- Changed entity export jobs fields 1
- Changed entity export jobs resources 1
- Code types 1
- Codes extended source codes 1
- Codes supported entities 1
- Commitments frequencies 1
- Commitments statuses 1
- Contributions adjustments 1
- Contributions attribution types 1
- Echoes 1
- Email message 1
- Email messages 1
- Employers departments 1
- Employers worksites 1
- Events shifts 1
- Export job types 1
- File loading jobs stats 1
- Notes category types 1
- People activist codes 1
- People membership 1
- People names 1
- People relationships 1
- Pledges installments 1
- Pronouns 1
- Relationships 1
- Reported ethnicities 1
- Reported genders 1
- Reported language preferences 1
- Reported races 1
- Reported sexual orientations 1
- Scores committee access 1
- Signups statuses 1
- Voter registration batches people 1
- Voter registration batches program types 1
- Voter registration batches registration forms 1
- Voter registration batches state supported fields 1
Top actions
The Bonterra EveryAction / NGP VAN API, shaped for agents.
The ids your agent types, what each does, and the one name it shares with other systems. 22 of Bonterra EveryAction / NGP VAN's 23 action names are shared with at least one other connector, so an agent learns them once.
| Action | What it does | Effect | Same name in |
|---|---|---|---|
ngpvan_everyaction.activist_codes.listList activist codes | Use this endpoint to retrieve all Activist Codes that are available in the current context. | read | crm.tag.list65 connectors |
ngpvan_everyaction.saved_lists.listList saved lists | Use this endpoint to retrieve metadata about available Saved Lists. | read | crm.contact_list.list34 connectors |
ngpvan_everyaction.events.listList events | Find Events *Description* Use this endpoint to find Events available in the current context using a number of filter options. | read | comm.event.list61 connectors |
ngpvan_everyaction.locations.listList locations | Use this endpoint to find Locations available in the current context using a number of filter options. | read | crm.location.list48 connectors |
ngpvan_everyaction.people.listList people | Returns a [paginated](https://docs.ngpvan.com/reference/pagination) list of [contacts](https://docs.ngpvan.com/reference/common-models#person) who meet all of… | read | crm.contact.list177 connectors |
ngpvan_everyaction.activist_codes.getGet activist codes | Use this endpoint to retrieve information about a specific Activist Code available in the current context. | read | crm.tag.get36 connectors |
ngpvan_everyaction.events.createCreate events | Use this endpoint to create a new Event. | write | comm.event.create52 connectors |
ngpvan_everyaction.saved_lists.getGet saved lists | Use this endpoint to get metadata about a saved list. | read | crm.contact_list.get29 connectors |
ngpvan_everyaction.people.getGet people | Retrieve a person record and associated contact information. | read | crm.contact.get176 connectors |
ngpvan_everyaction.locations.createCreate locations | Use this endpoint to create a new Location. | write | crm.location.create41 connectors |
ngpvan_everyaction.people.deleteDelete people | Suppresses a contact record | destructive | crm.contact.delete147 connectors |
ngpvan_everyaction.people_notes.createCreate people notes | Add Notes to a Person using a free-form text description. | write | crm.contact_note.create28 connectors |
Try it
Prompts to paste into Claude.
Each one names the Bonterra EveryAction / NGP VAN actions it will call, so you know what it reads and what it changes before you send it.
- Readread
What is on the Bonterra EveryAction / NGP VAN calendar this week?
calls
ngpvan_everyaction.events.list - Writewrite
Create events in Bonterra EveryAction / NGP VAN. Show me exactly what you will send before you save it.
calls
ngpvan_everyaction.events.create
Governance for Bonterra EveryAction / NGP VAN
Destructive actions wait for a yes.
20 Bonterra EveryAction / NGP VAN actions are destructive. These are all of them:
- Delete people
ngpvan_everyaction.people.delete - Delete events
ngpvan_everyaction.events.delete - Delete locations
ngpvan_everyaction.locations.delete - Merge into people
ngpvan_everyaction.people.merge_into - Delete codes
ngpvan_everyaction.codes.delete - Delete batch codes
ngpvan_everyaction.codes.delete_batch - Delete pledges
ngpvan_everyaction.pledges.delete - Delete signups
ngpvan_everyaction.signups.delete - Delete worksites
ngpvan_everyaction.worksites.delete - Delete departments
ngpvan_everyaction.departments.delete - Delete people codes
ngpvan_everyaction.people_codes.delete - Delete supporter groups
ngpvan_everyaction.supporter_groups.delete - Delete worksites work areas
ngpvan_everyaction.worksites_work_areas.delete - Unlink employers shift types
ngpvan_everyaction.employers_shift_types.unlink - Delete by id type people codes
ngpvan_everyaction.people_codes.delete_by_id_type - Remove supporter groups people
ngpvan_everyaction.supporter_groups_people.remove - Remove people my activist flags
ngpvan_everyaction.people_my_activist_flags.remove - Delete contributions attributions
ngpvan_everyaction.contributions_attributions.delete - Unlink employers bargaining units
ngpvan_everyaction.employers_bargaining_units.unlink - Unlink employers bargaining units job classes
ngpvan_everyaction.employers_bargaining_units_job_classes.unlink
A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.
Delete people?
intent: the user asked me to delete people
account { op: "keys.create", name: "ngpvan-everyaction-agent", allowed_actions: ["ngpvan_everyaction.*"], cap_calls: 2000, confirm_policy: "human_for_writes", approval_rules: [ { match: "ngpvan_everyaction.people.delete", approver: "[email protected]" }, { match: "ngpvan_everyaction.events.delete", approver: "[email protected]" }, { match: "ngpvan_everyaction.locations.delete", approver: "[email protected]" } ]}Cost
What Bonterra EveryAction / NGP VAN costs on actionlake.
Every Bonterra EveryAction / NGP VAN action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Bonterra EveryAction / NGP VAN refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
- 1upstream call per actionall 234 Bonterra EveryAction / NGP VAN actions
- 234actions pageeach page of a long list is one call
- 132reads can be cacheda cache hit costs nothing
- 100,000calls a month, freepaid plans from US$49 a month for 250,000
Action index
Every Bonterra EveryAction / NGP VAN action.
234 actions by area: the id your agent calls, what it does, and its effect.
People10
ngpvan_everyaction.people.deleteDelete peopledestructivengpvan_everyaction.people.findFind peoplereadngpvan_everyaction.people.find_by_phoneFind by phone peoplereadngpvan_everyaction.people.find_or_createFind or create peoplewritengpvan_everyaction.people.getGet peoplereadngpvan_everyaction.people.get_by_id_typeGet by id type peoplereadngpvan_everyaction.people.listList peoplereadngpvan_everyaction.people.merge_intoMerge into peopledestructivengpvan_everyaction.people.updateUpdate peoplewritengpvan_everyaction.people.update_by_id_typeUpdate by id type peoplewrite
Codes9
ngpvan_everyaction.codes.createCreate codeswritengpvan_everyaction.codes.create_batchCreate batch codeswritengpvan_everyaction.codes.deleteDelete codesdestructivengpvan_everyaction.codes.delete_batchDelete batch codesdestructivengpvan_everyaction.codes.getGet codesreadngpvan_everyaction.codes.listList codesreadngpvan_everyaction.codes.patchUpdate codeswritengpvan_everyaction.codes.updateUpdate codeswritengpvan_everyaction.codes.update_batchUpdate batch codeswrite
Events6
ngpvan_everyaction.events.createCreate eventswritengpvan_everyaction.events.deleteDelete eventsdestructivengpvan_everyaction.events.getGet eventsreadngpvan_everyaction.events.listList eventsreadngpvan_everyaction.events.patchUpdate eventswritengpvan_everyaction.events.updateUpdate eventswrite
People canvass responses6
ngpvan_everyaction.people_canvass_responses.createCreate people canvass responseswritengpvan_everyaction.people_canvass_responses.create_by_id_typeCreate by id type people canvass responseswritengpvan_everyaction.people_canvass_responses.getGet people canvass responsesreadngpvan_everyaction.people_canvass_responses.get_by_id_typeGet by id type people canvass responsesreadngpvan_everyaction.people_canvass_responses.patchUpdate people canvass responseswritengpvan_everyaction.people_canvass_responses.patch_by_id_typePatch by id type people canvass responseswrite
Commitments5
ngpvan_everyaction.commitments.createCreate commitmentswritengpvan_everyaction.commitments.create_recurring_paymentCreate recurring payment commitmentswritengpvan_everyaction.commitments.getGet commitmentsreadngpvan_everyaction.commitments.listList commitmentsreadngpvan_everyaction.commitments.updateUpdate commitmentswrite
Contributions5
ngpvan_everyaction.contributions.createCreate contributionswritengpvan_everyaction.contributions.create_paymentCreate payment contributionswritengpvan_everyaction.contributions.getGet contributionsreadngpvan_everyaction.contributions.get_by_alternate_idGet by alternate id contributionsreadngpvan_everyaction.contributions.list_recentList recent contributionsread
Departments5
ngpvan_everyaction.departments.createCreate departmentswritengpvan_everyaction.departments.deleteDelete departmentsdestructivengpvan_everyaction.departments.getGet departmentsreadngpvan_everyaction.departments.listList departmentsreadngpvan_everyaction.departments.updateUpdate departmentswrite
Locations5
ngpvan_everyaction.locations.createCreate locationswritengpvan_everyaction.locations.deleteDelete locationsdestructivengpvan_everyaction.locations.find_or_createFind or create locationswritengpvan_everyaction.locations.getGet locationsreadngpvan_everyaction.locations.listList locationsread
Signups5
ngpvan_everyaction.signups.createCreate signupswritengpvan_everyaction.signups.deleteDelete signupsdestructivengpvan_everyaction.signups.getGet signupsreadngpvan_everyaction.signups.listList signupsreadngpvan_everyaction.signups.updateUpdate signupswrite
Employers4
ngpvan_everyaction.employers.createCreate employerswritengpvan_everyaction.employers.getGet employersreadngpvan_everyaction.employers.listList employersreadngpvan_everyaction.employers.updateUpdate employerswrite
Folders map regions4
ngpvan_everyaction.folders_map_regions.getGet folders map regionsreadngpvan_everyaction.folders_map_regions.listList folders map regionsreadngpvan_everyaction.folders_map_regions.refreshRefresh folders map regionswritengpvan_everyaction.folders_map_regions.refresh_allRefresh all folders map regionswrite
Job classes4
ngpvan_everyaction.job_classes.createCreate job classeswritengpvan_everyaction.job_classes.getGet job classesreadngpvan_everyaction.job_classes.listList job classesreadngpvan_everyaction.job_classes.updateUpdate job classeswrite
People codes4
ngpvan_everyaction.people_codes.createCreate people codeswritengpvan_everyaction.people_codes.create_by_id_typeCreate by id type people codeswritengpvan_everyaction.people_codes.deleteDelete people codesdestructivengpvan_everyaction.people_codes.delete_by_id_typeDelete by id type people codesdestructive
People notes4
ngpvan_everyaction.people_notes.createCreate people noteswritengpvan_everyaction.people_notes.create_by_id_typeCreate by id type people noteswritengpvan_everyaction.people_notes.listList people notesreadngpvan_everyaction.people_notes.updateUpdate people noteswrite
Pledges4
ngpvan_everyaction.pledges.createCreate pledgeswritengpvan_everyaction.pledges.deleteDelete pledgesdestructivengpvan_everyaction.pledges.getGet pledgesreadngpvan_everyaction.pledges.listList pledgesread
Supporter groups4
ngpvan_everyaction.supporter_groups.createCreate supporter groupswritengpvan_everyaction.supporter_groups.deleteDelete supporter groupsdestructivengpvan_everyaction.supporter_groups.getGet supporter groupsreadngpvan_everyaction.supporter_groups.listList supporter groupsread
Survey questions4
ngpvan_everyaction.survey_questions.createCreate survey questionswritengpvan_everyaction.survey_questions.getGet survey questionsreadngpvan_everyaction.survey_questions.listList survey questionsreadngpvan_everyaction.survey_questions.updateUpdate survey questionswrite
Worksites4
ngpvan_everyaction.worksites.deleteDelete worksitesdestructivengpvan_everyaction.worksites.getGet worksitesreadngpvan_everyaction.worksites.listList worksitesreadngpvan_everyaction.worksites.updateUpdate worksiteswrite
Bargaining units3
ngpvan_everyaction.bargaining_units.createCreate bargaining unitswritengpvan_everyaction.bargaining_units.getGet bargaining unitsreadngpvan_everyaction.bargaining_units.listList bargaining unitsread
Disbursements3
ngpvan_everyaction.disbursements.getGet disbursementsreadngpvan_everyaction.disbursements.list_recentList recent disbursementsreadngpvan_everyaction.disbursements.upsertUpsert disbursementswrite
Financial batches3
ngpvan_everyaction.financial_batches.createCreate financial batcheswritengpvan_everyaction.financial_batches.getGet financial batchesreadngpvan_everyaction.financial_batches.listList financial batchesread
Member statuses3
ngpvan_everyaction.member_statuses.createCreate member statuseswritengpvan_everyaction.member_statuses.getGet member statusesreadngpvan_everyaction.member_statuses.listList member statusesread
Saved lists3
ngpvan_everyaction.saved_lists.getGet saved listsreadngpvan_everyaction.saved_lists.listList saved listsreadngpvan_everyaction.saved_lists.sms_syncSms sync saved listswrite
Schedule types3
ngpvan_everyaction.schedule_types.createCreate schedule typeswritengpvan_everyaction.schedule_types.getGet schedule typesreadngpvan_everyaction.schedule_types.listList schedule typesread
Score updates3
ngpvan_everyaction.score_updates.getGet score updatesreadngpvan_everyaction.score_updates.listList score updatesreadngpvan_everyaction.score_updates.updateUpdate score updateswrite
Shift types3
ngpvan_everyaction.shift_types.createCreate shift typeswritengpvan_everyaction.shift_types.getGet shift typesreadngpvan_everyaction.shift_types.listList shift typesread
Users district field values3
ngpvan_everyaction.users_district_field_values.addAdd users district field valueswritengpvan_everyaction.users_district_field_values.listList users district field valuesreadngpvan_everyaction.users_district_field_values.replaceReplace users district field valueswrite
Voter registration batches3
ngpvan_everyaction.voter_registration_batches.createCreate voter registration batcheswritengpvan_everyaction.voter_registration_batches.listList voter registration batchesreadngpvan_everyaction.voter_registration_batches.updateUpdate voter registration batcheswrite
Worksites work areas3
ngpvan_everyaction.worksites_work_areas.createCreate worksites work areaswritengpvan_everyaction.worksites_work_areas.deleteDelete worksites work areasdestructivengpvan_everyaction.worksites_work_areas.updateUpdate worksites work areaswrite
Activist codes2
ngpvan_everyaction.activist_codes.getGet activist codesreadngpvan_everyaction.activist_codes.listList activist codesread
Ballot rejection reasons2
ngpvan_everyaction.ballot_rejection_reasons.getGet ballot rejection reasonsreadngpvan_everyaction.ballot_rejection_reasons.listList ballot rejection reasonsread
Ballot request types2
ngpvan_everyaction.ballot_request_types.getGet ballot request typesreadngpvan_everyaction.ballot_request_types.listList ballot request typesread
Ballot return statuses2
ngpvan_everyaction.ballot_return_statuses.getGet ballot return statusesreadngpvan_everyaction.ballot_return_statuses.listList ballot return statusesread
Ballot types2
ngpvan_everyaction.ballot_types.getGet ballot typesreadngpvan_everyaction.ballot_types.listList ballot typesread
Bulk import jobs2
ngpvan_everyaction.bulk_import_jobs.createCreate bulk import jobswritengpvan_everyaction.bulk_import_jobs.getGet bulk import jobsread
Bulk import mapping types2
ngpvan_everyaction.bulk_import_mapping_types.getGet bulk import mapping typesreadngpvan_everyaction.bulk_import_mapping_types.listList bulk import mapping typesread
Campaigns2
ngpvan_everyaction.campaigns.getGet campaignsreadngpvan_everyaction.campaigns.listList campaignsread
Canvass file requests2
ngpvan_everyaction.canvass_file_requests.createCreate canvass file requestswritengpvan_everyaction.canvass_file_requests.getGet canvass file requestsread
Changed entity export jobs2
ngpvan_everyaction.changed_entity_export_jobs.createCreate changed entity export jobswritengpvan_everyaction.changed_entity_export_jobs.getGet changed entity export jobsread
Contributions attributions2
ngpvan_everyaction.contributions_attributions.deleteDelete contributions attributionsdestructivengpvan_everyaction.contributions_attributions.upsertUpsert contributions attributionswrite
Custom fields2
ngpvan_everyaction.custom_fields.getGet custom fieldsreadngpvan_everyaction.custom_fields.listList custom fieldsread
Designations2
ngpvan_everyaction.designations.getGet designationsreadngpvan_everyaction.designations.listList designationsread
District fields2
ngpvan_everyaction.district_fields.getGet district fieldsreadngpvan_everyaction.district_fields.listList district fieldsread
Early vote fields2
ngpvan_everyaction.early_vote_fields.getGet early vote fieldsreadngpvan_everyaction.early_vote_fields.listList early vote fieldsread
Employers bargaining units2
ngpvan_everyaction.employers_bargaining_units.linkLink employers bargaining unitswritengpvan_everyaction.employers_bargaining_units.unlinkUnlink employers bargaining unitsdestructive
Employers bargaining units job classes2
ngpvan_everyaction.employers_bargaining_units_job_classes.linkLink employers bargaining units job classeswritengpvan_everyaction.employers_bargaining_units_job_classes.unlinkUnlink employers bargaining units job classesdestructive
Employers shift types2
ngpvan_everyaction.employers_shift_types.linkLink employers shift typeswritengpvan_everyaction.employers_shift_types.unlinkUnlink employers shift typesdestructive
Events types2
ngpvan_everyaction.events_types.getGet events typesreadngpvan_everyaction.events_types.listList events typesread
Export jobs2
ngpvan_everyaction.export_jobs.createCreate export jobswritengpvan_everyaction.export_jobs.getGet export jobsread
File loading jobs2
ngpvan_everyaction.file_loading_jobs.createCreate file loading jobswritengpvan_everyaction.file_loading_jobs.getGet file loading jobsread
Folders2
ngpvan_everyaction.folders.getGet foldersreadngpvan_everyaction.folders.listList foldersread
Minivan exports2
ngpvan_everyaction.minivan_exports.getGet minivan exportsreadngpvan_everyaction.minivan_exports.listList minivan exportsread
Notes categories2
ngpvan_everyaction.notes_categories.getGet notes categoriesreadngpvan_everyaction.notes_categories.listList notes categoriesread
Online actions forms2
ngpvan_everyaction.online_actions_forms.getGet online actions formsreadngpvan_everyaction.online_actions_forms.listList online actions formsread
People disclosure field values2
ngpvan_everyaction.people_disclosure_field_values.setSet people disclosure field valueswritengpvan_everyaction.people_disclosure_field_values.set_by_id_typeSet by id type people disclosure field valueswrite
People my activist flags2
ngpvan_everyaction.people_my_activist_flags.applyApply people my activist flagswritengpvan_everyaction.people_my_activist_flags.removeRemove people my activist flagsdestructive
Printed lists2
ngpvan_everyaction.printed_lists.getGet printed listsreadngpvan_everyaction.printed_lists.listList printed listsread
Scores2
ngpvan_everyaction.scores.getGet scoresreadngpvan_everyaction.scores.listList scoresread
Stories2
ngpvan_everyaction.stories.createCreate storieswritengpvan_everyaction.stories.getGet storiesread
Supporter groups people2
ngpvan_everyaction.supporter_groups_people.addAdd supporter groups peoplewritengpvan_everyaction.supporter_groups_people.removeRemove supporter groups peopledestructive
Target export jobs2
ngpvan_everyaction.target_export_jobs.createCreate target export jobswritengpvan_everyaction.target_export_jobs.getGet target export jobsread
Targets2
ngpvan_everyaction.targets.getGet targetsreadngpvan_everyaction.targets.listList targetsread
API key profiles1
ngpvan_everyaction.api_key_profiles.listList api key profilesread
Bulk import jobs resources1
ngpvan_everyaction.bulk_import_jobs_resources.listList bulk import jobs resourcesread
Bulk import mapping types values1
ngpvan_everyaction.bulk_import_mapping_types_values.listList bulk import mapping types valuesread
Canvass responses contact types1
ngpvan_everyaction.canvass_responses_contact_types.listList canvass responses contact typesread
Canvass responses input types1
ngpvan_everyaction.canvass_responses_input_types.listList canvass responses input typesread
Canvass responses result codes1
ngpvan_everyaction.canvass_responses_result_codes.listList canvass responses result codesread
Changed entity export jobs change types1
ngpvan_everyaction.changed_entity_export_jobs_change_types.getGet changed entity export jobs change typesread
Changed entity export jobs fields1
ngpvan_everyaction.changed_entity_export_jobs_fields.getGet changed entity export jobs fieldsread
Changed entity export jobs resources1
ngpvan_everyaction.changed_entity_export_jobs_resources.listList changed entity export jobs resourcesread
Code types1
ngpvan_everyaction.code_types.listList code typesread
Codes extended source codes1
ngpvan_everyaction.codes_extended_source_codes.listList codes extended source codesread
Codes supported entities1
ngpvan_everyaction.codes_supported_entities.listList codes supported entitiesread
Commitments frequencies1
ngpvan_everyaction.commitments_frequencies.listList commitments frequenciesread
Commitments statuses1
ngpvan_everyaction.commitments_statuses.listList commitments statusesread
Contributions adjustments1
ngpvan_everyaction.contributions_adjustments.createCreate contributions adjustmentswrite
Contributions attribution types1
ngpvan_everyaction.contributions_attribution_types.listList contributions attribution typesread
Echoes1
ngpvan_everyaction.echoes.testTest echoesread
Email message1
ngpvan_everyaction.email_message.getGet email messageread
Email messages1
ngpvan_everyaction.email_messages.listList email messagesread
Employers departments1
ngpvan_everyaction.employers_departments.createCreate employers departmentswrite
Employers worksites1
ngpvan_everyaction.employers_worksites.createCreate employers worksiteswrite
Events shifts1
ngpvan_everyaction.events_shifts.createCreate events shiftswrite
Export job types1
ngpvan_everyaction.export_job_types.listList export job typesread
File loading jobs stats1
ngpvan_everyaction.file_loading_jobs_stats.listList file loading jobs statsread
Notes category types1
ngpvan_everyaction.notes_category_types.listList notes category typesread
People activist codes1
ngpvan_everyaction.people_activist_codes.listList people activist codesread
People membership1
ngpvan_everyaction.people_membership.getGet people membershipread
People names1
ngpvan_everyaction.people_names.updateUpdate people nameswrite
People relationships1
ngpvan_everyaction.people_relationships.createCreate people relationshipswrite
Pledges installments1
ngpvan_everyaction.pledges_installments.listList pledges installmentsread
Pronouns1
ngpvan_everyaction.pronouns.listList pronounsread
Relationships1
ngpvan_everyaction.relationships.listList relationshipsread
Reported ethnicities1
ngpvan_everyaction.reported_ethnicities.listList reported ethnicitiesread
Reported genders1
ngpvan_everyaction.reported_genders.listList reported gendersread
Reported language preferences1
ngpvan_everyaction.reported_language_preferences.listList reported language preferencesread
Reported races1
ngpvan_everyaction.reported_races.listList reported racesread
Reported sexual orientations1
ngpvan_everyaction.reported_sexual_orientations.listList reported sexual orientationsread
Scores committee access1
ngpvan_everyaction.scores_committee_access.listList scores committee accessread
Signups statuses1
ngpvan_everyaction.signups_statuses.listList signups statusesread
Voter registration batches people1
ngpvan_everyaction.voter_registration_batches_people.addAdd voter registration batches peoplewrite
Voter registration batches program types1
ngpvan_everyaction.voter_registration_batches_program_types.listList voter registration batches program typesread
Voter registration batches registration forms1
ngpvan_everyaction.voter_registration_batches_registration_forms.listList voter registration batches registration formsread
Voter registration batches state supported fields1
ngpvan_everyaction.voter_registration_batches_state_supported_fields.listList voter registration batches state supported fieldsread
Questions
The Bonterra EveryAction / NGP VAN MCP server, answered.
Is there a Bonterra EveryAction / NGP VAN MCP server for Claude?
Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 234 Bonterra EveryAction / NGP VAN actions across people, codes, events and people canvass responses, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Bonterra EveryAction / NGP VAN.
What do I need to connect Bonterra EveryAction / NGP VAN?
NGP VAN Application Name: the short application identifier NGP VAN issued with your API key (e.g. acmeCrmProduct) and NGP VAN / EveryAction API key INCLUDING its database-mode suffix, e.g. 7c9e6679-7425-40de-944b-e07fc1f90ae7|1 (|0 =…. The free call account { op: "connections.requirements", service: "ngpvan_everyaction" } lists exactly what to paste.
Can an AI agent delete or change things in Bonterra EveryAction / NGP VAN?
Only if its key allows it, and only with an explicit confirmation. 20 Bonterra EveryAction / NGP VAN actions are destructive, including delete people, delete events and delete locations. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.
Will an AI agent use up my Bonterra EveryAction / NGP VAN API limit?
actionlake paces every call to the limits in the Bonterra EveryAction / NGP VAN service file: 10 calls a second per connection. Repeated reads are answered from cache (132 Bonterra EveryAction / NGP VAN actions can be), which never reaches Bonterra EveryAction / NGP VAN.
What does a Bonterra EveryAction / NGP VAN action cost?
One upstream call, the only unit actionlake bills. A list that pages bills one call per page (234 Bonterra EveryAction / NGP VAN actions page). Cache hits, searches, dry runs and calls Bonterra EveryAction / NGP VAN refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
Which Bonterra EveryAction / NGP VAN API does it cover?
The VAN CRM API v4 (https://api.securevan.com/v4) at api.securevan.com/v4. It is built from Bonterra EveryAction / NGP VAN's documentation as read on 23 October 2026. 234 actions in 105 areas, each one in the signed service file (version 1.0.0).
Does actionlake keep my Bonterra EveryAction / NGP VAN data, and where?
actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Bonterra EveryAction / NGP VAN credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.
Which AI clients can use it?
Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.
Give your agent Bonterra EveryAction / NGP VAN today.
Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.