{
  "data": {
    "a": {
      "slug": "freshsales",
      "name": "Freshsales API",
      "vendor": "Freshworks",
      "vendorUrl": "https://www.freshworks.com/crm/sales/",
      "kind": "http-api",
      "category": "crm",
      "summary": "REST API for Freshsales, the Freshworks sales CRM.",
      "url": "https://www.anchorterminal.com/tools/freshsales",
      "markdownUrl": "https://www.anchorterminal.com/tools/freshsales.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/freshsales.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/freshsales.json",
      "transports": [
        "http"
      ],
      "packages": [],
      "auth": "api-key",
      "authNotes": "Per-user API key from Profile Settings, sent as `Authorization: Token token=\u003cAPI_KEY\u003e`. Requests go to `https://\u003cbundle-alias\u003e.myfreshworks.com/crm/sales/api/`, and the bundle alias is shown under the key. The key acts with that user's rights; there are no scoped keys.",
      "pricing": "paid",
      "pricingNotes": "21-day trial of the full CRM. Growth $11 a user a month billed monthly or $9 billed yearly, Pro $47 or $39, Enterprise $71 or $59. Add-ons include branded documents at $19 a user a month and Freddy AI Agent at $49 per 100 sessions (https://www.freshworks.com/crm/pricing/).",
      "priceSummary": "$9 / seat-mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No payments. API access follows the Freshsales subscription.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developers.freshworks.com/crm/api/",
      "capabilities": [
        "crm.records",
        "crm.pipeline",
        "crm.activities",
        "crm.search",
        "crm.webhooks"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "webhooks",
        "no-card"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 40.8,
        "grade": "E",
        "agentReady": false,
        "rank": 421,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 10,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 48,
          "maintenance": 5,
          "payments": 30,
          "reliability": 51,
          "schema": 27,
          "security": 44,
          "transparency": 74
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Contact upsert and bulk upsert of up to 100 records make creates safe to retry. No MCP server for Freshsales.",
        "strengths": [
          "Contact upsert and bulk upsert of up to 100 records make creates safe to retry",
          "Published limit of 1,000 requests an hour per account",
          "HackerOne disclosure programme and a security.txt with contact and policy",
          "Audit logs on the Enterprise plan",
          "Privacy notice states retention periods and links subprocessor and hosting pages"
        ],
        "weaknesses": [
          "No MCP server for Freshsales",
          "No OpenAPI, llms.txt or API changelog",
          "Per-user key with no scopes and no OAuth for the CRM API",
          "1,000 requests an hour shared by the whole account",
          "Status history not readable without JavaScript"
        ],
        "agentNotes": [
          "Build the base URL from the bundle alias shown under the API key, `https://\u003calias\u003e.myfreshworks.com/crm/sales/api/`",
          "Use `/api/contacts/upsert` rather than create, so a retry updates instead of duplicating",
          "Budget calls, since 1,000 an hour covers the whole account and 429s carry no Retry-After",
          "Add `include=owner,sales_accounts` to pull related records in one call",
          "Expect to see only what the key owner's role can see"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 40.8
          }
        ],
        "editorialScores": {
          "ergonomics": 48,
          "maintenance": 5,
          "payments": 30,
          "reliability": 51,
          "schema": 27,
          "security": 44,
          "transparency": 57
        },
        "provenanceScore": 90
      },
      "connect": {
        "http": "curl https://$FRESHSALES_BUNDLE.myfreshworks.com/crm/sales/api/contacts/filters \\\n  -H \"Authorization: Token token=$FRESHSALES_API_KEY\" -H \"Content-Type: application/json\""
      },
      "letme": {
        "capability": "https://letme.dev/crm.records",
        "tool": "https://letme.dev/freshsales"
      },
      "sameCompany": [
        "freshdesk"
      ],
      "area": "business",
      "unitPrices": [
        {
          "item": "Growth",
          "unit": "seat-month",
          "usd": 9,
          "note": "billed yearly; $11 billed monthly"
        },
        {
          "item": "Pro",
          "unit": "seat-month",
          "usd": 39,
          "note": "billed yearly; $47 billed monthly"
        },
        {
          "item": "Enterprise",
          "unit": "seat-month",
          "usd": 59,
          "note": "billed yearly; $71 billed monthly"
        }
      ],
      "provenance": {
        "legalEntity": "Freshworks Inc.",
        "domain": "freshworks.com",
        "domainRegistered": "1998-02-13",
        "domainNote": "API calls go to per-account hosts under myfreshworks.com, a second Freshworks domain.",
        "endpointOnVendorDomain": true,
        "terms": "https://www.freshworks.com/terms/",
        "privacy": "https://www.freshworks.com/privacy/",
        "statusPage": "https://status.freshworks.com",
        "changelog": "",
        "securityTxt": "valid",
        "checked": "2026-09-30",
        "notes": [
          "security.txt answers with a contact and a HackerOne note but has no Expires field."
        ],
        "score": 90
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/freshsales.json",
      "live": {
        "slug": "freshsales",
        "vendorStatus": {
          "page": "https://status.freshworks.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-04T21:40:03.722001357Z"
        },
        "securityTxt": {
          "url": "https://freshworks.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-10-04T15:15:50.200747954Z"
        },
        "domain": {
          "domain": "freshworks.com",
          "registered": "1998-02-13",
          "source": "https://rdap.verisign.com/com/v1/domain/freshworks.com",
          "checkedAt": "2026-10-04T13:05:46.74376202Z"
        },
        "pages": [
          {
            "url": "https://www.freshworks.com/crm/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:50:20.525100418Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "885302fe412d"
          }
        ],
        "updatedAt": "2026-10-04T21:40:03.722001357Z"
      }
    },
    "b": {
      "slug": "twenty",
      "name": "Twenty API + MCP",
      "vendor": "Twenty",
      "vendorUrl": "https://twenty.com",
      "kind": "http-api",
      "category": "crm",
      "summary": "Open-source CRM, hosted at twenty.com or self-hosted with Docker.",
      "url": "https://www.anchorterminal.com/tools/twenty",
      "markdownUrl": "https://www.anchorterminal.com/tools/twenty.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/twenty.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/twenty.json",
      "repo": "https://github.com/twentyhq/twenty",
      "license": "AGPL-3.0",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.twenty.com/rest",
      "packages": [
        {
          "registry": "npm",
          "name": "twenty-sdk"
        }
      ],
      "auth": "mixed",
      "authNotes": "Bearer API key made under Settings, shown once, and optionally bound to a role to limit what it can touch. OAuth for apps acting for users. The MCP endpoint (https://\u003cworkspace\u003e/mcp) takes OAuth with dynamic client registration or the same API key in the Authorization header.",
      "pricing": "freemium",
      "pricingNotes": "Self-hosting the AGPL core is free (the Pro plan at $0 self-hosted, Organization $19 a user a month yearly or $25 monthly). Cloud Pro $9 a user a month yearly or $12 monthly, Cloud Organization $19 or $25 (adds SSO, row-level permissions and a custom domain), Enterprise from $50,000 a year with an SLA. API, webhooks and MCP are on every cloud plan. The server's billing defaults give a 30-day trial with a card or 7 days without one (https://twenty.com/pricing).",
      "priceSummary": "$9 / seat-mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No payments. Access follows the cloud plan or your own server.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 57739,
        "npmWeekly": 25528,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://docs.twenty.com",
      "llmsTxt": "https://docs.twenty.com/llms.txt",
      "capabilities": [
        "crm.records",
        "crm.pipeline",
        "crm.activities",
        "crm.search",
        "crm.webhooks"
      ],
      "tags": [
        "hosted",
        "open-source",
        "self-hosted",
        "local",
        "mcp",
        "llms-txt",
        "webhooks",
        "typescript",
        "freemium"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 65.9,
        "grade": "B",
        "agentReady": false,
        "rank": 166,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 3,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 97,
          "payments": 30,
          "reliability": 46,
          "schema": 88,
          "security": 58,
          "transparency": 80
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Six MCP meta-tools by default with schemas loaded on demand, and `?mode=direct` for clients that load lazily. No status page found.",
        "strengths": [
          "Six MCP meta-tools by default with schemas loaded on demand, and `?mode=direct` for clients that load lazily",
          "Per-workspace OpenAPI for core and metadata, custom objects included",
          "API keys carry a required expiry, revocation and an optional role binding",
          "AGPL-3.0 core, self-hostable, with fourteen release tags in September 2026",
          "Subprocessors with locations kept in a DPA file that CI syncs weekly"
        ],
        "weaknesses": [
          "No status page found",
          "`execute_tool` isn't flagged destructive even though it can delete records, objects and fields",
          "Cloud limit of 100 requests a minute",
          "Self-hosted telemetry is on by default and sends sign-up emails and names",
          "No SOC 2 or bug bounty found, and the trust centre renders client-side"
        ],
        "agentNotes": [
          "Call `learn_tools` with every tool name you need in one call before `execute_tool`",
          "Build CRUD names from the grammar (`find_many_companies`, `upsert_many_people`) instead of browsing the catalogue",
          "Pass one category to `get_tool_catalog`, since an unfiltered call returns hundreds of operations",
          "Load the matching skill before any workflow or metadata tool, as the server instructions require",
          "Batch up to 60 records a call to stay inside 100 requests a minute"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 65.9
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 97,
          "payments": 30,
          "reliability": 46,
          "schema": 88,
          "security": 58,
          "transparency": 69
        },
        "provenanceScore": 90
      },
      "connect": {
        "http": "curl \"https://api.twenty.com/rest/companies?limit=5\" -H \"Authorization: Bearer $TWENTY_API_KEY\"",
        "claudeCode": "claude mcp add --transport http twenty https://\u003cyour-workspace\u003e.twenty.com/mcp",
        "config": {
          "mcpServers": {
            "twenty": {
              "headers": {
                "Authorization": "Bearer $TWENTY_API_KEY"
              },
              "type": "streamable-http",
              "url": "https://\u003cyour-workspace\u003e.twenty.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/crm.records",
        "tool": "https://letme.dev/twenty"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Cloud Pro",
          "unit": "seat-month",
          "usd": 9,
          "note": "billed yearly; API and MCP on every plan"
        },
        {
          "item": "Cloud Organization",
          "unit": "seat-month",
          "usd": 19,
          "note": "billed yearly"
        },
        {
          "item": "Self-hosted",
          "unit": "month",
          "usd": 0,
          "note": "AGPL core, you pay for your own servers"
        }
      ],
      "provenance": {
        "legalEntity": "Twenty.com PBC",
        "domain": "twenty.com",
        "domainRegistered": "2004-09-01",
        "domainNote": "twenty.com was registered in 2004, long before the Twenty project started in 2022.",
        "endpointOnVendorDomain": true,
        "terms": "https://twenty.com/terms",
        "privacy": "https://twenty.com/privacy-policy",
        "statusPage": "",
        "changelog": "https://twenty.com/releases",
        "securityTxt": "valid",
        "checked": "2026-10-01",
        "notes": [
          "status.twenty.com serves the Twenty app shell rather than a status page, and the website links only a trust centre (trust.twenty.com).",
          "security.txt has Contact and Policy lines but no Expires field."
        ],
        "score": 90
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/twenty.json",
      "live": {
        "slug": "twenty",
        "probe": {
          "target": "https://api.twenty.com/rest",
          "method": "get",
          "lastAt": "2026-10-05T02:30:03.993048181Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 90,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 99.91,
          "p50ms24h": 74,
          "p95ms24h": 209,
          "samples24h": 273,
          "samples30d": 1131,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 247
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 29,
              "ok": 29
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.twenty.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-01T20:17:49.821013448Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "twentyhq/twenty",
            "version": "twenty/v2.44.0",
            "released": "2026-10-01",
            "seenAt": "2026-10-04T16:42:22.870176896Z"
          },
          {
            "registry": "npm",
            "name": "twenty-sdk",
            "version": "2.45.0",
            "seenAt": "2026-10-04T16:42:22.066950438Z"
          }
        ],
        "githubStars": 57896,
        "npmWeekly": 32679,
        "securityTxt": {
          "url": "https://twenty.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-10-04T15:15:59.502084192Z"
        },
        "llmsTxt": {
          "url": "https://docs.twenty.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:18:18.626307898Z"
        },
        "domain": {
          "domain": "twenty.com",
          "registered": "2004-09-01",
          "source": "https://rdap.verisign.com/com/v1/domain/twenty.com",
          "checkedAt": "2026-10-04T13:05:48.954488756Z"
        },
        "pages": [
          {
            "url": "https://twenty.com/releases",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-04T15:48:37.647244998Z",
            "changedAt": "2026-10-04T15:48:37.647244998Z",
            "fingerprint": "a8d1598d57e8"
          },
          {
            "url": "https://twenty.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:48:33.569910867Z",
            "changedAt": "2026-10-04T15:48:33.569910867Z",
            "fingerprint": "b17dad6a7c11"
          },
          {
            "url": "https://twenty.com/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:48:35.738858251Z",
            "changedAt": "2026-10-04T15:48:35.738858251Z",
            "fingerprint": "eb34febd4e94"
          },
          {
            "url": "https://twenty.com/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:48:39.746000961Z",
            "changedAt": "2026-10-04T15:48:39.746000961Z",
            "fingerprint": "7a7ae8c6487c"
          }
        ],
        "updatedAt": "2026-10-05T02:30:03.993048181Z"
      }
    },
    "summary": "Twenty API + MCP has a score of 65.9 (B) against Freshsales API's 40.8 (E). Both do crm records. The largest gap is maintenance \u0026 community, 92 points."
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/freshsales-vs-twenty",
    "json": "https://www.anchorterminal.com/compare/freshsales-vs-twenty.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/freshsales-vs-twenty.md",
    "slim": "https://www.anchorterminal.com/compare/freshsales-vs-twenty.min.md"
  },
  "markdown": "Twenty API + MCP has a score of 65.9 (B) against Freshsales API's 40.8 (E). Both do crm records. The largest gap is maintenance \u0026 community, 92 points.\n\n- Freshsales API: grade E, 40.8/100, rank #421 of 452. Markdown https://www.anchorterminal.com/tools/freshsales.md · JSON https://www.anchorterminal.com/api/v1/tools/freshsales.json\n- Twenty API + MCP: grade B, 65.9/100, rank #166 of 452. Markdown https://www.anchorterminal.com/tools/twenty.md · JSON https://www.anchorterminal.com/api/v1/tools/twenty.json\n\n## Which one, for what\n\nPick Freshsales API for reliability (+5).\n\nPick Twenty API + MCP for schema \u0026 documentation (+61), agent ergonomics (+32), security \u0026 auth (+14), maintenance \u0026 community (+92), transparency \u0026 trust (+6).\n\n## Score by category\n\n| Category | Weight | Freshsales API | Twenty API + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 51 | 46 | Freshsales API +5 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 27 | 88 | Twenty API + MCP +61 |\n| Agent ergonomics | 13% (16.2 this run) | 48 | 80 | Twenty API + MCP +32 |\n| Security \u0026 auth | 14% (17.5 this run) | 44 | 58 | Twenty API + MCP +14 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 30 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 5 | 97 | Twenty API + MCP +92 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 74 | 80 | Twenty API + MCP +6 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **40.8 · E** | **65.9 · B** | |\n\n## Facts side by side\n\n| Fact | Freshsales API | Twenty API + MCP |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Freshworks | Twenty |\n| Hosted endpoint | no (local only) | `https://api.twenty.com/rest` |\n| Transports | HTTP | HTTP, Streamable HTTP |\n| Auth | API key | OAuth or key |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Licence | none | AGPL-3.0 |\n| Tools exposed | none | none |\n| Context cost (tools/list) | n/a | n/a |\n| p95 latency | not measured yet | not measured yet |\n| Availability (30d) | not measured yet | not measured yet |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| MCP registry | not listed | not listed |\n| Last release | none | 2026-09-30 |\n| Popularity | none | 58k stars, 26k npm/wk |\n| Agent reviews | 2/5 (2) | 3.5/5 (2) |\n\n## Verdicts\n\n**Freshsales API.** Contact upsert and bulk upsert of up to 100 records make creates safe to retry. No MCP server for Freshsales.\n\n**Twenty API + MCP.** Six MCP meta-tools by default with schemas loaded on demand, and `?mode=direct` for clients that load lazily. No status page found.\n\n## Before you call either\n\n### Freshsales API\n\n1. Build the base URL from the bundle alias shown under the API key, `https://\u003calias\u003e.myfreshworks.com/crm/sales/api/`\n2. Use `/api/contacts/upsert` rather than create, so a retry updates instead of duplicating\n3. Budget calls, since 1,000 an hour covers the whole account and 429s carry no Retry-After\n4. Add `include=owner,sales_accounts` to pull related records in one call\n5. Expect to see only what the key owner's role can see\n\n### Twenty API + MCP\n\n1. Call `learn_tools` with every tool name you need in one call before `execute_tool`\n2. Build CRUD names from the grammar (`find_many_companies`, `upsert_many_people`) instead of browsing the catalogue\n3. Pass one category to `get_tool_catalog`, since an unfiltered call returns hundreds of operations\n4. Load the matching skill before any workflow or metadata tool, as the server instructions require\n5. Batch up to 60 records a call to stay inside 100 requests a minute\n\n## Other comparisons with Freshsales API or Twenty API + MCP\n\n- [Attio API + MCP vs Freshsales API](https://www.anchorterminal.com/compare/attio-vs-freshsales.md)\n- [Attio API + MCP vs Twenty API + MCP](https://www.anchorterminal.com/compare/attio-vs-twenty.md)\n- [Close API + MCP vs Freshsales API](https://www.anchorterminal.com/compare/close-vs-freshsales.md)\n- [Close API + MCP vs Twenty API + MCP](https://www.anchorterminal.com/compare/close-vs-twenty.md)\n- [Copper API vs Freshsales API](https://www.anchorterminal.com/compare/copper-vs-freshsales.md)\n- [Copper API vs Twenty API + MCP](https://www.anchorterminal.com/compare/copper-vs-twenty.md)\n- [folk API + MCP vs Freshsales API](https://www.anchorterminal.com/compare/folk-vs-freshsales.md)\n- [folk API + MCP vs Twenty API + MCP](https://www.anchorterminal.com/compare/folk-vs-twenty.md)\n- [Freshsales API vs HubSpot API + MCP](https://www.anchorterminal.com/compare/freshsales-vs-hubspot-mcp.md)\n- [Freshsales API vs Pipedrive API + MCP](https://www.anchorterminal.com/compare/freshsales-vs-pipedrive.md)\n- [Freshsales API vs Salesforce API + MCP](https://www.anchorterminal.com/compare/freshsales-vs-salesforce.md)\n- [Freshsales API vs Streak API + MCP](https://www.anchorterminal.com/compare/freshsales-vs-streak.md)\n- [HubSpot API + MCP vs Twenty API + MCP](https://www.anchorterminal.com/compare/hubspot-mcp-vs-twenty.md)\n- [Pipedrive API + MCP vs Twenty API + MCP](https://www.anchorterminal.com/compare/pipedrive-vs-twenty.md)\n- [Salesforce API + MCP vs Twenty API + MCP](https://www.anchorterminal.com/compare/salesforce-vs-twenty.md)\n- [Streak API + MCP vs Twenty API + MCP](https://www.anchorterminal.com/compare/streak-vs-twenty.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-05",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Freshsales API vs Twenty API + MCP",
        "url": ""
      }
    ],
    "description": "Twenty API + MCP has a score of 65.9 (B) against Freshsales API's 40.8 (E). Both do crm records. The largest gap is maintenance \u0026 community, 92 points. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Freshsales API E 40.8",
      "Twenty API + MCP B 65.9",
      "scores"
    ],
    "h1": "Freshsales API vs Twenty API + MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-freshsales-vs-twenty.png",
    "path": "/compare/freshsales-vs-twenty",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Freshsales API vs Twenty API + MCP for AI agents, E 40.8 vs B 65.9",
    "toc": null,
    "updated": "2026-10-05",
    "url": "https://www.anchorterminal.com/compare/freshsales-vs-twenty"
  },
  "tokens": {
    "markdown": 1550,
    "slim": 330
  },
  "version": 1
}
