Connect Affinity to AI agents

Connect Affinity to Claude, Codex, Cursor, or other AI agents for your entire team. Metorial security, governance, observability, and gives your team a unified Magic MCP url to connect.

Supported Tools

delete_field_value

Delete Field Value

Delete a field value from an entity in Affinity. This removes the custom field data for that entity.

set_field_value

Set Field Value

Create a new field value for an entity in Affinity. This sets a custom field's value on a person, organization, or opportunity. **Value formats by field type:** - **Text/Number**: String or number - **Date**: ISO 8601 date string - **Dropdown**: The dropdown option ID - **Person/Organization**: The entity ID - **Location**: Object with street, city, state, country, etc.

get_list_entries

Get List Entries

Retrieve entries from a specific Affinity list. Each entry represents a person, organization, or opportunity added to the list. Use this to see what entities belong to a given list.

add_list_entry

Add List Entry

Add an entity (person, organization, or opportunity) to an Affinity list. This creates a new list entry linking the entity to the list.

update_reminder

Update Reminder

Update an existing reminder in Affinity. Provide only the fields you want to change.

delete_reminder

Delete Reminder

Permanently delete a reminder from Affinity.

create_reminder

Create Reminder

Create a new reminder in Affinity, attached to a person, organization, or opportunity. Supports one-time and recurring reminders. **Reminder types:** 0 = one-time, 1 = recurring **Reset types (for recurring):** 0 = none, 1 = on email, 2 = on meeting, 3 = on any interaction

update_opportunity

Update Opportunity

Update an existing opportunity (deal) in Affinity. Provide only the fields you want to change.

search_opportunities

Search Opportunities

Search for opportunity (deal) records in Affinity. Filter by name or list. Returns matching opportunities with their associations.

delete_organization

Delete Organization

Permanently delete an organization record from Affinity. Global organizations from the Affinity database cannot be deleted.

list_notes

List Notes

Retrieve notes from Affinity, optionally filtered by person, organization, or opportunity. Notes can contain plain text or HTML formatting.

search_organizations

Search Organizations

Search for organization records in Affinity by name or domain. Returns matching organizations with their domains and person associations.

get_organization

Get Organization

Retrieve a single organization record by ID, including its domains, person associations, and list memberships.

list_reminders

List Reminders

Retrieve reminders from Affinity, optionally filtered by entity or owner. Supports one-time and recurring reminders that can auto-reset based on interaction activity.

update_field_value

Update Field Value

Update an existing field value in Affinity. You must know the field value ID, which you can get from "Get Field Values".

delete_opportunity

Delete Opportunity

Permanently delete an opportunity (deal) from Affinity. This removes it from its list and deletes associated data.

create_opportunity

Create Opportunity

Create a new opportunity (deal) in Affinity. Each opportunity must belong to a specific list. Optionally associate people and organizations.

create_note

Create Note

Create a new note in Affinity and associate it with one or more persons, organizations, or opportunities. Supports plain text and HTML content.

search_persons

Search Persons

Search for person records in Affinity by name or email. Returns matching contacts with their email addresses and organization associations. Use this to find existing contacts before creating new ones.

get_field_value_changes

Get Field Value Changes

Retrieve the history of changes to a specific field in Affinity. Useful for auditing status transitions, tracking deal pipeline progress, and understanding how data has evolved over time.

get_lists

Get Lists

Retrieve all lists in Affinity. Lists function as customizable spreadsheets for organizing people, organizations, or opportunities. Use this to discover available lists and their IDs for use with other tools.

create_person

Create Person

Create a new person record in Affinity. You must provide a first and last name, and can optionally include email addresses and organization associations.

update_organization

Update Organization

Update an existing organization record in Affinity. Provide only the fields you want to change. Global organizations (from the Affinity database) cannot be renamed.

get_person

Get Person

Retrieve a single person record by ID, including their emails, organization associations, and optionally interaction dates.

create_organization

Create Organization

Create a new organization record in Affinity. Provide a name and optionally a domain and person associations. If an organization with the same domain already exists in the global database, it may be linked automatically.

get_fields

Get Fields

Retrieve field definitions (custom columns) from Affinity. Fields can be global or specific to a list. Use this to discover available fields and their IDs before reading or writing field values. **Value types:** - **0** = Person, **1** = Organization, **2** = Dropdown, **3** = Number, **4** = Date, **5** = Location, **6** = Text, **7** = Ranked dropdown

get_entity_files

Get Entity Files

Retrieve files attached to a person, organization, or opportunity in Affinity. Lists file metadata including name, size, and uploader.

get_opportunity

Get Opportunity

Retrieve a single opportunity (deal) record by ID, including its list membership, person associations, and organization associations.

remove_list_entry

Remove List Entry

Remove an entity from an Affinity list by deleting its list entry. This does not delete the entity itself.

delete_person

Delete Person

Permanently delete a person record from Affinity. This also removes them from all lists and deletes associated data.

get_interactions

Get Interactions

Retrieve interaction records (emails, meetings, calls, chat messages) from Affinity. Filter by person, organization, opportunity, or interaction type. **Interaction types:** - **0** = Email - **1** = Event/Meeting - **2** = Phone call - **3** = Chat message

update_person

Update Person

Update an existing person record in Affinity. Provide only the fields you want to change. Emails and organization associations will be replaced entirely if provided.

update_note

Update Note

Update the content of an existing note in Affinity.

get_relationship_strengths

Get Relationship Strengths

Query relationship strength scores between internal team members and external contacts. Scores are computed from email, call, and meeting activity and are recalculated daily. Useful for identifying who on your team has the strongest connection to a given contact.

delete_note

Delete Note

Permanently delete a note from Affinity.

get_field_values

Get Field Values

Retrieve field values (custom data) for entities in Affinity. Filter by person, organization, opportunity, list entry, or specific field. Returns all custom field data associated with the entity.

More integrations teams use with Affinity

Slack

Slack: connect with bot OAuth or user OAuth. Send, update, delete, and schedule messages; list and cancel scheduled messages; open DMs and group DMs; manage conversations, members, files, reactions, pins, bookmarks, reminders, user groups, and user status; search messages and files with user scopes; and retrieve user, conversation, and workspace info.

Sharepoint

Manage SharePoint sites, document libraries, lists, and files. Create, read, update, and delete lists and list items with custom columns. Upload, download, move, copy, and version files in document libraries. Search across sites, files, folders, lists, and list items using Microsoft Search. Manage permissions at site, list, and item levels with granular access control. Define and manage content types and site columns. Subscribe to webhooks for list and library change notifications. Retrieve site properties and search for sites across Microsoft 365.

Hubspot

Create, read, update, and delete CRM objects including contacts, companies, deals, tickets, and custom objects. Manage associations between CRM records. Track engagements such as calls, emails, meetings, notes, and tasks. Send transactional and marketing emails, manage campaigns, and handle subscription preferences. Build and manage marketing workflows, sequences, and automation actions. Manage CMS content including blog posts, landing pages, and HubDB tables. Handle commerce data including products, orders, invoices, quotes, and payments. Create and manage contact lists for segmentation. Configure deal, ticket, and order pipelines with custom stages. Search and filter CRM records. Bulk import and export CRM data. Manage users, teams, and account settings. Subscribe to webhooks for real-time notifications on object creation, deletion, property changes, merges, and association changes.

Salesforce

Manage CRM data including Accounts, Contacts, Leads, Opportunities, Cases, and custom objects. Create, read, update, and delete records. Query data using SOQL and search across objects using SOSL. Perform bulk data operations for large-scale imports, exports, and migrations. Execute composite requests to batch multiple operations in a single API call. Access analytics, reports, and dashboards. Manage files and attachments associated with records. Interact with Chatter feeds, posts, and groups for social collaboration. Subscribe to real-time change events via Change Data Capture and Platform Events. Manage org metadata including custom objects, fields, layouts, and workflows. Query data using GraphQL for precise data retrieval across related objects.

Apolloio

Search and prospect B2B contacts and companies from a database of over 275 million people and 70 million organizations. Enrich people and company data with emails, phone numbers, and firmographic details. Create and manage contacts, accounts, deals, and tasks. Add contacts to email sequences and manage sequence statuses. Log and search call records. Perform bulk operations for contact creation, account creation, task creation, and data enrichment.

Microsoft Outlook

Send, read, reply to, forward, and manage email messages in user mailboxes. Organize messages into folders, apply categories, flags, and importance levels. Manage file and item attachments. Create, update, delete, and respond to calendar events and meetings. Find available meeting times, manage attendees, handle recurrence, and work with shared or delegated calendars. Create, read, update, and delete contacts, organize them into contact folders, and manage contact photos. Manage tasks and task lists via Microsoft To Do, including due dates, reminders, recurrence, and checklist items. Subscribe to webhook notifications for changes to messages, calendar events, and contacts. Support for Focused Inbox, @-mentions, mail tips, send-on-behalf, and send-as capabilities.

Technical notes for Affinity

Manage contacts, organizations, and deal pipelines in a relationship intelligence CRM. Create, search, update, and delete people, organizations, and opportunities. Track interactions including emails, meetings, and calls. Manage custom lists with configurable fields and field values. Query relationship strength scores between team members and external contacts. Create and manage notes, file attachments, and reminders on any entity. Access enrichment data from Affinity's proprietary database. Subscribe to webhooks for real-time notifications on record changes, list updates, and field value modifications.

Connect Affinity to production AI agents

See how Metorial gives Affinity access the governance, tracing, and security controls teams need.

Frequently asked questions

Common questions about connecting Affinity to AI agents with Metorial.

  1. Can Metorial connect Affinity to AI agents?
    Yes. Metorial connects AI agents to Affinity through a governed integration layer, so teams can use the provider while keeping access controlled and observable.
  2. Metorial is MCP compatible and lets teams expose approved provider tools to MCP-capable agents and clients through a controlled access layer.
  3. Metorial applies policies across users, groups, providers, agents, and individual tools, then records the context around every agent interaction.
  4. Yes. Metorial records provider activity so teams can inspect tool calls, troubleshoot integrations, and give security teams the visibility they need.