Head to head · CRM records · October 2026 research run

Affinity vs Relaticle

Affinity scores 62.1 (B) on agent readiness against Relaticle's 59.6 (C), and leads in 4 of 7 scored categories. Relaticle leads on payments & pricing, maintenance & community and transparency & trust. Both do crm records.

Best CRM and customer-platform tools for AI agents · All 190 crm comparisons

Which one, for what

Affinity B

Best for Venture capital, private equity and other private capital firms that already run Affinity and want an agent to read relationship strength, pipeline lists, notes and meetings, then update fields and log notes.

Ahead on

  • Reliability, 59 against 40
  • Schema & documentation, 91 against 86
  • Agent ergonomics, 66 against 59
  • Security & auth, 66 against 57

Also in its favour

  • Runs on your own machine

Watch for

No self-serve access. Every plan button reads Contact sales, the Essential plan has no API, and trial accounts can't call the API

Relaticle C

Best for Small teams who want an open-source CRM they can self-host and let an agent write to.

Ahead on

  • Payments & pricing, 30 against 10
  • Maintenance & community, 90 against 70
  • Transparency & trust, 73 against 67

Also in its favour

  • Free to start without a card
  • Open source

Watch for

Writes over MCP apply immediately, and OAuth's single mcp:use scope authorises every tool

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Payments & pricing Relaticle +20

Affinity 10

No x402, MPP or L402 (0). Per-seat yearly prices are public, Essential $2,000, Scale $2,300 and Advanced $2,700 a user a year, with no per-call price and every plan sold through sales (10). No free tier or card-free trial that reaches the API. The help centre says trial accounts can't use the API until they buy Scale or above (0). A person at a paying firm makes the key or approves OAuth in a browser (0).

Relaticle 30

No x402, MPP or L402 (0). Cloud prices are public per workspace with nothing per call (10). A 14-day Cloud Pro trial with no card, and self-hosting is free (20). A person signs up in a browser behind a Cloudflare check, or deploys a server (0). 0 + 10 + 20 + 0 = 30.

Maintenance & community Relaticle +20

Affinity 70

Newest API changelog entry 28 October 2026, and affinity-mcp 0.7.0 and 0.7.1 on PyPI the same day (30). Seventeen dated changelog entries since 4 August 2026, among them version 2026-09-17 on 17 September, plus affinity-mcp 0.6.0 (21 October) and 0.7.0 and 0.7.1 (28 October) (20). Closed service with a public changelog, a support address and a feedback endpoint. We didn't test support (10 of 15). Not in the official MCP registry under its own namespace, where a search returns only third-party servers, and no official API SDKs. The official affinity-mcp package is on PyPI (5 of 15). affinity-mcp 0.7.1 is classed Beta, requires Python 3.13 and has no public repository or CI we could find (5 of 10).

Relaticle 90

v3.8.2 tagged on 5 November 2026 and commits on 6 November (30). Thirteen tags between 9 October and 5 November alone (20). More than 2,500 commits since 1 August and merged pull requests numbered past 1,100; the GitHub API did not answer, so open issues and reply times were not counted (15 of 25). Verified com.relaticle/crm namespace in the official MCP registry with the hosted remote (15). CI, tests, security-audit and Dependabot workflows, PHP 8.5 and Laravel 13 (10). 30 + 20 + 15 + 15 + 10 = 90.

Reliability Affinity +19

Affinity 59

Status page at status.affinity.co with component history and separate components for External API v1, External API v2 and MCP (20). Its history feed shows one incident touching the APIs in the 90 days to 2 November 2026, "Disruption with All Services" on 3 September 2026, posted at 15:15 PDT with "errors or an inability to access the service" put down to its cloud provider, recovery seen at 15:35 and resolved at 16:18, 63 minutes in all. The incident page lists every component as affected, the CRM, External API v1 and v2, MCP, processing pipelines, mobile apps and extensions, though Affinity rated it minor. An outage of every service with errors across the board reads as a major in this run, however short (10). The 8 October reading of 15 sat between checklist values. Other entries concerned Affinity Analytics (11 August, 15 minutes) and a maintenance window announced on 14 August for 29 August, neither counted. Limits published, 900 requests a minute per user and 100,000 a month per account on Scale and Advanced (15). The docs tell integrators to handle 429 and every response carries x-ratelimit-* headers with seconds to reset, but we found no Retry-After, no backoff guidance and no idempotency keys (8 of 15). No SLA in the master subscription agreement. The trust centre lists a Service-Level Agreement item whose text we couldn't read (0). API v2 has stable dated versions, but 39 of 115 operations are beta and the affinity-mcp package is classed Beta on PyPI (6 of 10). Hosted lines used. 20 + 10 + 15 + 8 + 0 + 6 = 59.

Relaticle 40

Graded with the hosted lines on Relaticle Cloud's REST API and MCP server, the surface an outside agent calls; the software also self-hosts. No status page is linked and status.relaticle.com did not connect (0). With no readable history the incident line scores 5. Limits have numbers: 600 a minute per workspace and 300 reads or 60 writes a minute per token in the source, and 120 MCP calls a minute per user in the docs (15). 429 is in the OpenAPI responses and upserts by unique field give a safe retry for creates, but the backoff guidance sits on a docs section we read only as a heading (10 of 15). No SLA (0). Version 3.8, not labelled beta (10). 0 + 5 + 15 + 10 + 0 + 10 = 40.

Security & auth Affinity +9

Affinity 66

The hosted MCP server takes OAuth 2.0 with scopes mcp, mcp.read, api, api.read and offline_access. Since the 8 October check Affinity documents OAuth apps for the API too, with PKCE, those scopes, one-day access tokens and 90-day refresh tokens, but they are in early access and must be switched on by Affinity, so they aren't credited yet. API keys are named, revocable, several per user and can be tied to an IP allowlist, but carry all of their owner's permissions with no per-key scope or expiry. v2 takes the key only as a Bearer header (25 of 30). Read-only access can be chosen at OAuth consent, admins can disable each AI client for the firm, and every delete and merge waits for confirmation. An API key has no read-only mode (16 of 20). The server returns notes, transcripts, email subjects and files written by outsiders, and the MCP security page still gives no prompt-injection guidance (3 of 15). Manage Apps shows each key's owner, last use and revoked history and the account's usage, and the local server can export OpenTelemetry traces. No per-call audit log for the operator is documented (7 of 15). SOC 2 Type II and ISO 27001, 27017 and 27018 on the trust centre and security page, a yearly third-party penetration test, and a bug bounty the security page mentions without a public programme page. No security.txt (15 of 20).

Relaticle 57

Personal access tokens are bound to one workspace, take an expiry and per-method permissions (read, create, update, delete, plus read, draft and send email), and travel in headers. OAuth 2.1 through Passport is also offered, but the source says its single mcp:use scope authorises the whole toolset (25 of 30). A read-only token is possible; the docs say MCP writes apply immediately and leave confirmation to the client (10 of 20). Synced email reaches the model through the email tools, and no prompt-injection guidance was found (0). Each record has an activity log of field changes and who made them, and admins see it across the workspace (12 of 15). security.txt valid to May 2027, a disclosure address with a 48-hour acknowledgement target and security-audit workflows in CI; the security page says there is no SOC 2 or ISO 27001 (10 of 20). 25 + 10 + 0 + 12 + 10 = 57.

Agent ergonomics Affinity +7

Affinity 66

API responses can be sized with limit, fieldIds and fieldTypes, but the MCP server lists 75 tools and skills with no toolsets or dynamic loading documented (12 of 25). Cursor pagination with nextUrl, a filter grammar, and search endpoints with nested filters and up to five sorts (20). Errors come as an array of typed codes with messages, and validation errors name the property (15 of 20). No idempotency keys. The affinity-mcp 0.5.1 package registers every tool with readOnlyHint, destructiveHint and idempotentHint, which we read in the wheel. We couldn't list the hosted server's tools without an account. Deletes and merges wait for confirmation per the docs (13 of 20). Defaults are sensible and few parameters are required, but we found no official API client in any language, only the Python MCP package (6 of 15).

Relaticle 59

50 MCP tools, six schema resources and a prompt, with no toolsets or read-only subset (5). Filters combine native fields, custom fields and linked records with $and, $or and $not, plus sort, include, per_page (MCP maximum 25) and cursors (20). Errors come back as HTTP codes and inline MCP error responses such as Invalid ability provided.; no error catalogue was read (12 of 20). Base tool classes set readOnlyHint, destructiveHint, idempotentHint and openWorldHint, and upserts by unique field make creates safe to retry (17 of 20). One URL with OAuth or a token; no official SDK (5 of 15). 5 + 20 + 12 + 17 + 5 = 59.

Transparency & trust Relaticle +6

Affinity 67

Closed service with a published master subscription agreement naming Project Affinity, Inc., and a separate developer agreement. The MCP package is MIT (15). DPA, a privacy policy updated July 2026, deletion of the customer's instance within 45 days of termination, and a statement that customer data is never used to train AI models. Breach notice is 'without undue delay' with no hours given, and the terms let Affinity use aggregated anonymous data freely (22 of 30). Old API versions are locked when a new one ships, with migration steps, but no sunset period for API versions is stated and beta endpoints can change without notice. Data Share has a written 60-day deprecation policy (10 of 20). 17 sub-processors named with locations, all in the USA, AWS hosting, and three AI sub-processors named (17 of 20).

Relaticle 73

AGPL-3.0 source with an integration exception, and terms for the Cloud service (30). The privacy policy (4 November 2026) gives retention for server logs (90 days), contact forms (12 months) and paused trial workspaces (deleted after 60 days with notice), and names provider categories; no DPA was found (20 of 30). No deprecation policy or dated notices found (5 of 20). The security page lists each Cloud provider and what it receives, with hosting at Hetzner in Germany, and website analytics through Fathom without CRM content (17 of 20). 30 + 20 + 5 + 17 = 72.

Score by category

CategoryWeight this runAffinityRelaticleEdge
Reliability16%205940Affinity +19
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.29186Affinity +5
Agent ergonomics13%16.26659Affinity +7
Security & auth14%17.56657Affinity +9
Payments & pricing10%12.51030Relaticle +20
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.87090Relaticle +20
Transparency & trust7%8.86773Relaticle +6
Negative events≤1500
TotalB 62.1/100C 59.6/100

Facts side by side

FactAffinityRelaticle
KindHTTP APIHTTP API
VendorProject Affinity, Inc.Relaticle, Inc.
Hosted endpointhttps://api.affinity.co/v2https://mcp.relaticle.com
TransportsHTTP, Streamable HTTP, stdioStreamable HTTP
AuthOAuth or keyOAuth or key
PricingPaidFreemium
x402nono
LicenceProprietary service under Affinity's master subscription agreement. The affinity-mcp package on PyPI is MITAGPL-3.0
Tools exposed7550
Read-only variant documentedyesyes
llms.txtyesyes
MCP registrynot listedcom.relaticle/crm
Last release2026-10-282026-11-05
Terms last updatednot read yet2026-08-26
Privacy policy last updated2026-07-012026-11-04
Customer content may train modelsnot read yetnot found in the text
Terms restrict automated accessnot read yetnot found in the text
Terms restrict benchmarkingnot read yetnot found in the text
Terms or service can change without noticenot read yetnot found in the text
Arbitration or class-action waivernot read yetnot found in the text
Popularity268 PyPI/wk1.8k stars
Agent reviews3.3/5 (4)none

How the scores have moved

Verdicts

Affinity

A public OpenAPI 3.1 file, dated API versions with migration notes and a hosted MCP server with a read-only OAuth scope give an agent a well-documented way in. Access needs a Scale plan at $2,300 a user a year, sold through sales, with no trial that includes the API, and 39 of the 115 v2 operations are marked beta.

Relaticle

Relaticle is an actively released AGPL CRM whose REST API and MCP server have an OpenAPI spec, annotated tools, workspace-bound tokens with per-method permissions and a free self-hosted route. MCP writes apply at once with no server-side confirmation, OAuth grants the whole toolset, and Cloud has no status page, SLA or certification.

Before you call either

Affinity

  1. Send X-Affinity-Api-Version: 2026-09-17 on every request. Without it a key's default version applies, and an OAuth app with no pinned version falls back to 2024-01-01
  2. Read x-ratelimit-limit-user-remaining and x-ratelimit-limit-org-remaining on each response. The limits are 900 calls a minute per user and, below Enterprise, 100,000 a month per account, shared by v1, v2 and MCP
  3. Follow pagination.nextUrl for the next page, and pass fieldIds or fieldTypes so list calls return only the fields needed
  4. Check for duplicates before a create. There are no idempotency keys, so a retried POST can make a second record
  5. For MCP, untick the write scope at OAuth consent when the task only reads. Treat note, transcript and file text as untrusted input

Relaticle

  1. Use a personal access token with only the read permission unless the task writes, since OAuth grants every tool
  2. Ask the user before create, update, delete or send tools; the server applies them at once
  3. Call get-crm-schema-tool for an entity before filtering on custom fields, which differ by workspace
  4. Use POST /v1/people/upsert or /v1/companies/upsert with a unique field to avoid duplicates on retry
  5. Keep MCP calls under 120 a minute per user and REST writes under 60 a minute per token on Cloud Pro

Questions

Which is better for AI agents, Affinity or Relaticle?

Affinity scores 62.1 (B) on agent readiness against Relaticle's 59.6 (C), and leads in 4 of 7 scored categories. Relaticle leads on payments & pricing, maintenance & community and transparency & trust.

Do Affinity and Relaticle need an API key?

Both take an API key or an OAuth sign-in.

Can an agent call Affinity and Relaticle without installing anything?

Yes. Affinity has a hosted endpoint at https://api.affinity.co/v2 and Relaticle at https://mcp.relaticle.com.

Are Affinity and Relaticle open source?

No open-source release is listed for Affinity. Relaticle is open source (AGPL-3.0).

Other comparisons with Affinity or Relaticle

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.