Skip to content

CRM

Virtuous MCP connector

The Virtuous connector brings donor contacts, household individuals, contact notes and receipts into Claude, ChatGPT, Cursor and any MCP client, so your team can look up, create and update donor records inside their own Virtuous access.

  • How it connects. Connects with an API key. The credential goes into a vault nobody reads back.

  • One address. https://api.elaichi.ai/mcp, the same for every user.

  • Their own access. An agent never gets more than the person it acts for.

How to connect

How to connect Virtuous to Claude, ChatGPT or Cursor

Two steps, about a minute.

1

In Elaichi

Connect Virtuous once

  1. Open Connections, choose Add connection, and pick Virtuous.

  2. Optionally set Share with to give a team access, then press Connect.

  3. Paste a Virtuous API key. One person generates a token in Virtuous and pastes it once. Everyone else works through Share with, and never sees it.

The credential is vaulted. Nobody reads it back, not even the AI.

Add connection

Choose a connector.

virtuous
Virtuous
Affinity
Attio
EveryAction
Google Contacts
Highlevel
2

In your AI client

Point it at one endpoint

Everyone in the organization uses the same address, and each person only ever reaches what their own account allows.

Connect Virtuous to Claude

  1. 1

    Open Customize, then Connectors.

  2. 2

    Press Add.

  3. 3

    Name it, paste the MCP server URL, then Continue.

    https://api.elaichi.ai/mcp
  4. 4

    Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

Connect Virtuous to ChatGPT

  1. 1

    Open Plugins, then press the + button.

  2. 2

    Name it and paste the endpoint into Server URL.

    https://api.elaichi.ai/mcp
  3. 3

    Leave Authentication on OAuth, then tick the risk acknowledgement.

  4. 4

    Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

Connect Virtuous to Cursor

  1. 1

    Open ~/.cursor/mcp.json.

  2. 2

    Add the endpoint under mcpServers.

    https://api.elaichi.ai/mcp
  3. 3

    Reload Cursor, then sign in and approve.

~/.cursor/mcp.json

{
  "mcpServers": {
    "elaichi": {
      "url": "https://api.elaichi.ai/mcp"
    }
  }
}

Set up per machine, so repeat it on each computer you work from.

Connect Virtuous to any MCP client

  1. 1

    Add the endpoint as a remote MCP server.

    https://api.elaichi.ai/mcp
  2. 2

    Sign in and approve.

{
  "mcpServers": {
    "elaichi": {
      "url": "https://api.elaichi.ai/mcp"
    }
  }
}

The Elaichi Agent already has these tools, with nothing to set up.

Use cases

What teams do with Virtuous through Elaichi

Every one of these runs inside the access the person already has, and lands in the same audit log.

  • Development

    Catch a donor record up after a call

    Come back from a donor call, describe what happened in plain language, and have the note added to the right Virtuous contact without opening the record yourself.

  • Major gifts

    Brief yourself before a donor meeting

    Ask for a donor's contact details, household individuals, recent notes and receipts in Virtuous, and get a short briefing you can read on the way to the meeting.

  • Donor relations

    Find the right household in seconds

    Search Virtuous contacts by name, email or reference ID when a donor writes in, and see who else belongs to that household before you reply.

  • Finance

    Pull a donor's receipts for a question

    When a donor asks what they gave last year, list the receipts on their Virtuous contact and answer in the same conversation.

  • Operations

    Clean up contacts and individuals in bulk

    Walk through Virtuous contacts that need a corrected address, a renamed individual or a merged duplicate, and apply the updates one confirmed change at a time.

  • Events

    Add new attendees as Virtuous contacts

    Take a list of people who signed in at an event, create each one as a Virtuous contact with the individuals in their household, and note where you met them.

Try asking

  • “Show me all major donors who gave last quarter.”
  • “Draft a gift receipt summary for this contact.”
  • “List contacts with lapsed pledges this month.”

See all 345 Virtuous tools below

AI tools

Virtuous tools for your AI agents

345 tools are ready to call through Elaichi's MCP endpoint the moment you connect Virtuous, governed by the same roles, restrictions, and audit log as everything else in Elaichi.

See it in Elaichi

What connecting Virtuous gets you

6 screens from the product, each doing one job for your Virtuous account.

The agent

Ask Virtuous questions, get answers from real records.

Type a question in plain language and get a live answer from your contacts and gifts.

  • contacts
  • gifts
  • receipts
  • organizations

Ask Elaichi to work across your apps.

Show me all major donors who gave last quarter.

Draft a gift receipt summary for this contact.

List contacts with lapsed pledges this month.

Also runs in Claude, ChatGPT or Cursor

MCP clients

One Virtuous endpoint, every mcp client welcome.

Claude, chatgpt and cursor connect through a single org-wide endpoint, no sdk or shared key.

ElaichiMCP clients
Claude ChatGPT Cursor

Copy the endpoint

https://api.elaichi.ai/mcp
Client Connected by Status Last used
Claude
E

Emma Laurent

• Connected 4 minutes ago
Cursor
S

Sofia Ricci

• Connected 2 hours ago
ChatGPT
C

Clara Nowak

• Connected Yesterday

Tool catalog

345 Virtuous tools, zero custom code.

Every contact, gift and organization method is cataloged and ready to call.

  • Virtuous authentication get token
  • List all Virtuous organizations
  • Virtuous organizations get current organization
  • Virtuous organizations switch organization
ElaichiTools
Tool Action Description
Virtuous authentication get token Get Retrieve an OAuth access token from Virtuous by authenticating with username and password (or refreshing an expired token with a refresh_token). Returns: access_token, token_type, expires_in, refresh_token, userName, twoFactorEnabled, .issued, .expires, organizationUserId, organizationName, organizationTimeZone, organizationCulture, currentUserTimeZone, isAdministrator, isEnabled.issued,…
List all Virtuous organizations List List Virtuous organizations the current user belongs to. Returns: organizationUserId, organizationName, organizationTimeZone, organizationCulture, isAdministrator, isEnabled.
Virtuous organizations get current organization Get Get the current Virtuous organization for the authenticated user. Returns: organizationUserId, organizationName, organizationTimeZone, organizationCulture, currentUserTimeZone, isAdministrator, isEnabled.
Virtuous organizations switch organization Action Switch the current Virtuous organization for the authenticated user. Returns an empty 200 response on success. Required: organizationUserId.
List all Virtuous permissions List List permissions for the current user in Virtuous. Returns a collection of permission entries, each with module, action, and allowed. No required parameters.

Toolboxes

Every team gets its own Virtuous toolbox.

Fundraising, finance and programs each work from a toolbox scoped to their job.

  • Fundraising
  • Finance
  • Programs
  • Marketing
ElaichiToolboxes
Name Source template Tools Created

Fundraising toolbox

Virtuous · donors and gifts

Virtuous starter 18 Mar 4, 2026

Finance toolbox

Virtuous · receipts and reconciliation

9 Mar 2, 2026

Programs toolbox

Virtuous · beneficiaries and grants

24 Feb 27, 2026

Marketing toolbox

Virtuous · campaigns and outreach lists

Virtuous starter 6 Feb 19, 2026

Events toolbox

Virtuous · registrations and attendees

31 Jan 30, 2026

Leadership toolbox

Virtuous · organization-wide reporting

12 Jan 22, 2026

Shared connections

Delegated Virtuous access, no shared credentials.

See who connected each account and how many teams and members share it.

  • Major Gifts
  • Annual Fund
  • Grants
  • Events
ElaichiConnections
Connection Scope Status Access
VI

Virtuous (Major Gifts)

Connected by Emma Laurent

Personal • Active 1 team · 6 members
VI

Virtuous (Annual Fund)

Connected by James Whitfield

Organization • Active 3 teams · 24 members
VI

Virtuous (Grants)

Connected by Sofia Ricci

Organization • Active 2 teams · 11 members
VI

Virtuous (Events)

Connected by Daniel Ortega

Personal • Needs re-auth 1 team · 3 members
VI

Virtuous (Membership)

Connected by Clara Nowak

Personal • Active Not shared
VI

Virtuous (Direct Mail)

Connected by Michael Brennan

Personal • Active 2 teams · 9 members

Audit log

Every Virtuous action, logged and answerable.

Who, what, when and which resource, recorded in an append-only log.

  • When
  • Who
  • What happened
  • Type
ElaichiAudit log
When Who What happened Type

2 minutes ago

Mar 6, 2026, 3:10 PM

E

Emma Laurent

[email protected]

Restriction Created Access

8 minutes ago

Mar 6, 2026, 3:04 PM

J

James Whitfield

[email protected]

Restriction Updated Access

14 minutes ago

Mar 6, 2026, 2:58 PM

S

Sofia Ricci

[email protected]

Role Assigned Access

20 minutes ago

Mar 6, 2026, 2:52 PM

D

Daniel Ortega

[email protected]

Virtuous Users Updated MCP

26 minutes ago

Mar 6, 2026, 2:46 PM

C

Clara Nowak

[email protected]

Virtuous Contacts Created MCP

32 minutes ago

Mar 6, 2026, 2:40 PM

M

Michael Brennan

[email protected]

Virtuous Contacts List Toolbox

Launching soon

From answering questions to doing the work

A person no longer has to ask. A trigger starts the work, inside the same permissions and the same audit log as everything else. Automations and live dashboards are launching soon, on the Black plan.

Automations

A schedule starts real Virtuous work, end to end.

Records are fetched, grouped, drafted by an agent, approved by a person, then posted back.

Virtuous digest

Run 418 · started 2 minutes ago · on behalf of Emma Laurent

  1. Schedule

    Every weekday at 08:00

    0.2s
  2. Fetch contacts

    Virtuous

    1.4s
  3. Group by owner

    Transform

    0.1s
  4. Draft the digest

    Agent step

    Ran with 4 tools, returned a structured summary

    6.2s
  5. Approve the digest

    Needs approval

    Assigned to Michael Brennan

    Approve
  6. Post the digest

    Virtuous

    Queued

Collections and dashboards

Virtuous health, measured on a schedule.

Four metrics, a 14 day chart and a team breakdown, computed with no model involved.

Virtuous health

Refreshed 4 minutes ago · every 15 minutes · from the contacts collection

Live

Contacts

1,284 ↓ 12%

Gifts

96 ↓ 8%

Needs attention

3 ↑ 2

Updated this week

412 ↑ 9%

Contacts created

Last 14 days

By team

Share of activity

Major Gifts 34%

Annual Fund 27%

Grants 21%

Events 18%

FAQ

Frequently asked questions

How do I connect Virtuous to Claude?

First connect Virtuous in Elaichi, which asks you to paste the API key from your Virtuous account, and there is no client ID or secret to generate. Then in Claude open Customize, then Connectors, then Add, and paste https://api.elaichi.ai/mcp as the endpoint. Sign in to Elaichi when Claude asks, and Virtuous is available in your conversations.

Does Virtuous work with ChatGPT and Cursor as well as Claude?

Yes. Once Virtuous is connected in Elaichi, the same https://api.elaichi.ai/mcp endpoint works in Claude, ChatGPT, Cursor, any other MCP client and the Elaichi Agent. You connect Virtuous once and every client you use picks it up.

What can an AI agent actually do with my Virtuous data?

With Virtuous connected, an agent can search for a donor, pull up a contact with the individuals in its household, read and add contact notes, list a donor's receipts, and create or update contacts on your behalf. Because Virtuous has a large set of actions, short concrete asks such as "add a note to the Garcia household about today's call" work better than long instructions.

Does connecting Virtuous give the AI everything in my organization?

No. Every request runs as the person who signed in, so the agent sees only the Virtuous contacts, notes and receipts that person's own Virtuous permissions allow. Elaichi can narrow that access further, for example to reading only, but it can never widen it beyond what Virtuous already grants you.

Can my team share one Virtuous connection?

Yes. One person connects Virtuous with the API key and shares the connection with a team in Elaichi, and nobody else on the team ever handles that key. Each teammate still signs in to Elaichi as themselves, so every Virtuous action in the audit log names the person who did it.

Can I stop an agent from deleting or changing things in Virtuous?

Yes. Restrictions in Elaichi apply per action, so you can allow searching and reading Virtuous contacts while blocking deletion of contacts, individuals or notes. A blocked action is never shown to Claude, ChatGPT, Cursor or any other client, so no prompt can reach it.

What happens to a Virtuous connection when someone leaves?

Offboarding a person in Elaichi ends their access to Virtuous through every client at once, and a shared Virtuous connection keeps working for everyone else on the team. If you want to remove Virtuous entirely, disconnecting it once in Elaichi removes it from Claude, ChatGPT, Cursor and every other connected client.

Put Virtuous in front of your team

Fourteen days on Gold, no credit card. Connect it once and pick what each team can call.