Affinity v2 integration for AI agents.
Affinity v2 integration for AI agents with secure authentication and server-side credential injection. Open Connector runs the OAuth, seals the token in an encrypted vault, and serves Affinity v2 tools to your agent over MCP or a typed API — credentials injected server-side, every call audited, nothing leaving your infrastructure. Open source (AGPL-3.0) and self-hostable.
Real Affinity v2 actions, managed and audited.
Your user connects Affinity v2 once; your agent can then use Affinity External API v2 to manage CRM companies, people, opportunities, lists, notes, interactions, field data, and webhooks — scoped to the OAuth permissions you grant and the tool allowlist you configure. Every action is least-privilege and written to a tamper-evident audit trail.
- 1
Your user grants Affinity v2 access once (OAuth) — the token lands in the vault.
- 2
Your agent calls a tool over MCP or the typed API; Open Connector injects the credential server-side.
- 3
Every routed call appends a hash-chained audit record — nothing leaves your infra.
Supported Affinity v2 tools.
86 tools are generated from the published Affinity v2 catalog. Descriptions are plain text; each action remains subject to its configured authentication and tool allowlist.
Showing 86 tools. All published catalog entries are included in this page's server-rendered HTML.
- Delete a dropdown option for a List Field
- Delete a dropdown option for a List Field.
- lists
- Delete a single Note
- Delete a note. You can only delete notes you created. Deleting a root note also deletes its
- notes
- Get current user
- Returns information about the authenticated user, their current organization, and API key permissions.
- auth
- Get metadata on all Calls
- Paginate through all calls in Affinity. Returns basic information about the call interaction
- calls
- Get metadata on all Chat Messages
- Paginate through all chat messages in Affinity. Returns basic information about the chat message
- chat-messages
- Get all Companies
- Paginate through Companies in Affinity.
- companies
- Get a single Company
- Returns basic information and non-list-specific field data on the requested Company.
- companies
- Get field values on a single Company
- Paginate through field values on a single company.
- companies
- Get a single field value on a Company
- Retrieve a single field on a company. Returns basic information and the field value.
- companies
- Get a Company's List Entries
- Paginate through the List Entries (AKA rows) for the given Company across all Lists.
- companies
- Get a Company's Lists
- Paginate through all Lists where the given Company appears as an entry and that you have access to view.
- companies
- Get Notes for a Company
- Returns relevant notes for a given company which includes directly attached notes and notes attached to persons on this company.
- companies
- Get Relationships for a Company
- Returns the relationships for a given company, including the interaction score that measures
- companies
- Get metadata on Company Fields
- Returns metadata on non-list-specific Company Fields.
- companies
- Get dropdown options for a Company Field
- Returns the dropdown options for a specific dropdown or ranked-dropdown field on a Company.
- companies
- Get All Company Merges
- Retrieve paginated company merges for the organization.
- company-merges
- Get Company Merge
- Retrieve the status and details of a specific company merge.
- company-merges
- Get metadata on all Emails
- Paginate through all emails in Affinity. Returns basic information about the email interaction
- emails
- Get all field value changes
- Retrieve field value changes across all entities and fields in your Affinity workspace.
- field-value-changes
- Get Coworker Inferred Connections
- Returns inferred connections based on shared work history, grouped by the target person, strongest first.
- inferred-connections
- Get metadata on all Lists
- Paginate through all Lists in your organization that you have access to view.
- lists
- Get metadata on a single List
- Retrieve detailed information about a specific List you have access to view.
- lists
- Get metadata on a single List's Fields
- Returns metadata on the Fields available on a single List.
- lists
- Get dropdown options for a List Field
- Returns the dropdown options for a specific dropdown or ranked-dropdown field on a List.
- lists
- Get a dropdown option for a List Field
- Get a single dropdown option for a List Field.
- lists
- Get all List Entries on a List
- Paginate through the List Entries (AKA rows) on a given List.
- lists
- Get a single List Entry on a List
- Retrieve a single list entry.
- lists
- Get Field Value Changes on a List Entry
- Paginate through the historical value changes on the fields of a List Entry.
- lists
- Get field values on a single List Entry
- Paginate through all field values on a single list entry.
- lists
- Get a single field value
- Returns a single field value on a list entry.
- lists
- Get metadata on Saved Views
- Paginate through all Saved Views you have access to view for a specific List.
- lists
- Get metadata on a single Saved View
- Retrieve detailed information about a specific Saved View you have access to view.
- lists
- Get all List Entries on a Saved View
- Paginate through the List Entries (AKA rows) on a given Saved View.
- lists
- Get metadata on all Meetings
- Paginate through all Meetings in Affinity. Returns basic information about past and future meeting interactions
- meetings
- Get all Notes
- Returns all notes, with the exception of replies.
- notes
- Get a single Note
- Get a Note with a given id
- notes
- Get Companies attached to a Note
- Returns directly attached companies for a given Note.
- notes
- Get Opportunities attached to a Note
- Returns directly attached opportunities for a given Note.
- notes
- Get Persons attached to a Note
- Returns directly attached persons for a given Note.
- notes
- Get replies for a Note
- This endpoint returns reply notes for a given note id.
- notes
- Get all Opportunities
- Paginate through Opportunities in Affinity.
- opportunities
- Get a single Opportunity
- Returns basic information but **not** field data on the requested Opportunity.
- opportunities
- Get Notes for an Opportunity
- Returns Notes for a given Opportunity which includes directly attached notes and those attached to persons on this Opportunity.
- opportunities
- Get All Person Merges
- Retrieve paginated person merges for the organization.
- person-merges
- Get Person Merge
- Retrieve the status and details of a specific person merge.
- person-merges
- Get all Persons
- Paginate through Persons in Affinity.
- persons
- Get a single Person
- Returns basic information and non-list-specific field data on the requested Person.
- persons
- Get field values on a single Person
- Paginate through field values on a single person.
- persons
- Get a single field on a Person
- Retrieve a single field on a person. Returns basic information and the field value.
- persons
- Get a Person's List Entries
- Paginate through the List Entries (AKA rows) for the given Person across all Lists.
- persons
- Get a Person's Lists
- Paginate through all Lists where the given Person appears as an entry and that you have access to view.
- persons
- Get Notes for a Person
- Returns notes for a given person id which includes directly attached notes, notes on meetings this person attended, and notes where this person is mentioned.
- persons
- Get Relationships for a Person
- Returns the relationships for a given person, including the interaction score that measures the
- persons
- Get metadata on Person Fields
- Returns metadata on non-list-specific Person Fields.
- persons
- Get dropdown options for a Person Field
- Returns the dropdown options for a specific dropdown or ranked-dropdown field on a Person.
- persons
- Get all Reminders
- Returns a page of Reminders visible to the caller.
- reminders
- Get All Company Merge Tasks
- Retrieve paginated company merge tasks for the organization.
- tasks
- Get Company Merge Task
- Retrieve the status and details of a specific task for company merges.
- tasks
- Get All Person Merge Tasks
- Retrieve paginated person merge tasks for the organization.
- tasks
- Get Person Merge Task
- Retrieve the status and details of a specific task for person merges.
- tasks
- Get all Transcripts
- Paginate through all transcripts and return basic metadata only. Use the single transcript endpoint to fetch the entire transcript data.
- transcripts
- Get a single Transcript
- Get a transcript with a given id with the first 100 fragments of the transcript. Use the /fragments endpoint to fetch all fragments of the transcript.
- transcripts
- Get fragments of a transcript
- Get fragments of a transcript given a transcript id.
- transcripts
- Get all Users
- Paginate through internal Users in your organization.
- users
- Get a single User
- Returns information about a single internal User, including name, primary email
- users
- Perform batch operations on a company's fields
- Perform batch operations on a company's fields.
- companies
- Perform batch operations on a list entry's fields
- Perform batch operations on a list entry's fields.
- lists
- Perform batch operations on a person's fields
- Perform batch operations on a person's fields.
- persons
- Update a single field value on a Company
- Update a single field value on a company.
- companies
- Search Companies
- Search for Companies matching the given criteria.
- companies
- Initiate Company Merge
- Initiate a company merge to combine a duplicate company profile into a primary company profile.
- company-merges
- Send Feedback
- Send feedback to Affinity about a particular product area or feature.
- feedback
- Search Files by Keyword
- Search files by keyword. The scope of the search is controlled by the request body:
- files
- Create a List
- Create a new List.
- lists
- Create a dropdown option for a List Field
- Create a dropdown option for a List Field.
- lists
- Update a dropdown option for a List Field
- Update a dropdown option for a List Field.
- lists
- Update a single field value on a List Entry
- Update a single field value.
- lists
- Search List Entries
- Search for List Entries on a List matching the given criteria.
- lists
- Create a Note
- Create a new note. By default it is authored by the calling user; set `creator` to attribute
- notes
- Update a single Note
- Make an update to an existing note's body content or its entity associations.
- notes
- Search Notes by Keyword
- Search notes by keyword. The scope of the search is controlled by the request body:
- notes
- Initiate Person Merge
- Initiate a person merge to combine a duplicate person profile into a primary person profile.
- person-merges
- Update a single field value on a Person
- Update a single field value on a person.
- persons
- Search Persons
- Search for Persons matching the given criteria.
- persons
- Create a Reminder
- Creates a new Reminder. Exactly one of `company`, `person`, or `opportunity` must be provided.
- reminders
- Semantic Search
- Perform an AI-powered semantic search. Use the `entity-type` field in the request body to
- semantic-search
Affinity v2 integration, answered
- How do AI agents use Affinity v2 through Open Connector?
- Your user connects Affinity v2 once with one of its cataloged authentication methods. Open Connector stores the credential in an encrypted vault and exposes Affinity v2 tools to your agent over MCP or a typed API, with credentials injected server-side on each call.
- Is this a Affinity v2 MCP server?
- Yes. Open Connector can serve Affinity v2 as a named MCP server with a scoped allowlist and a per-user connection URL, so any MCP client can call Affinity v2 actions with credentials injected server-side.
- Where do Affinity v2 credentials live?
- In your own infrastructure. Open Connector keeps credentials in its own vault and injects them at call time, so they never leave your environment.
Give your agents Affinity v2 — keep the keys.
Open source, self-hostable, with Affinity v2 credentials that never leave your infrastructure. Run it from source today.