What this MCP does
Manages nonprofit constituent accounts, donations, memberships, fundraising campaigns, events and constituent activities in Neon CRM.
Tools
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['type'], 'properties': {'city': {'type': 'string', 'description': 'City.'}, 'type': {'enum': ['INDIVIDUAL', 'COMPANY'], 'type': 'string', 'description': 'Individual person or company account.'}, 'email': {'type': 'string', 'description': 'Primary email (primaryContact.email1).'}, 'phone': {'type': 'string', 'description': 'Phone number (stored on the primary address as phone1).'}, 'email2': {'type': 'string', 'description': 'Secondary email (primaryContact.email2).'}, 'zip_code': {'type': 'string', 'description': 'ZIP / postal code.'}, 'job_title': {'type': 'string', 'description': 'Job title (primaryContact.title).'}, 'last_name': {'type': 'string', 'description': 'Last name.'}, 'source_id': {'type': 'string', 'description': 'Source id (see neon_list_properties name=sources).'}, 'country_id': {'type': 'string', 'description': 'Country id (see neon_list_properties name=countries).'}, 'first_name': {'type': 'string', 'description': 'First name (primaryContact.firstName).'}, 'phone_type': {'enum': ['Home', 'Work', 'Mobile', 'Other'], 'type': 'string', 'description': 'Phone type.'}, 'middle_name': {'type': 'string', 'description': 'Middle name.'}, 'company_name': {'type': 'string', 'description': 'Company name — required when type is COMPANY.'}, 'address_line1': {'type': 'string', 'description': 'Primary address, line 1.'}, 'address_line2': {'type': 'string', 'description': 'Primary address, line 2.'}, 'preferred_name': {'type': 'string', 'description': 'Preferred name.'}, 'no_solicitation': {'type': 'boolean', 'description': 'Mark the account as do-not-solicit.'}, 'state_province_code': {'type': 'string', 'description': 'State/province code, e.g. CA.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['subject', 'start_date', 'time_zone_id', 'status_id', 'priority'], 'properties': {'note': {'type': 'string', 'description': 'The body / notes.'}, 'subject': {'type': 'string', 'minLength': 1, 'description': 'Short subject line.'}, 'end_date': {'type': 'string', 'description': 'End date, YYYY-MM-DD.'}, 'end_time': {'type': 'string', 'description': 'End time.'}, 'priority': {'enum': ['High', 'Normal', 'Low'], 'type': 'string', 'description': 'Priority.'}, 'status_id': {'type': 'string', 'description': 'Activity status id (neon_list_properties name=activityStatuses).'}, 'start_date': {'type': 'string', 'description': 'Start date, YYYY-MM-DD.'}, 'start_time': {'type': 'string', 'description': 'Start time, e.g. 09:30.'}, 'account_ids': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Accounts this activity is about.'}, 'time_zone_id': {'type': 'string', 'description': 'Time zone id (neon_list_properties name=systemTimezones).'}, 'system_user_ids': {'type': 'array', 'items': {'type': 'string'}, 'description': 'System users it is assigned to.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['account_id'], 'properties': {'account_id': {'type': 'string', 'minLength': 1, 'description': 'The account id.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['activity_id'], 'properties': {'activity_id': {'type': 'string', 'minLength': 1, 'description': 'The activity id.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['campaign_id'], 'properties': {'campaign_id': {'type': 'string', 'minLength': 1, 'description': 'The campaign id.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['donation_id'], 'properties': {'donation_id': {'type': 'string', 'minLength': 1, 'description': 'The donation id.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['event_id'], 'properties': {'event_id': {'type': 'string', 'minLength': 1, 'description': 'The event id.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['membership_id'], 'properties': {'membership_id': {'type': 'string', 'minLength': 1, 'description': 'The membership id.'}}}
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': ['account_id'], 'properties': {'account_id': {'type': 'string', 'minLength': 1, 'description': 'The account id.'}, 'sort_column': {'enum': ['date', 'amount'], 'type': 'string', 'description': 'Sort by date or amount.'}, 'current_page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': '0-based page number (Neon pages start at 0). Default 0.'}, 'sort_direction': {'enum': ['ASC', 'DESC'], 'type': 'string', 'description': 'Sort direction.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['account_id'], 'properties': {'event_id': {'type': 'string', 'description': 'Only registrations for this event.'}, 'account_id': {'type': 'string', 'minLength': 1, 'description': 'The account id.'}, 'current_page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': '0-based page number (Neon pages start at 0). Default 0.'}, 'sort_direction': {'enum': ['ASC', 'DESC'], 'type': 'string', 'description': 'Sort direction.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['account_id'], 'properties': {'is_active': {'type': 'boolean', 'description': "Only memberships matching the account's Active member flag."}, 'page_size': {'type': 'integer', 'maximum': 500, 'minimum': 1, 'description': 'Results per page.'}, 'account_id': {'type': 'string', 'minLength': 1, 'description': 'The account id.'}, 'sort_column': {'enum': ['date', 'amount'], 'type': 'string', 'description': 'Sort by date or amount.'}, 'current_page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': '0-based page number (Neon pages start at 0). Default 0.'}, 'sort_direction': {'enum': ['ASC', 'DESC'], 'type': 'string', 'description': 'Sort direction.'}, 'primary_active_membership': {'type': 'boolean', 'description': 'Only the highest-value active membership.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'email': {'type': 'string', 'description': 'Exact email address.'}, 'last_name': {'type': 'string', 'description': 'Last name.'}, 'page_size': {'type': 'integer', 'maximum': 500, 'minimum': 1, 'description': 'Results per page.'}, 'user_type': {'enum': ['INDIVIDUAL', 'COMPANY'], 'type': 'string', 'description': 'Account type.'}, 'first_name': {'type': 'string', 'description': 'First name.'}, 'current_page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': '0-based page number (Neon pages start at 0). Default 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': ['event_id'], 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': '0-based page number (Neon pages start at 0). Default 0.'}, 'event_id': {'type': 'string', 'minLength': 1, 'description': 'The event id.'}, 'page_size': {'type': 'integer', 'maximum': 500, 'minimum': 1, 'description': 'Results per page.'}, 'sort_direction': {'enum': ['ASC', 'DESC'], 'type': 'string', 'description': 'Sort direction.'}, 'registrant_account_id': {'type': 'string', 'description': "Only this registrant's registrations."}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'archived': {'type': 'boolean', 'description': 'Only archived (true) or active (false) events.'}, 'page_size': {'type': 'integer', 'maximum': 500, 'minimum': 1, 'description': 'Results per page.'}, 'event_name': {'type': 'string', 'description': 'Event name.'}, 'current_page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': '0-based page number (Neon pages start at 0). Default 0.'}, 'end_date_after': {'type': 'string', 'description': 'Events ending after this date (YYYY-MM-DD).'}, 'event_category': {'type': 'string', 'description': 'Event category (a delimited list is allowed).'}, 'end_date_before': {'type': 'string', 'description': 'Events ending before this date (YYYY-MM-DD).'}, 'published_event': {'type': 'boolean', 'description': 'Only published (true) or unpublished (false) events.'}, 'start_date_after': {'type': 'string', 'description': 'Events starting after this date (YYYY-MM-DD).'}, 'start_date_before': {'type': 'string', 'description': 'Events starting before this date (YYYY-MM-DD).'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'status': {'enum': ['ACTIVE', 'INACTIVE'], 'type': 'string', 'description': 'Only levels with this status.'}, 'page_size': {'type': 'integer', 'maximum': 500, 'minimum': 1, 'description': 'Results per page.'}, 'current_page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': '0-based page number (Neon pages start at 0). Default 0.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name'], 'properties': {'name': {'enum': ['funds', 'purposes', 'sources', 'solicitationMethods', 'activityStatuses', 'systemTimezones', 'systemUsers', 'individualTypes', 'companyTypes', 'eventCategories', 'countries', 'stateProvinces', 'genders', 'prefixes'], 'type': 'string', 'description': 'Which lookup list.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['resource', 'kind'], 'properties': {'kind': {'enum': ['searchFields', 'outputFields'], 'type': 'string', 'description': 'Filter fields or output columns.'}, 'resource': {'enum': ['accounts', 'donations', 'activities', 'events'], 'type': 'string', 'description': 'Which record type.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['resource', 'search_fields', 'output_fields'], 'properties': {'resource': {'enum': ['accounts', 'donations', 'activities', 'events'], 'type': 'string', 'description': 'Which record type to search.'}, 'page_size': {'type': 'integer', 'maximum': 500, 'minimum': 1, 'description': 'Results per page.'}, 'sort_column': {'type': 'string', 'description': 'Output field name to sort by — it must also appear in output_fields.'}, 'current_page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': '0-based page number (Neon pages start at 0). Default 0.'}, 'output_fields': {'type': 'array', 'items': {'anyOf': [{'type': 'string'}, {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}]}, 'maxItems': 300, 'minItems': 1, 'description': 'Columns to return: standard field names (strings) and/or custom-field ids (integers). Max 300.'}, 'search_fields': {'type': 'array', 'items': {'type': 'object', 'required': ['field', 'operator'], 'properties': {'field': {'type': 'string', 'description': "A search field name, e.g. 'Email' or 'Donation Date'."}, 'value': {'type': 'string', 'description': 'The value to compare against.'}, 'operator': {'enum': ['EQUAL', 'NOT_EQUAL', 'BLANK', 'NOT_BLANK', 'LESS_THAN', 'GREATER_THAN', 'LESS_AND_EQUAL', 'GREATER_AND_EQUAL', 'IN_RANGE', 'NOT_IN_RANGE', 'CONTAIN', 'NOT_CONTAIN'], 'type': 'string', 'description': 'Comparison operator. BLANK/NOT_BLANK take no value.'}, 'value_list': {'type': 'array', 'items': {'type': 'string'}, 'description': 'A list of values, for IN_RANGE / NOT_IN_RANGE.'}}}, 'minItems': 1, 'description': 'Filter criteria, ANDed together. Neon requires at least one.'}, 'sort_direction': {'enum': ['ASC', 'DESC'], 'type': 'string', 'description': 'Sort direction.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['account_id', 'type'], 'properties': {'type': {'enum': ['INDIVIDUAL', 'COMPANY'], 'type': 'string', 'description': "The account's type (individualAccount vs companyAccount)."}, 'email': {'type': 'string', 'description': 'Primary email (primaryContact.email1).'}, 'email2': {'type': 'string', 'description': 'Secondary email (primaryContact.email2).'}, 'job_title': {'type': 'string', 'description': 'Job title (primaryContact.title).'}, 'last_name': {'type': 'string', 'description': 'Last name.'}, 'account_id': {'type': 'string', 'minLength': 1, 'description': 'The account id.'}, 'first_name': {'type': 'string', 'description': 'First name (primaryContact.firstName).'}, 'middle_name': {'type': 'string', 'description': 'Middle name.'}, 'company_name': {'type': 'string', 'description': 'New company name (COMPANY accounts only).'}, 'email_opt_out': {'type': 'boolean', 'description': 'Opt the primary email out of email (email1OptOut).'}, 'preferred_name': {'type': 'string', 'description': 'Preferred name.'}, 'no_solicitation': {'type': 'boolean', 'description': 'Do-not-solicit flag.'}}}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['activity_id'], 'properties': {'note': {'type': 'string', 'description': 'New note (replaces the old one).'}, 'subject': {'type': 'string', 'description': 'New subject.'}, 'priority': {'enum': ['High', 'Normal', 'Low'], 'type': 'string', 'description': 'New priority.'}, 'status_id': {'type': 'string', 'description': 'New status id (neon_list_properties name=activityStatuses).'}, 'activity_id': {'type': 'string', 'minLength': 1, 'description': 'The activity id.'}}}
Recent tool changes
Similar MCP servers
AdButler
Manages AdButler advertisers, campaigns, ad items, audiences, zones, creatives, catalogs, and advertising reports.
Duvo MCP
Provides governed retail and CPG operations for cases, queues, approvals, automations, process documentation, integrations, and a…
Lovie Company Formation
Supports company formation and business administration with bank accounts, cards, invoicing, bookkeeping, accounting periods, and…
freedom-mcp
Supports company operations through commitments, teams, agents, customer evidence, leads, content workflows, spreadsheets, commer…
独行录 / opcmenu
Supports founder and company discovery, collaboration goals and tasks, events and signups, networking, messaging, profiles, produ…
Meta Council
Provides governed workflows for consulting, outreach, sales deals, invoices, marketing campaigns, content approvals, accounting a…
synter-ads
Manages cross-platform advertising campaigns, audiences, tracking, creative, landing pages, campaign audits, technology intellige…
synter-ads
Manages cross-platform advertising campaigns, audiences, tracking, creative, landing pages, campaign audits, technology intellige…