{
  "data": {
    "a": {
      "slug": "didit",
      "name": "Didit",
      "vendor": "Didit Identity Spain, S.L.",
      "vendorUrl": "https://didit.me",
      "kind": "http-api",
      "category": "identity-verification",
      "summary": "Didit is a hosted identity verification service for document, liveness, face match, sanctions screening and business registry checks. Developers reach it through a REST API with an OpenAPI spec, a hosted MCP server and client SDKs.",
      "url": "https://www.anchorterminal.com/tools/didit",
      "markdownUrl": "https://www.anchorterminal.com/tools/didit.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/didit.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/didit.json",
      "repo": "https://github.com/didit-protocol/mcp",
      "license": "Proprietary service under Didit's Business Terms and Conditions. The MCP server in didit-protocol/mcp is MIT",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://verification.didit.me",
      "packages": [
        {
          "registry": "npm",
          "name": "@didit-protocol/mcp-server"
        },
        {
          "registry": "npm",
          "name": "@didit-protocol/sdk-web"
        },
        {
          "registry": "npm",
          "name": "@didit-protocol/sdk-react-native"
        }
      ],
      "auth": "mixed",
      "authNotes": "Self-serve. The REST API takes an application API key in the `x-api-key` header. A key comes from the Business Console or from the registration API on `apx.didit.me`, which emails a 6-character code and returns the key with no browser step. Each application has a primary key with full access and any number of named keys with read or write access per resource, workflow and status limits, an IP allowlist and an expiry date. Named keys are created, rotated and revoked only in the console. The hosted MCP server uses OAuth 2.1 with PKCE and dynamic client registration, with the scopes `didit:management` and `didit:verification`, and accepts no API key.",
      "pricing": "usage",
      "pricingNotes": "Pay per completed check from prepaid USD credits, with no contract or minimum and no card needed to sign up. In a workflow, ID verification is $0.15, passive liveness $0.10, face match $0.05, device and IP analysis $0.03 and AML screening $0.20. Until 1 November 2026 each organisation gets 500 free checks a month for each of the first four. From 1 November that becomes $10 of credit a month, with optional Growth ($99 a month) and Scale ($299 a month) plans. Sandbox applications are not billed (https://docs.didit.me/getting-started/pricing, checked 2026-10-08).",
      "priceSummary": "$0.15 / tx",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the OpenAPI spec, the docs index or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 156,
      "popularity": {
        "githubStars": 0,
        "npmWeekly": 27338,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.didit.me",
      "llmsTxt": "https://docs.didit.me/llms.txt",
      "openapi": "https://docs.didit.me/openapi-25.json",
      "registryName": "me.didit/mcp",
      "capabilities": [
        "kyc.identity",
        "kyc.documents",
        "kyc.screening",
        "kyc.business",
        "kyc.cases"
      ],
      "tags": [
        "hosted",
        "api-key",
        "oauth",
        "mcp",
        "webhooks",
        "openapi",
        "llms-txt",
        "free-tier",
        "no-card",
        "sandbox",
        "status-page",
        "sla",
        "soc2",
        "iso27001"
      ],
      "lastRelease": "2026-10-08",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 75,
        "grade": "BB",
        "agentReady": true,
        "rank": 54,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 69,
          "maintenance": 82,
          "payments": 60,
          "reliability": 80,
          "schema": 88,
          "security": 76,
          "transparency": 63
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "A self-serve verification API with public per-check prices, key registration by API, scoped keys and a 365-day audit log. The status page shows three incidents marked major between 22 July and 4 September 2026, each a partial outage of the core APIs, and the sub-processor list isn't public.",
        "bestFor": "A team that wants document, liveness, screening and business registry checks from one API with public prices and no sales step, and an agent that has to set itself up.",
        "strengths": [
          "An account and API key can be created by API at `apx.didit.me/auth/v2/programmatic/register/`, with an emailed code and no browser step",
          "Public OpenAPI 3.0.0 spec with 256 operations, plus llms.txt and a Markdown copy of every docs page",
          "Named API keys take read or write access per resource, workflow limits, an IP allowlist and an expiry date, and rotation keeps the old secret for 24 hours",
          "429 responses carry `Retry-After`, limits are published per scope, and 31 operations document an `Idempotency-Key` header or a reuse rule",
          "Per-check prices are public, charged only when a check finishes, with 500 free checks a month per core feature until 1 November 2026"
        ],
        "weaknesses": [
          "Three incidents marked major on status.didit.me from 22 July to 4 September 2026, each a partial outage of the core APIs traced to the primary database",
          "No server-side SDK in any language. The published SDKs are capture clients for web, iOS, Android, React Native and Flutter",
          "The data processing addendum says the sub-processor list is published at `/terms/sub-processors`, but that address shows the legal index, which says the list is sent after a signed NDA",
          "Verification data is used for model training by default until an organisation owner turns it off in the console",
          "The hosted MCP server lists 156 tools to a signed-in user, 23 of them destructive, and role checks run in a mode that logs without hiding tools by default"
        ],
        "agentNotes": [
          "Register with `POST https://apx.didit.me/auth/v2/programmatic/register/`, then `verify-email` with the emailed 6-character code. Use a real inbox, because reserved test domains return 500.",
          "Send the key as `x-api-key` to `https://verification.didit.me/v3/`. The JWT from registration works only on `apx.didit.me`.",
          "Create a workflow before `POST /v3/session/`. `workflow_id` is the only required field, and an unfinished session with the same `vendor_data` is returned again.",
          "Read results from webhooks and use `GET /v3/session/{sessionId}/decision/` for back-fill. Every per-feature result is a plural array.",
          "The MCP server at `https://mcp.didit.me/mcp` takes OAuth sign-in only, never an API key. Approve `didit:verification` alone when the task doesn't change workflows or keys."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 75
          }
        ],
        "editorialScores": {
          "ergonomics": 69,
          "maintenance": 82,
          "payments": 60,
          "reliability": 80,
          "schema": 88,
          "security": 76,
          "transparency": 53
        },
        "provenanceScore": 73
      },
      "connect": {
        "http": "curl -X POST https://verification.didit.me/v3/session/ \\\n  -H \"x-api-key: $DIDIT_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"workflow_id\":\"\u003cWORKFLOW_ID\u003e\",\"vendor_data\":\"user-42\",\"callback\":\"https://myapp.com/return\"}'",
        "claudeCode": "claude mcp add --transport http didit https://mcp.didit.me/mcp",
        "config": {
          "mcpServers": {
            "didit": {
              "url": "https://mcp.didit.me/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/kyc.identity",
        "tool": "https://letme.dev/didit"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "ID verification in a workflow (document capture)",
          "unit": "tx",
          "usd": 0.15,
          "note": "500 free a month until 1 November 2026"
        },
        {
          "item": "Passive liveness in a workflow",
          "unit": "tx",
          "usd": 0.1,
          "note": "500 free a month until 1 November 2026"
        },
        {
          "item": "Face match 1:1 in a workflow",
          "unit": "tx",
          "usd": 0.05,
          "note": "500 free a month until 1 November 2026"
        },
        {
          "item": "Device and IP analysis in a workflow",
          "unit": "tx",
          "usd": 0.03,
          "note": "500 free a month until 1 November 2026"
        },
        {
          "item": "AML screening",
          "unit": "tx",
          "usd": 0.2,
          "note": "no free allowance"
        },
        {
          "item": "Proof of address",
          "unit": "tx",
          "usd": 0.2,
          "note": "no free allowance"
        },
        {
          "item": "KYB registry, per selected company (Lite profile)",
          "unit": "tx",
          "usd": 2,
          "note": "search is charged separately at up to $0.50"
        }
      ],
      "provenance": {
        "legalEntity": "Didit Identity Spain, S.L.",
        "domain": "didit.me",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://didit.me/terms/business/",
        "privacy": "https://didit.me/terms/privacy-policy/",
        "statusPage": "https://status.didit.me",
        "changelog": "https://docs.didit.me/changelog/september-2026",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The Business Terms and Conditions (updated 23 September 2026) name two contracting entities. Didit Identity Spain, S.L., CIF B22929327, Barcelona, contracts with clients in the EU, EEA, UK and Switzerland, and Didit Identity, Inc., Dover, Delaware, with clients elsewhere.",
          "The Business Terms are the self-serve contract and include the SLA as Annex 1 and the Data Processing Addendum as Annex 2. A separate Master Services Agreement covers enterprise order forms.",
          "The Privacy Policy was updated on 7 October 2026 and names the Spanish Data Protection Agency as lead supervisory authority. A Verification Privacy Notice supplements it for end users.",
          "didit.me/.well-known/security.txt and docs.didit.me/.well-known/security.txt return 404. The Information Security Policy sends reports to security@didit.me.",
          "The API answers at verification.didit.me, account routes at apx.didit.me and the MCP server at mcp.didit.me, all on the vendor's domain.",
          "The registration date of didit.me wasn't established. whois returned nothing and rdap.org has no RDAP service for .me."
        ],
        "score": 73
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/didit.json",
      "live": {
        "slug": "didit",
        "probe": {
          "target": "https://verification.didit.me",
          "method": "get",
          "lastAt": "2026-10-08T21:53:20.666500555Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 58,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 60,
          "p95ms24h": 89,
          "samples24h": 28,
          "samples30d": 28,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 28,
              "ok": 28
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.didit.me",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:57:50.337506825Z"
        },
        "updatedAt": "2026-10-08T21:57:50.337506825Z"
      }
    },
    "answer": "Didit scores 75 (BB) on agent readiness against Persona's 69.5 (B), and leads in 5 of 7 scored categories. Persona leads on agent ergonomics and transparency \u0026 trust.",
    "b": {
      "slug": "persona",
      "name": "Persona",
      "vendor": "Persona Identities, Inc.",
      "vendorUrl": "https://withpersona.com",
      "kind": "http-api",
      "category": "identity-verification",
      "summary": "Persona is an identity verification platform from Persona Identities, Inc. Its REST API and hosted MCP server create inquiries, run government ID, selfie, document and database verifications, screen people and businesses against watchlists, and manage review cases.",
      "url": "https://www.anchorterminal.com/tools/persona",
      "markdownUrl": "https://www.anchorterminal.com/tools/persona.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/persona.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/persona.json",
      "license": "Proprietary service under Persona's terms of service. The `persona` JavaScript client on npm is MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://mcp.withpersona.com",
      "packages": [
        {
          "registry": "npm",
          "name": "persona"
        }
      ],
      "auth": "api-key",
      "authNotes": "Self-serve API key, sent as `Authorization: Bearer \u003ckey\u003e` to https://api.withpersona.com/api/v1. A browser sign-up with a business email gives a sandbox key (`persona_sandbox_...`) at once. A production key (`persona_production_...`) needs a plan and Persona's approval of the organisation. Each key can be limited to about 50 read and write permissions per resource, given its own rate limit and an IP allowlist, and expired through the dashboard or the API. A new key has every standard permission until someone limits it. The MCP server at https://mcp.withpersona.com takes the same key. Its help article says OAuth is coming and isn't available yet (checked 2026-10-08).",
      "pricing": "paid",
      "pricingNotes": "The Essential plan starts at $250 a month on a 12-month contract with 500 verifications or reports a month included, then $1.50 for each further one, per the help centre. Growth and Enterprise are priced through sales. A 60-day trial with no card gives sandbox access and up to 50 services, so an agent can build and test without a contract, but the sandbox performs no real verifications. A Startup Programme gives eligible small companies 500 free verifications a month for a year. The pricing page itself refused our reader (checked 2026-10-08).",
      "priceSummary": "$250 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, the OpenAPI file, the MCP tool list or the help centre's plan articles (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 190,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 570188,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.withpersona.com/getting-started",
      "llmsTxt": "https://docs.withpersona.com/llms.txt",
      "openapi": "https://docs.withpersona.com/openapi/api-reference.json",
      "capabilities": [
        "kyc.identity",
        "kyc.business",
        "kyc.documents",
        "kyc.screening",
        "kyc.cases"
      ],
      "tags": [
        "hosted",
        "paid",
        "sandbox",
        "api-key",
        "mcp",
        "openapi",
        "llms-txt",
        "webhooks",
        "json-api",
        "status-page",
        "soc2",
        "iso27001"
      ],
      "lastRelease": "2026-09-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.5,
        "grade": "B",
        "agentReady": false,
        "rank": 157,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 2,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 75,
          "payments": 35,
          "reliability": 70,
          "schema": 85,
          "security": 73,
          "transparency": 68
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The REST API has a public OpenAPI 3.1 file, llms.txt, API keys with per-resource permissions, idempotency keys on every POST and a 60-day sandbox trial with no card. Production needs a business review and a 12-month plan from $250 a month. The status page lists 11 incidents since 10 July 2026, including 70 minutes of timeouts across all products.",
        "bestFor": "A company that already runs Persona and wants an agent to create inquiries from templates, read verification and report results, screen against watchlists and work review cases with a permission-limited key.",
        "strengths": [
          "Public OpenAPI 3.1 file with 231 operations and 141 webhook definitions, plus llms.txt and a Markdown copy of every docs page",
          "API keys take about 50 read and write permissions per resource, an IP allowlist, their own rate limit and an expiry endpoint",
          "`Idempotency-Key` on every POST, cursor pagination, and `fields` and `include` parameters that trim responses",
          "API logs kept for two weeks and user audit logs for six months, both readable through the API",
          "Dated API versions selected per key or per request with `Persona-Version`, and a changelog with an RSS feed"
        ],
        "weaknesses": [
          "Production access needs Persona's approval and a 12-month plan from $250 a month, and API-only integration is limited to Enterprise plans",
          "Eleven incidents on the status page since 10 July 2026, five marked partial outage, most on document and government ID verifications",
          "The MCP server lists all 190 tools whatever the key allows, with no annotations, toolsets or read-only subset, and OAuth isn't available yet",
          "No official server-side SDK was found. The npm, iOS, Android and React Native packages are clients for the end-user flow",
          "The marketing site, terms, privacy policy and pricing page answered our reader with a bot check, and no SLA was found in the docs or help centre"
        ],
        "agentNotes": [
          "Ask for a dedicated key limited to the permissions the task needs. A new key has every standard permission until it's limited",
          "Send `Persona-Version` on every call and an `Idempotency-Key` on every POST. A replayed key returns the first result, including a 500",
          "Treat redact calls as irreversible. They permanently delete personal data and cascade to downstream objects",
          "Stay under 300 requests a minute in production, read `RateLimit-Remaining` and `Quota-Remaining`, and back off on 429 because rejected requests still count",
          "Use `fields` and `include` to cut response size. Through MCP these parameters aren't exposed, and only 14 tools take `filter`"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 69.5
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 75,
          "payments": 35,
          "reliability": 70,
          "schema": 85,
          "security": 73,
          "transparency": 46
        },
        "provenanceScore": 90
      },
      "connect": {
        "http": "curl --request POST \\\n     --url https://api.withpersona.com/api/v1/inquiries \\\n     --header 'Persona-Version: 2023-01-05' \\\n     --header 'accept: application/json' \\\n     --header 'authorization: Bearer persona_sandbox_YOURAPIKEY' \\\n     --header 'content-type: application/json' \\\n     --data '{\"data\":{\"attributes\":{\"inquiry-template-id\":\"itmpl_YOURTEMPLATEID\",\"fields\":{\"name-first\":\"Jane\",\"name-last\":\"Doe\",\"birthdate\":\"1994-04-12\"}}}}'"
      },
      "letme": {
        "capability": "https://letme.dev/kyc.identity",
        "tool": "https://letme.dev/persona"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Essential plan",
          "unit": "month",
          "usd": 250,
          "note": "12-month contract, 500 verifications or reports a month included, unused ones don't roll over"
        },
        {
          "item": "Additional verification or report on the Essential plan",
          "unit": "tx",
          "usd": 1.5,
          "note": "Each service beyond the 500 included a month"
        }
      ],
      "provenance": {
        "legalEntity": "Persona Identities, Inc.",
        "domain": "withpersona.com",
        "domainRegistered": "2018-09-24",
        "endpointOnVendorDomain": true,
        "terms": "https://withpersona.com/legal/terms-of-service",
        "privacy": "https://withpersona.com/legal/privacy-policy",
        "statusPage": "https://status.withpersona.com",
        "changelog": "https://docs.withpersona.com/api-reference/versioning/changelog",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The help centre footer reads \"2026 Persona Identities, Inc.\", and the `persona` npm package names Persona Identities, Inc. as author.",
          "The API answers at api.withpersona.com and the MCP server at mcp.withpersona.com, both withpersona.com subdomains.",
          "withpersona.com/.well-known/security.txt gives security@withpersona.com, an expiry of 17 February 2027 and a note that disclosure runs through Bugcrowd.",
          "The terms and privacy URLs are the ones the status page links to. Both pages, and the rest of withpersona.com, answered our reader with a bot check (HTTP 403), so their text wasn't read.",
          "RDAP for withpersona.com gives a registration date of 2018-09-24 and MarkMonitor Inc. as registrar."
        ],
        "score": 90
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/persona.json",
      "live": {
        "slug": "persona",
        "probe": {
          "target": "https://mcp.withpersona.com",
          "method": "get",
          "lastAt": "2026-10-08T21:53:30.395062029Z",
          "lastOk": true,
          "lastStatus": 405,
          "lastMs": 141,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 148,
          "p95ms24h": 425,
          "samples24h": 71,
          "samples30d": 71,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 71,
              "ok": 71
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.withpersona.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T19:39:03.085783021Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "persona",
            "version": "5.9.0",
            "seenAt": "2026-10-08T16:25:07.765894859Z"
          }
        ],
        "npmWeekly": 570188,
        "securityTxt": {
          "url": "https://withpersona.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-02-17T08:00:00.000Z",
          "checkedAt": "2026-10-08T15:39:00.840131962Z"
        },
        "pages": [
          {
            "url": "https://docs.withpersona.com/api-reference/versioning/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:19:46.701685957Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "6f0e8de3c16e"
          },
          {
            "url": "https://withpersona.com/legal/privacy-policy",
            "kind": "privacy",
            "status": 403,
            "checkedAt": "2026-10-08T18:25:46.538922013Z",
            "changedAt": "0001-01-01T00:00:00Z"
          },
          {
            "url": "https://withpersona.com/legal/terms-of-service",
            "kind": "terms",
            "status": 403,
            "checkedAt": "2026-10-08T18:25:48.548892401Z",
            "changedAt": "0001-01-01T00:00:00Z"
          }
        ],
        "updatedAt": "2026-10-08T21:53:30.395062029Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Didit Identity Spain, S.L.",
        "b": "Persona Identities, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://verification.didit.me",
        "b": "https://mcp.withpersona.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP, stdio",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Didit's Business Terms and Conditions. The MCP server in didit-protocol/mcp is MIT",
        "b": "Proprietary service under Persona's terms of service. The `persona` JavaScript client on npm is MIT",
        "name": "Licence"
      },
      {
        "a": "156",
        "b": "190",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "me.didit/mcp",
        "b": "not listed",
        "name": "MCP registry"
      },
      {
        "a": "2026-10-08",
        "b": "2026-09-29",
        "name": "Last release"
      },
      {
        "a": "2026-09-23",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "2026-10-07",
        "b": "couldn't be read",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes, with an opt-out",
        "b": "couldn't be read",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "couldn't be read",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "0 stars, 27k npm/wk",
        "b": "570k npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Didit scores 75 (BB) on agent readiness against Persona's 69.5 (B), and leads in 5 of 7 scored categories. Persona leads on agent ergonomics and transparency \u0026 trust.",
        "question": "Which is better for AI agents, Didit or Persona?"
      },
      {
        "answer": "Didit takes an API key or an OAuth sign-in. Persona needs an API key.",
        "question": "Do Didit and Persona need an API key?"
      },
      {
        "answer": "Yes. Didit has a hosted endpoint at https://verification.didit.me and Persona at https://mcp.withpersona.com.",
        "question": "Can an agent call Didit and Persona without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 80 against 70",
          "Payments \u0026 pricing, 60 against 35",
          "Maintenance \u0026 community, 82 against 75"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "Runs on your own machine",
          "Free to start without a card"
        ],
        "goodFor": "A team that wants document, liveness, screening and business registry checks from one API with public prices and no sales step, and an agent that has to set itself up.",
        "slug": "didit",
        "watchFor": "Three incidents marked major on status.didit.me from 22 July to 4 September 2026, each a partial outage of the core APIs traced to the primary database"
      },
      {
        "aheadOn": [
          "Agent ergonomics, 74 against 69",
          "Transparency \u0026 trust, 68 against 63"
        ],
        "also": null,
        "goodFor": "A company that already runs Persona and wants an agent to create inquiries from templates, read verification and report results, screen against watchlists and work review cases with a permission-limited key.",
        "slug": "persona",
        "watchFor": "Production access needs Persona's approval and a 12-month plan from $250 a month, and API-only integration is limited to Enterprise plans"
      }
    ],
    "job": {
      "capability": "kyc.identity",
      "name": "Kyc identity"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-didit.json",
        "title": "ComplyCube vs Didit",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-didit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complycube-vs-persona.json",
        "title": "ComplyCube vs Persona",
        "url": "https://www.anchorterminal.com/compare/complycube-vs-persona"
      },
      {
        "json": "https://www.anchorterminal.com/compare/didit-vs-jumio.json",
        "title": "Didit vs Jumio",
        "url": "https://www.anchorterminal.com/compare/didit-vs-jumio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/didit-vs-middesk.json",
        "title": "Didit vs Middesk",
        "url": "https://www.anchorterminal.com/compare/didit-vs-middesk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/didit-vs-sumsub.json",
        "title": "Didit vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/didit-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/didit-vs-trulioo.json",
        "title": "Didit vs Trulioo",
        "url": "https://www.anchorterminal.com/compare/didit-vs-trulioo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/didit-vs-veriff.json",
        "title": "Didit vs Veriff",
        "url": "https://www.anchorterminal.com/compare/didit-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jumio-vs-persona.json",
        "title": "Jumio vs Persona",
        "url": "https://www.anchorterminal.com/compare/jumio-vs-persona"
      },
      {
        "json": "https://www.anchorterminal.com/compare/persona-vs-sumsub.json",
        "title": "Persona vs Sumsub",
        "url": "https://www.anchorterminal.com/compare/persona-vs-sumsub"
      },
      {
        "json": "https://www.anchorterminal.com/compare/persona-vs-trulioo.json",
        "title": "Persona vs Trulioo",
        "url": "https://www.anchorterminal.com/compare/persona-vs-trulioo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/persona-vs-veriff.json",
        "title": "Persona vs Veriff",
        "url": "https://www.anchorterminal.com/compare/persona-vs-veriff"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complyadvantage-vs-didit.json",
        "title": "ComplyAdvantage vs Didit",
        "url": "https://www.anchorterminal.com/compare/complyadvantage-vs-didit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/complyadvantage-vs-persona.json",
        "title": "ComplyAdvantage vs Persona",
        "url": "https://www.anchorterminal.com/compare/complyadvantage-vs-persona"
      },
      {
        "json": "https://www.anchorterminal.com/compare/middesk-vs-persona.json",
        "title": "Middesk vs Persona",
        "url": "https://www.anchorterminal.com/compare/middesk-vs-persona"
      }
    ],
    "scores": [
      {
        "by": 10,
        "didit": 80,
        "edge": "didit",
        "key": "reliability",
        "name": "Reliability",
        "persona": 70,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 3,
        "didit": 88,
        "edge": "didit",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "persona": 85,
        "weight": 13
      },
      {
        "by": 5,
        "didit": 69,
        "edge": "persona",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "persona": 74,
        "weight": 13
      },
      {
        "by": 3,
        "didit": 76,
        "edge": "didit",
        "key": "security",
        "name": "Security \u0026 auth",
        "persona": 73,
        "weight": 14
      },
      {
        "by": 25,
        "didit": 60,
        "edge": "didit",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "persona": 35,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 7,
        "didit": 82,
        "edge": "didit",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "persona": 75,
        "weight": 7
      },
      {
        "by": 5,
        "didit": 63,
        "edge": "persona",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "persona": 68,
        "weight": 7
      }
    ],
    "summary": "Didit scores 75 (BB) on agent readiness against Persona's 69.5 (B), and leads in 5 of 7 scored categories. Persona leads on agent ergonomics and transparency \u0026 trust. Both do kyc identity.",
    "verdicts": {
      "didit": "A self-serve verification API with public per-check prices, key registration by API, scoped keys and a 365-day audit log. The status page shows three incidents marked major between 22 July and 4 September 2026, each a partial outage of the core APIs, and the sub-processor list isn't public.",
      "persona": "The REST API has a public OpenAPI 3.1 file, llms.txt, API keys with per-resource permissions, idempotency keys on every POST and a 60-day sandbox trial with no card. Production needs a business review and a 12-month plan from $250 a month. The status page lists 11 incidents since 10 July 2026, including 70 minutes of timeouts across all products."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/didit-vs-persona",
    "json": "https://www.anchorterminal.com/compare/didit-vs-persona.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/didit-vs-persona.md",
    "slim": "https://www.anchorterminal.com/compare/didit-vs-persona.min.md"
  },
  "markdown": "Didit scores 75 (BB) on agent readiness against Persona's 69.5 (B), and leads in 5 of 7 scored categories. Persona leads on agent ergonomics and transparency \u0026 trust. Both do kyc identity.\n\n- Didit: grade BB, 75/100, rank #54 of 722. Markdown https://www.anchorterminal.com/tools/didit.md · JSON https://www.anchorterminal.com/api/v1/tools/didit.json\n- Persona: grade B, 69.5/100, rank #157 of 722. Markdown https://www.anchorterminal.com/tools/persona.md · JSON https://www.anchorterminal.com/api/v1/tools/persona.json\n\n## Which one, for what\n\n### Didit (BB)\n\nGood for: A team that wants document, liveness, screening and business registry checks from one API with public prices and no sales step, and an agent that has to set itself up.\n\nAhead on:\n- Reliability, 80 against 70\n- Payments \u0026 pricing, 60 against 35\n- Maintenance \u0026 community, 82 against 75\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- Runs on your own machine\n- Free to start without a card\n\nWatch for: Three incidents marked major on status.didit.me from 22 July to 4 September 2026, each a partial outage of the core APIs traced to the primary database\n\n### Persona (B)\n\nGood for: A company that already runs Persona and wants an agent to create inquiries from templates, read verification and report results, screen against watchlists and work review cases with a permission-limited key.\n\nAhead on:\n- Agent ergonomics, 74 against 69\n- Transparency \u0026 trust, 68 against 63\n\nWatch for: Production access needs Persona's approval and a 12-month plan from $250 a month, and API-only integration is limited to Enterprise plans\n\n\n## Score by category\n\n| Category | Weight | Didit | Persona | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 80 | 70 | Didit +10 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 88 | 85 | Didit +3 |\n| Agent ergonomics | 13% (16.2 this run) | 69 | 74 | Persona +5 |\n| Security \u0026 auth | 14% (17.5 this run) | 76 | 73 | Didit +3 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 35 | Didit +25 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 82 | 75 | Didit +7 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 63 | 68 | Persona +5 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **75 · BB** | **69.5 · B** | |\n\n## Facts side by side\n\n| Fact | Didit | Persona |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Didit Identity Spain, S.L. | Persona Identities, Inc. |\n| Hosted endpoint | `https://verification.didit.me` | `https://mcp.withpersona.com` |\n| Transports | HTTP, Streamable HTTP, stdio | HTTP |\n| Auth | OAuth or key | API key |\n| Pricing | Pay per use | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under Didit's Business Terms and Conditions. The MCP server in didit-protocol/mcp is MIT | Proprietary service under Persona's terms of service. The `persona` JavaScript client on npm is MIT |\n| Tools exposed | 156 | 190 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| MCP registry | `me.didit/mcp` | not listed |\n| Last release | 2026-10-08 | 2026-09-29 |\n| Terms last updated | 2026-09-23 | couldn't be read |\n| Privacy policy last updated | 2026-10-07 | couldn't be read |\n| Customer content may train models | yes, with an opt-out | couldn't be read |\n| Terms restrict automated access | not found in the text | couldn't be read |\n| Terms restrict benchmarking | yes | couldn't be read |\n| Terms or service can change without notice | not found in the text | couldn't be read |\n| Arbitration or class-action waiver | not found in the text | couldn't be read |\n| Popularity | 0 stars, 27k npm/wk | 570k npm/wk |\n\n## Verdicts\n\n**Didit.** A self-serve verification API with public per-check prices, key registration by API, scoped keys and a 365-day audit log. The status page shows three incidents marked major between 22 July and 4 September 2026, each a partial outage of the core APIs, and the sub-processor list isn't public.\n\n**Persona.** The REST API has a public OpenAPI 3.1 file, llms.txt, API keys with per-resource permissions, idempotency keys on every POST and a 60-day sandbox trial with no card. Production needs a business review and a 12-month plan from $250 a month. The status page lists 11 incidents since 10 July 2026, including 70 minutes of timeouts across all products.\n\n## Before you call either\n\n### Didit\n\n1. Register with `POST https://apx.didit.me/auth/v2/programmatic/register/`, then `verify-email` with the emailed 6-character code. Use a real inbox, because reserved test domains return 500.\n2. Send the key as `x-api-key` to `https://verification.didit.me/v3/`. The JWT from registration works only on `apx.didit.me`.\n3. Create a workflow before `POST /v3/session/`. `workflow_id` is the only required field, and an unfinished session with the same `vendor_data` is returned again.\n4. Read results from webhooks and use `GET /v3/session/{sessionId}/decision/` for back-fill. Every per-feature result is a plural array.\n5. The MCP server at `https://mcp.didit.me/mcp` takes OAuth sign-in only, never an API key. Approve `didit:verification` alone when the task doesn't change workflows or keys.\n\n### Persona\n\n1. Ask for a dedicated key limited to the permissions the task needs. A new key has every standard permission until it's limited\n2. Send `Persona-Version` on every call and an `Idempotency-Key` on every POST. A replayed key returns the first result, including a 500\n3. Treat redact calls as irreversible. They permanently delete personal data and cascade to downstream objects\n4. Stay under 300 requests a minute in production, read `RateLimit-Remaining` and `Quota-Remaining`, and back off on 429 because rejected requests still count\n5. Use `fields` and `include` to cut response size. Through MCP these parameters aren't exposed, and only 14 tools take `filter`\n\n## Questions\n\n### Which is better for AI agents, Didit or Persona?\n\nDidit scores 75 (BB) on agent readiness against Persona's 69.5 (B), and leads in 5 of 7 scored categories. Persona leads on agent ergonomics and transparency \u0026 trust.\n\n### Do Didit and Persona need an API key?\n\nDidit takes an API key or an OAuth sign-in. Persona needs an API key.\n\n### Can an agent call Didit and Persona without installing anything?\n\nYes. Didit has a hosted endpoint at https://verification.didit.me and Persona at https://mcp.withpersona.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/didit-vs-persona.json, and with the fewest tokens: https://www.anchorterminal.com/compare/didit-vs-persona.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"didit\", \"b\": \"persona\"}`. From a terminal: `anchor compare didit persona`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/didit.json and https://www.anchorterminal.com/api/v1/tools/persona.json\n\n## Other comparisons with Didit or Persona\n\n- [ComplyCube vs Didit](https://www.anchorterminal.com/compare/complycube-vs-didit.md)\n- [ComplyCube vs Persona](https://www.anchorterminal.com/compare/complycube-vs-persona.md)\n- [Didit vs Jumio](https://www.anchorterminal.com/compare/didit-vs-jumio.md)\n- [Didit vs Middesk](https://www.anchorterminal.com/compare/didit-vs-middesk.md)\n- [Didit vs Sumsub](https://www.anchorterminal.com/compare/didit-vs-sumsub.md)\n- [Didit vs Trulioo](https://www.anchorterminal.com/compare/didit-vs-trulioo.md)\n- [Didit vs Veriff](https://www.anchorterminal.com/compare/didit-vs-veriff.md)\n- [Jumio vs Persona](https://www.anchorterminal.com/compare/jumio-vs-persona.md)\n- [Persona vs Sumsub](https://www.anchorterminal.com/compare/persona-vs-sumsub.md)\n- [Persona vs Trulioo](https://www.anchorterminal.com/compare/persona-vs-trulioo.md)\n- [Persona vs Veriff](https://www.anchorterminal.com/compare/persona-vs-veriff.md)\n- [ComplyAdvantage vs Didit](https://www.anchorterminal.com/compare/complyadvantage-vs-didit.md)\n- [ComplyAdvantage vs Persona](https://www.anchorterminal.com/compare/complyadvantage-vs-persona.md)\n- [Middesk vs Persona](https://www.anchorterminal.com/compare/middesk-vs-persona.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "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": "Didit vs Persona",
        "url": ""
      }
    ],
    "description": "Didit scores 75 (BB) on agent readiness against Persona's 69.5 (B), and leads in 5 of 7 scored categories. Persona leads on agent ergonomics and transparency \u0026 trust. Both do kyc identity. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Didit BB 75",
      "Persona B 69.5",
      "scores"
    ],
    "h1": "Didit vs Persona",
    "image": "https://www.anchorterminal.com/assets/og/compare-didit-vs-persona.png",
    "path": "/compare/didit-vs-persona",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Didit vs Persona for AI agents, BB 75 vs B 69.5 | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/didit-vs-persona"
  },
  "tokens": {
    "markdown": 2250,
    "slim": 780
  },
  "version": 1
}
