Neon CRM MCP server. Search Neon CRM accounts, donations, memberships and events; create accounts and activities.
Add to your MCP config, then reload & authorize:
{
"mcpServers": {
"neon-crm": {
"url": "https://neon-crm.usefulapi.io/mcp"
}
}
}| Tool | Type | What it does |
|---|---|---|
neon_get_organization_profile | read | Get the organization profile Fetch the Neon CRM organization these credentials belong to — its name, org ID and app URL. A cheap way to confirm the org ID and API key work. Neon: GET /properties/organizationProfile. |
neon_list_accounts | read | List accounts List constituent accounts (individuals and companies), optionally filtered by email, first or last name, or type. Returns accountId, names, email and userType. For richer queries use neon_search. Neon: GET /accounts. |
neon_get_account | read | Get one account Fetch one account in full — returned as individualAccount or companyAccount with its primary contact, addresses, consent, custom fields, current membership status and timestamps. Neon: GET /accounts/{id}. |
neon_list_search_fields | read | List search or output fields Discover the field names neon_search accepts for a resource: kind=searchFields gives filterable fields with their allowed operators; kind=outputFields gives the columns you can return (standard field names plus custom fields with numeric ids). Call this before neon_search. Neon: GET /{resource}/search/searchFields or /outputFields. |
neon_search | read | Search records Report-style search over accounts, donations (includes pledges and pledge payments), activities or events. Give filter criteria (field + operator + value), the output columns to return (standard field NAMES as strings, or custom-field IDS as integers — both from neon_list_search_fields), and 0-based pagination. Results come back as searchResults rows keyed by output field name, plus pagination totals. Neon allows only ONE concurrent search per endpoint. Neon: POST /{resource}/search. |
neon_list_account_donations | read | List an account's donations List one account's donations (amount, date, fund, campaign, purpose, status, payments), newest first by default. Neon: GET /accounts/{id}/donations. |
neon_list_account_memberships | read | List an account's memberships List one account's membership history — level, term, start and end dates, fee, status (e.g. SUCCEEDED/FAILED) and auto-renewal. Filter to active or the primary active membership. Neon: GET /accounts/{id}/memberships. |
neon_list_account_event_registrations | read | List an account's event registrations List the event registrations one account has made, optionally for a single event. Neon: GET /accounts/{id}/eventRegistrations. |
neon_get_donation | read | Get one donation Fetch one donation — amount, date, fund, campaign, purpose, source, tribute, soft-credit solicitor, payments and status. Neon: GET /donations/{id}. |
neon_get_membership | read | Get one membership Fetch one membership — level, term, dates, fee, status, auto-renewal, sub-members and payments. Neon: GET /memberships/{membershipId}. |
neon_list_membership_levels | read | List membership levels List the organization's membership levels (id, code, description, rank, type, status). Neon: GET /memberships/levels. |
neon_list_events | read | List events List events, filterable by name, category, date window, published or archived state. Dates are YYYY-MM-DD. Only Neon's legacy events are exposed by the API. Neon: GET /events. |
neon_get_event | read | Get one event Fetch one event — name, summary, dates, location, capacity, category, campaign, registration and financial settings. Neon: GET /events/{id}. |
neon_list_event_registrations | read | List an event's registrations List the registrations for one event — registrant account, tickets and attendees, amount, payments. Optionally only one registrant. Neon: GET /events/{id}/eventRegistrations. |
neon_list_campaigns | read | List campaigns List fundraising campaigns (id, code, name, status). Neon: GET /campaigns. |
neon_get_campaign | read | Get one campaign Fetch one campaign — dates, goal, fund, purpose, parent campaign, status, page URLs and fundraising statistics. Neon: GET /campaigns/{id}. |
neon_get_activity | read | Get one activity Fetch one activity (a logged interaction or task) — subject, note, dates, linked accounts, assigned users, status and priority. Neon: GET /activities/{id}. |
neon_list_properties | read | List lookup values List one of the organization's lookup lists — the ids other tools need: funds, purposes, sources, solicitation methods, activity statuses and system time zones (for neon_create_activity), system users, individual and company types, event categories, countries, states/provinces, genders, prefixes. Neon: GET /properties/{name}. |
neon_create_account | write | Create an account Create a constituent account: an INDIVIDUAL (a person) or a COMPANY (with company_name, plus an optional primary contact). Neon's Account Match may merge it into an existing account with the same name and email, so check neon_list_accounts by email first. Returns the new id. Neon: POST /accounts. |
neon_update_account | write | Update an account Change an account's name, email, job title, company name or do-not-solicit / email opt-out flags. Only the fields you pass are changed (PATCH). The type must match the account (see neon_get_account). Addresses are not edited here. Neon: PATCH /accounts/{id}. |
neon_create_activity | write | Log an activity Create an activity — log an interaction with a constituent (call, meeting, note) or schedule a task. Needs a subject, a start date, a time zone id (neon_list_properties name=systemTimezones), a status id (name=activityStatuses) and a priority; link it to accounts and assign it to system users. Returns the new id. Neon: POST /activities. |
neon_update_activity | write | Update an activity Change an activity's subject, note, status (e.g. mark it completed) or priority. Only the fields you pass are changed (PATCH). Neon: PATCH /activities/{id}. |
neon_usage_status | Usage status (free-tier meter) Report the caller's current free-tier usage this month: calls used, monthly limit, remaining, and whether the cap is reached. Read-only; does not count against the meter. | |
neon_upgrade | Upgrade to Pro (unlimited) Subscribe to the Pro plan for UNLIMITED Neon CRM tool calls (the free tier caps monthly usage). Choose monthly ($9/month) or yearly ($90/year — 2 months free) billing. Returns a Stripe Checkout link to open in your browser; after payment your account upgrades automatically. Read-only; does not count against the meter. |
| Plan | Price | Limit |
|---|---|---|
| Free | $0 | 100 tool calls / month |
| Proper user | $9/mo · $90/yr | Unlimited |
This is a Model Context Protocol endpoint — meant to be connected from an AI client, not opened in a browser. An invalid_token response at the URL is the auth gate working as designed; clients authenticate automatically.